2014-10-16 141 views
0

我使用身份服务器v3创建了一个OpenId Connect主机,由ASP.NET身份支持。使用ASP.NET身份认证身份服务器 - 已通过身份验证的用户

如果用户已经使用ASP.NET身份登录到主机应用程序,我该如何使用现有会话,而不是提示用户再次登录?

一个例子是,如果您已经登录到您的Google帐户,并且您导航到https://jabbr.net/,您会发现Google不会提示您输入用户名和密码,以便通过Google进行身份验证。

回答

0

当存在现有身份验证会话时,IdentityServer不会提示您输入凭据 - IOW cookie。检查这个cookie是否存在或可能以某种方式丢失。默认情况下,只要浏览器窗口未关闭,cookie就是有效的。

IdSrv3 Beta 2中也有一个永久性的Cookie功能现在 -

https://identityserver.github.io/Documentation/docs/configuration/authenticationOptions.html

+0

感谢回答,大教堂。目前有一个cookie,名为“.AspNet.ApplicationCookie”。由于某种原因,IdentityServer未在此会话中选择,并创建它自己的名为“.Aspnet.Cookies”的Cookie。有任何想法吗?这是一个长镜头,但我尝试将ASP.NET身份识别码中的cookie名称更改为“.AspNet.Cookies”,但这并没有任何帮助,新的cookie使身份帐户无效。 – 2014-10-17 14:06:03

+0

当然,cookie必须由IdentityServer发布。 – leastprivilege 2014-10-19 10:18:31

+0

我的网站使用ASP.NET身份验证,当用户登录时它会发布cookie。我希望将OpenID Connect主机功能添加到此网站,从而允许其他网站确定当前用户及其声明。 是否有可能以这样的方式执行此操作,以使拥有活动会话cookie(来自ASP.NET身份标识)的用户可以请求IdentityServer而不会被要求再次输入其登录凭证? – 2014-10-19 15:54:00