2013-11-07 3 views
0

Недавно я создал веб-приложение в MVC4, которое использует аутентификацию CAC. Все работает нормально, за исключением того, что мое приложение не всегда каждый раз возвращается к результату действия входа в систему. Я понял, что причина в том, что IIS кэширует мои учетные данные в первый раз, чего я не хочу делать. Как заставить IIS кэшировать мои учетные данные, но сохранить мои изображения, css, javascript кэшировать?Как отключить кэширование учетных данных в IIS?

+1

Попробуйте использовать другой браузер - ушли ли полномочия? IIS не кэширует ваши учетные данные - если вы используете Forms auth, файл cookie сохраняется и ваш сеанс обнаруживается при посещении стороны. Если вы сделаете так, чтобы файл cookie был удален при закрытии вашего браузера, это сделает трюк. – MattW

+0

Followup: эта старая статья (да, примеры в VB) неплохо объясняет процесс: http://www.asp.net/web-forms/tutorials/security/introduction/an-overview-of- forms-authentication-vb – MattW

+0

Пометка на @mattw - файл cookie удаляется при перезагрузке сервера или запуске службы. –

ответ

1

IIS не должен кэшировать ваши учетные данные, файл cookie для входа просто не истек, когда вы закрываете и снова открываете сайт. Я пытаюсь найти информацию об аутентификации с использованием общедоступного доступа, но я предполагаю, что это очень похоже на проверку подлинности на основе форм.

Когда кто-то регистрируется на вашем сайте, на вашем веб-сайте выдается зашифрованный файл cookie. Этот файл cookie отправляется с каждым запросом на ваш сайт, чтобы разрешить пользователю ваши действия.

В вашем web.config есть раздел для обработки того, как долго этот файл cookie действителен, а также такие элементы, как ваш URL-адрес для входа.

<authentication mode="Forms"> 
    <forms loginUrl="~/User/Account/Login" timeout="2880" /> 
</authentication> 

Атрибут тайм-аута - это время в минутах, в течение которого cookie останется действительным. Итак, в том же браузере, пока cookie не истек, пользователю больше не нужно будет входить в систему. Тайм-аут по умолчанию - это 20 минут, которые, как я полагаю, имеет «скользящее окончание», что означает, что пока пользователь делает материал на вашем сайте, время истечения срока действия cookie будет продолжать выходить из-под контроля, не позволяя вашему сайту ударять активного пользователя обратно страницу входа в систему с помощью приложения.

+0

Вы были правы. Мне просто нужно было удалить дату истечения срока действия моего файла cookie. – RiceRiceBaby

Смежные вопросы