我正在使用STS來控制SSO。我有一個STS站點和兩個客戶站點應用程序(站點a,站點b)。Single SignOut問題,它不能在多個站點執行
站點a和站點b都將STS站點添加爲STS參考。單點登錄工作正常,我只能登錄一次,但單點登錄無效。
在網站a和網站b中,我已在下面實施了FederatedPassiveSignInStatus控件。
<wif:FederatedPassiveSignInStatus ID="FederatedPassiveSignInStatus1" runat="server"
SignOutAction="FederatedPassiveSignOut" OnSignedOut="OnSigOut_click" />
OnSigOut_click:
public void OnSigOut_click(object sender, EventArgs e)
{
FederatedAuthentication.SessionAuthenticationModule.CookieHandler.Delete();
FederatedAuthentication.SessionAuthenticationModule.DeleteSessionTokenCookie();
FederatedAuthentication.SessionAuthenticationModule.SignOut();
FederatedAuthentication.WSFederationAuthenticationModule.SignOut(false);
FormsAuthentication.SignOut();
Session.Abandon();
}
如果我從網站signout A,然後再刷新站點B,站點A將重定向到STS登錄登錄頁面,站點B仍然在使用相同的同一頁面登錄信息。
任何人都可以知道如何做單一簽出/關?
var fam = FederatedAuthentication.SessionAuthenticationModule; var signOutRequestMessage = new SignOutRequestMessage(new Uri(fam.Issuer),fam.Realm); var signOutURI = signOutRequestMessage.WriteQueryString(); fam.SignOut(); Response.Redirect(signOutURI,false); – user2376512