开发一般的.netWEB应用程序,基本上都是采用Form验证。ASP.NET 支持在分布式环境中(跨单个服务器上的多个应用程序或在网络场中)进行 Forms 身份验证。
        Form验证的过程如下:
.net跨应用程序域进行单点登陆
其代码大致如下:
.net跨应用程序域进行单点登陆FormsAuthenticationTicket Tickect=new FormsAuthenticationTicket(1,UserId,DateTime.Now,DateTime.Now.AddMinutes(60),false,EncryptedPassWord);
.net跨应用程序域进行单点登陆            
string encryptedTickectStr=FormsAuthentication.Encrypt(Tickect);
.net跨应用程序域进行单点登陆            HttpCookie authcookie
=new HttpCookie(FormsAuthentication.FormsCookieName,encryptedTickectStr);
.net跨应用程序域进行单点登陆            Response.Cookies.Add(authcookie);
如果凭据通过身份验证,则应用程序代码会附加包含用户名但不包含密码的票(作为 Cookie),并将COOKIE返回。当客户端发出请求时,则asp.net会验证请求有没有附加Cookie。如果没有,则将请求重定向到登陆页。而COOKIE在一个域内是可以共享的。因此,只需要在多个应用程序的WEBCONFIG中设置相同的
.net跨应用程序域进行单点登陆<configuration>
.net跨应用程序域进行单点登陆    
<system.web>
.net跨应用程序域进行单点登陆        
<authentication>
.net跨应用程序域进行单点登陆            
<forms name=".ASPXAUTH" 
.net跨应用程序域进行单点登陆                   loginUrl
="logon.aspx"     
.net跨应用程序域进行单点登陆                   protection
="all"  <!-- Protection must be identical.-->
.net跨应用程序域进行单点登陆                   timeout
="30" 
.net跨应用程序域进行单点登陆                   path
="/" >   <!-- Path must have a compatible scope.-->
.net跨应用程序域进行单点登陆        
</authentication>
.net跨应用程序域进行单点登陆
.net跨应用程序域进行单点登陆        
<!-- Validation and decryption keys must exactly match and cannot
.net跨应用程序域进行单点登陆             be 
set to "AutoGenerate". The validation algorithm must also 
.net跨应用程序域进行单点登陆             be the same. 
-->
.net跨应用程序域进行单点登陆        
<machineKey>
.net跨应用程序域进行单点登陆            validationKey
= "C50B3C89CB21F4F1422FF158A5B42D0E8DB8CB5CDA1742572A487D9401E3400267682B202B746511891C1BAF47F8D25C07F6C39A104696DB51F17C529AD3CABE" 
.net跨应用程序域进行单点登陆            decryptionKey
= "8A9BE8FD67AF6979E7D20198CFEA50DD3D3799C77AF2B72F" 
.net跨应用程序域进行单点登陆            validation
="SHA1"
.net跨应用程序域进行单点登陆            isolateApplications
="false"
.net跨应用程序域进行单点登陆        
</machineKey>
.net跨应用程序域进行单点登陆    
</system.web>
.net跨应用程序域进行单点登陆
</configuration>
.net跨应用程序域进行单点登陆

相关文章:

  • 2022-01-28
  • 2021-06-16
  • 2021-06-10
  • 2021-10-02
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-01
  • 2021-08-12
  • 2022-12-23
  • 2021-09-01
相关资源
相似解决方案