知识大全 单点登录在ASP.NET上的简单实现[3]

Posted

篇首语:忘掉失败,不过要牢记失败中的教训。。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 单点登录在ASP.NET上的简单实现[3]相关的知识,希望对你有一定的参考价值。

单点登录在ASP.NET上的简单实现[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

    在代码中 Security是通过Hash一个随机产生的数字生成的 具有不确定性 和保密性 我们可以看到 Security同时保存在Session中和发送给Service 我们把这个Security当作明文 在后面我们可以看到 Security在Service经过再一次Hash后作为密文发送回Shop 如果我们将Session保存的Security经过同样的Hash方法处理后等到的字符串如果和Service返回的密文相同 我们就能够在一定程度上保证Service应答的数据是没有经过修改的 using System;using System Web;using System Security Cryptography;using System Text;namespace Amethysture SSO Shop public class Page : System Web UI Page   private void CustomerValidate()     bool Pass = (bool) this Session[ Pass ];   if (!Pass)       string Security = ;    Random Seed = new Random();    Security = Seed Next( int MaxValue) ToString();    byte[] Value;    UnicodeEncoding Code = new UnicodeEncoding();    byte[] Message = Code GetBytes(Security);    SHA Managed Arithmetic = new SHA Managed();    Value = Arithmetic ComputeHash(Message);    Security = ;    foreach(byte o in Value)         Security += (int) o + O ;        this Session[ Security ] = Security;    this Session[ Url ] = this Request RawUrl;    this Response Redirect(Project Service + /Validate aspx?WebSite= + Project WebSite + &Security= + Security);       protected virtual void Initialize()     this Response Write( <> );   this Response Write( <head> );    this Response Write( <title>Amethysture SSO Project</title> );   this Response Write( <link rel=stylesheet type=\\ text/css\\ href=\\ + project website + /Default css\\ > );   this Response Write( </head> );   this Response Write( <body> );   this Response Write( <iframe width=\\ \\ height=\\ \\ src=\\ + project service + /Customer aspx\\ ></iframe> );   this Response Write( <div align=\\ center\\ > );   this Response Write( Amethysture SSO Shop Any Page );   this Response Write( </div> );   this Response Write( </body> );   this Response Write( </> );    protected override void OnInit(EventArgs e)     base OnInit(e);   this CustomerValidate();   this Initialize();   this Response End();   

   Service的Global cs   现在我们页面转到了Service的Validate页面 我们转过来看Service的代码 在Global中我们同样定义了四个Session变量 都和Shop的Session用处类似 WebSite是保存请求用户即时状态的站点信息 以便能在登录后返回正确的请求站点

protected void Session_Start(Object sender EventArgs e) this Session Add( UserID ); this Session Add( Pass false); this Session Add( WebSite ); this Session Add( Security );

cha138/Article/program/net/201311/14963

相关参考

知识大全 单点登录在ASP.NET上的简单实现[5]

单点登录在ASP.NET上的简单实现[5]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 单点登录在ASP.NET上的简单实现[2]

单点登录在ASP.NET上的简单实现[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 单点登录在ASP.NET上的简单实现[1]

单点登录在ASP.NET上的简单实现[1]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!系统的基本

知识大全 小技巧:在ASP.NET 中实现单点登录

小技巧:在ASP.NET中实现单点登录  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  由于某些原

知识大全 理解ASP.NET 2.0中的单点登录

理解ASP.NET2.0中的单点登录  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!摘要 

知识大全 ASP.NET防止用户多次登录的最简单的方法

ASP.NET防止用户多次登录的最简单的方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  由于

知识大全 如何在不同.net版本实现单点登录

经过研究重写实现了一个可以在不同net版本中实现单点登录的简单方法现在和大家分享一下不足之处还望见谅   所谓单点登录(SingleSignOn就是在多个应用系统中用户只需要登录一次就可以访

知识大全 在ASP.NET中使用Windows登录[3]

在ASP.NET中使用Windows登录[3]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb

知识大全 在ASP.NET中使用Windows登录[4]

在ASP.NET中使用Windows登录[4]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb

知识大全 在ASP.NET中使用Windows登录[2]

在ASP.NET中使用Windows登录[2]  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!&nb