怎样跨 ASP.NET V1.1 与 ASP.NET V2.0 应用程序共享验证 Cookies

原文地址: http://weblogs.asp.net/scottgu/archive/2005/12/10/432851.aspx

原文讲的不是很清楚, 文章下面一位 Sam Stange 网友的回复有很大提示作用. 不过这位网友的回复好像有错误, 因为ASP.NET V1.1 配置文件<machineKey />节点中根本没有decryption属性. 不过这个网友提供了一个生成machineKey的地方: http://aspnetresources.com/tools/keycreator.aspx, 选择 3DES 方式.

自己测试的结果为, ASP.NET 2.0 程序提供一个登录口, 1.1程序由这个登录口登录, 具体配置代码如下.

V2.0 Web.Config:

    <authentication mode="Forms">
      <forms name=".ASPNETAUTH" loginUrl="UserLogin.aspx" timeout="20160"/>
    </authentication>
    <!--ASP.NET 1.1 & 2.0 共享登录使用-->
    <machineKey validationKey="579FBC553DA6A4ED5752F39EC612BCCFC91F62513D37C7D460D4D883AC6A396FC3C5D0B7E589F22AAD5F79458793BDF74544C7FC34AD65A468108511C7BBB2BA"
    decryptionKey="9143F872799C1EACA5EC634D31495C015AAC830D3951702D"
                validation="SHA1"  decryption="3DES" />

V1.1 Web.Config:

    <authentication mode="Forms">
      <!--../ASP20/UserLogin.aspx 登录地址需要重新配置-->
      <forms name=".ASPNETAUTH"  loginUrl="../ASP20/UserLogin.aspx" timeout="20160"/>
    </authentication>
    <!--限制登录才能使用-->
    <authorization>
      <deny users="?"/>
    </authorization>
    <!--ASP.NET 1.1 & 2.0 共享登录使用-->
    <machineKey validationKey="579FBC553DA6A4ED5752F39EC612BCCFC91F62513D37C7D460D4D883AC6A396FC3C5D0B7E589F22AAD5F79458793BDF74544C7FC34AD65A468108511C7BBB2BA"
     decryptionKey="9143F872799C1EACA5EC634D31495C015AAC830D3951702D"
                 validation="3DES"/>

注意其中的 validation="SHA1" decryption="3DES" 部分.




[本日志由 tupunco 于 2008-09-10 12:33 AM 编辑]
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: asp.net Cookies machineKey
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.