У меня есть приложение SL 4 с сервисом RIA для аутентификации (Forms + IE9). Рассмотрим следующий сценарий
- пользователь А входит в систему,
- теперь пользователь B делает то же самое,
- пользователь A выполняет какую-то операцию, и оказывается, что внутри
System.Web.HttpContext.Current.User
скрыты учетные данные для пользователя B, что является катастрофой.
Вот часть моего web.config <authentication mode="Forms" >
<forms name="MY_COOKIE_NAME" timeout="180"/>
</authentication>
и часть кода, отвечающая за логин
public AuthenticationUser Login(string userName, string password, bool isPersistent, string customData)
{
var retUser = new DefaultUser();
if (/*check credentials*/)
{
FormsAuthentication.SetAuthCookie(userName, true);
retUser = CreateAuthenticatedUserData(userName);
}
return retUser;
}