0
我使單點登錄,但它有錯誤,我知道所有web配置中的機器密鑰是相同的,身份驗證也是一樣的。但它只適用於不在主域中的子域。在global.ascx我的網站無法解密cookie並且無法驗證用戶並顯示此錯誤:無法驗證數據。
這是我的計算機密鑰:ASP身份驗證:無法驗證數據讀取錯誤和解密來自cookies的數據錯誤
<machineKey alidationKey="C50B3C8..96DB51F17C529AD3CABE" decryptionKey="8A9BE8FD67A...F2B72F" validation="SHA1"/>
注: accounts.domain.com和eticket.domain.com正在工作,但domain.com沒有作用,並顯示此錯誤。
這些都是我在全球代碼和FormsAuthentication.Decrypt有此錯誤:
protected void FormsAuthentication_OnAuthenticate(Object sender, FormsAuthenticationEventArgs e)
{
if (FormsAuthentication.CookiesSupported == true)
{
if (Request.Cookies[FormsAuthentication.FormsCookieName] != null)
{
try
{
//let us take out the username now
string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
//let us extract the roles from our own custom cookie
string roles = Class1
.GetUserRoles(username);
//Let us set the Pricipal with our user specific details
e.User = new System.Security.Principal.GenericPrincipal(new System.Security.Principal.GenericIdentity(username, "Forms"), roles.Split(';'));
}
catch (Exception)
{
//somehting went wrong
}
}
}
}
向我們展示你的'<認證>''從網絡節點。 config'。 – twoflower