2017-10-05 77 views
-1

我們在Java/JSP和Azure中實現了一個Web應用程序AD使用OpenID連接協議實現了AD單一登錄身份驗證。登錄方式按預期工作,但主要問題在於單挑。在註銷用戶時,我們遵循以下方法。OpenID在Azure AD中登錄請求

1)用戶點擊註銷按鈕。 2)他將被重定向到應用程序註銷頁面。 3)清除簽出頁面中的應用程序會話。 4)然後將用戶重定向到Azure的AD註銷頁面,請參閱下面的網址...

https://login.microsoftonline.com/common/oauth2/v2.0/logout? post_logout_redirect_uri = our_application_sign_out_success_page

上述方法工作正常,但問題是,如果用戶複製並粘貼在上面的瀏覽器選項卡中的網址,當用戶在其他瀏覽器選項卡中有效的會話,他的廣告會話是否清零。

但是預期的行爲是,只有當用戶單擊sign_out按鈕時,註銷纔會發生。

回答

1

這是預期的行爲,服務器無法檢測到請求是通過單擊還是粘貼到地址欄中發送的,並且是手動導航。而服務器應該不關心請求來自哪裏,它只做你告訴它的工作。

如果您還有其他應用程序也使用Azure AD作爲身份數據提供程序,那麼當您從Web應用程序註銷時,註銷請求不會影響其他應用程序。此外,如果您想要實施單點登錄,則必須在網絡應用程序中實施LogoutUrl並將其註冊到Azure門戶網站(請參閱here