加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net – 表单身份验证是否与Web负载平衡器一起使用?

发布时间:2020-12-15 23:38:38 所属栏目:asp.Net 来源:网络整理
导读:我正在使用正在使用Forms身份验证的Web应用程序. authentication mode="Forms" forms slidingExpiration="true" loginUrl="~/User.aspx/LogOn" timeout="15" name="authToken" / /authentication 当我登录时,我在浏览器中看到这个cookie: 问题是当我把这个
我正在使用正在使用Forms身份验证的Web应用程序.
<authentication mode="Forms">
        <forms slidingExpiration="true"
         loginUrl="~/User.aspx/LogOn"
         timeout="15"
         name="authToken"  />
    </authentication>

当我登录时,我在浏览器中看到这个cookie:

问题是当我把这个网站放在一个负载平衡的模型中会发生什么?设置ASP.net会话cookie在哪里?我没有在代码中明确地做到这一点,所以我认为它是在ASP.Net的某个地方发生的.

另外,如果会话cookie由Web服务器A设置,我认为Web服务器B将不会识别会话cookie并将其视为无效会话.如果是这种情况,我可能不想使用它,对吧?

解决方法

您必须将机器密钥设置为相同,名称在两台机器上相同.如果这样做,您应该没有问题与表单认证负载平衡.
<authentication mode="Forms">
        <forms loginUrl="~/Login/Index" defaultUrl="~/"
                     name=".myportal"
                     protection="All" slidingExpiration="true" timeout="20" path="/"
                     requireSSL="false"></forms>
    </authentication>

    <machineKey validationKey="534766AC57A2A2F6A71E6F0757A6DFF55526F7D30A467A5CDE102D0B50E0B58D613C12E27E7E778D137058E" decryptionKey="7059303602C4B0B3459A20F9CB631" decryption="Auto" validation="SHA1"/>

会话可以稍微复杂一点.您可以将ASP.Net会话状态存储在数据库中,也可以使用共享会话提供程序使其可用于负载平衡.

这是一个关于在DB:http://idunno.org/articles/277.aspx中存储会话状态的好文章

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读