У меня есть несколько asp. net веб-приложений, использующих одну и ту же аутентификацию с помощью форм ie, это среда единого входа. Все приложения имеют одинаковое имя Cook ie, домен, путь и машинный ключ. все работают нормально. Проблема заключается только в одном из приложений, в котором проверка подлинности с помощью форм проходит всех, даже когда я меняю имя Cook ie и / или путь, домен, машинный код !! если сделать это с любым другим приложением, пользователи не смогут проходить. на простом английском sh, я специально нарушаю свой код, но он все еще работает !!!!
настройка web.config
<authentication mode="Forms">
<forms name=".AppsFormsAuthx1" loginUrl="page1.aspx" defaultUrl="page2.aspx" timeout="720" protection="All" slidingExpiration="true" cookieless="UseDeviceProfile" requireSSL="false" enableCrossAppRedirects="true" domain=".domain.com" path="/"/>
</authentication>
код входа
`FormsAuthenticationTicket fat = new FormsAuthenticationTicket(1, u_id.ToString(), DateTime.Now, DateTime.Now.AddMinutes(100), true, u_id.ToString(), FormsAuthentication.FormsCookiePath);
string encrypt_cookie = FormsAuthentication.Encrypt(fat);
HttpCookie httpcok = new HttpCookie(FormsAuthentication.FormsCookieName, encrypt_cookie);
httpcok.Expires = fat.Expiration;
httpcok.Path = FormsAuthentication.FormsCookiePath;
httpcok.Domain = ".domain.com";
Response.Cookies.Add(httpcok);
Response.Redirect("page.aspx");`
Определите код пользователя
`HttpCookie authCookie = Context.Request.Cookies[FormsAuthentication.FormsCookieName];
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value);
return int.Parse(ticket.UserData.ToString());`