2016-07-22 95 views
1

的我們已經使用IdentityServer4登錄用戶從多個IdentityServer客戶

https://github.com/IdentityServer/IdentityServer4

一個項目,我們有3個領域:authadminwww

IdentityServer運行在auth,其他兩個都是'客戶的。

  • www使用混合流量(餅乾)
  • admin採用了隱式流量(這是一個SPA,使用OIDC客戶端)

我們必須託管在auth一個登錄頁面。當用戶登錄時,他們被帶到www。某些用戶可以訪問admin,他們將在導航中看到鏈接。

當您登錄後,當您訪問管理員時,您可以看到自動發生身份驗證並返回到回調URL。這一切工作正常。

但是,如果我從admin註銷,我仍然可以訪問www,反之亦然。理想情況下,我們希望註銷可以一次將用戶從兩個客戶端中註銷。

這可能嗎?


注:我對這個項目的前端開發人員,所以究竟是誰實現了它可以提供在下面的評論的其他詳細信息的人。

回答

1

是的,這是可能的。

爲idsrv4該文檔還沒有完成 - 但它的工作原理非常類似這樣的

https://identityserver.github.io/Documentation/docsv2/advanced/signout.html

這是JS https://openid.net/specs/openid-connect-session-1_0.html

..和對網絡的signout規範的實現應用程序 https://openid.net/specs/openid-connect-frontchannel-1_0.html

您需要閱讀這些文件以瞭解機制

+0

謝謝多米尼克。你知道iframe check_session_iframe postMessage方法是否支持oidc-client-js? –

+0

我在這裏添加了一個問題:https://github.com/IdentityModel/oidc-client-js/issues/67 –

+0

即使我正在檢查其他客戶端會話的狀態,這個工作是否應該正常工作? –