我有三个应用程序,“登录应用程序”,“应用程序A”和“应用程序B”。我使用Asp.Net Identity进行身份验证和授权。我需要实现单点登录机制,但互联网上的大多数示例都使用表单身份验证。我已在所有应用程序中添加了一个机器密钥,我尝试添加以下代码,
<authentication mode="Forms">
<forms name="singlesignoncookie" loginUrl="https://sample.com/Account/Login" timeout="12000"/>
</authentication>
这成功地将任何未经授权的请求重定向到我的“登录应用程序”中的登录页面,但是看起来认证cookie不起作用,因为即使用户凭据都是正确的,它也会卡在登录页面中。我也尝试添加Cookie Domain属性,但仍然没有运气。
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
ExpireTimeSpan = TimeSpan.FromMinutes(60),
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
LoginPath = new PathString("/Account/Login"),
CookieDomain = ".sample.com",
CookieName = "singlesignoncookie"
});
任何想法都会受到高度赞赏。谢谢。