在ASP.NET中单点登录 - cookie名称,machineKey还有什么?

agn*_*zka 6 asp.net single-sign-on

我在一台服务器上托管了两个ASP.NET应用程序.他们的配置具有相同的machineKey值,身份验证部分如下所示:

<authentication mode="Forms">
      <forms loginUrl="/_login/default.aspx" name=".MySingleAuth" />
    </authentication>

<authentication mode="Forms">
      <forms loginUrl="~/MySingle/LogOn/0" timeout="2880" name=".MySingleAuth"/>
    </authentication>
Run Code Online (Sandbox Code Playgroud)

单点登录(使用一个cookie的两个应用程序中的身份验证)仍然不起作用.我错过了什么?

编辑:这两个应用程序在我们的Intranet上,一个在https:// ip:84下,另一个在https:// ip:86下(其中ip是IP).

Evi*_*lMM 9

对我来说,SingleSignOn的以下配置有效:

<machineKey
  validationKey="818B77A6AFBF5E0B82B7FBE6F992E1733986DAEF81D1EB107B55D6F68EB6FEC6097349A9E37A407A6B5CF2FA1AB9327CA182A2C999A768C14B146036420203F9"
  decryptionKey="45798D54477D1D11BFC16733786AABB50E7FD5DDB3F8F46A"
  validation="SHA1"
/>

<authentication mode="Forms">
  <forms name=".ASPXAUTH" loginUrl="~/Login.aspx" protection="All" cookieless="UseCookies" enableCrossAppRedirects="true"/>
</authentication>
Run Code Online (Sandbox Code Playgroud)
  1. 确保两个应用程序上的密钥完全相同(验证和解密)
  2. cookie名称必须相同
  3. SingleSignOn仅在您位于同一域(cookie)时才起作用.

阅读本页,它帮助了我:http://www.codeproject.com/KB/aspnet/SingleSignon.aspx