2014-10-16 69 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