Проблема заключается в том, что используется один и тот же файл cookie для аутентификации двух разных логинов.
Насколько я понимаю, решение состоит в том, чтобы указать разные имена файлов cookie для разных входов в систему, чтобы один файл cookie не перезаписывал другой.
Вероятно, решение находится в файле web.config.
В конфигурации
Измените значение имени на другое в ваших 2 приложениях, если у вас один и тот же домен и вы работаете в разных каталогах/приложениях, или также измените значение домена, которое также использовалось сохранить печенье.
<authentication mode="Forms">
<forms name=".CookieSuffix" domain="yoururl.com" ... />
</authentication>
Например, в двух разных файлах web.config ваших приложений поместите
в приложение 1: name=".app1"
в приложение 2: name=".app2 "
Или в приложении 1: domain="app1.yoururl.com"
в приложении 2: domain="app2.yoururl.com"
, если вы разделяете ваши приложения, на основе URL-адреса или даже попробуйте некоторые аналогичные действия.
Файл cookie сохраняется, используя имя файла cookie в имени домена, поэтому это 2 значения, которые вы должны попытаться разделить.
Подробности о настройке формы можно найти здесь: http://msdn.microsoft.com/en-us/library/aa480476.aspx
Ручной вход
Если у вас есть возможность войти в систему вручную, решение находится в этой функции.
FormsAuthentication.GetAuthCookie(cUserName, false, "cookiePath");
FormsAuthentication.SetAuthCookie(cUserName, false, "cookiePath");
Вам нужно только использовать другой cookiePath, но вы должны изменить многие точки в своей программе и зафиксировать вход в систему, выход из системы и аутентификацию.
Надеюсь, это поможет вам.
person
Aristos
schedule
22.03.2010