身份验证不粘在我的自定义安全令牌服务上

本文关键字:安全 令牌 服务 自定义 我的 身份验证 | 更新日期: 2023-09-27 18:18:38

我使用asp.net 4.5创建了一个自定义STS。它可以工作,我可以验证并接收索赔。但是,如果我在身份验证后刷新页面或导航到不同的页面,我的"受众"站点会为每个请求返回到我的发行者站点。

在我通过身份验证后,即使它返回到发行者,它也会将我带回到我的"受众"站点,以确认我已经过身份验证。然而,索赔不再被传递。

是否有一个设置,我错过了它允许观众网站保存身份验证cookie和声明?

我的受众网站是一个MVC网站。

只是我注意到的一个观察:当我在本地IIS上运行观众网站时,我没有这个问题。它工作得很好。只有当我将其部署到Azure网站时才会出现此问题。

服务设置:

<federationConfiguration>
  <cookieHandler requireSsl="true" />
  <wsFederation passiveRedirectEnabled="true" issuer="https://auth.mydomain.com/" realm="https://apps.mydomain.com/" requireHttps="true" persistentCookiesOnPassiveRedirects="true" />
</federationConfiguration>

身份验证不粘在我的自定义安全令牌服务上

我能够通过重新运行身份和访问工具来解决这个问题。http://visualstudiogallery.msdn.microsoft.com/e21bf653 dfe1 - 4 - d81 b3d3 - 795 cb104066e

他们添加了以下值使其工作。这些值被添加到system下的securityTokenHandlers部分。identityModel> identityConfiguration。如果有人有同样的问题。

<add type="System.IdentityModel.Services.Tokens.MachineKeySessionSecurityTokenHandler, System.IdentityModel.Services, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<remove type="System.IdentityModel.Tokens.SessionSecurityTokenHandler, System.IdentityModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />