2015-01-22 3 views
0

У меня есть ситуация, в которой я немного запутался, так как не могу воспроизвести ее ни на одной из моих других сред.Начальная загрузка ASP.NET в производстве - IPrinciple Isnt Set

Сайт по-прежнему находится в разработке и, следовательно, практически не имеет никакого трафика, кроме двух из нас, работающих над ним. Таким образом, если сайт находится в состоянии покоя (все экземпляры IIS закрыты и т. Д.), Когда я впервые регистрирую IPrinciple, не устанавливается правильно (со временем?), И поэтому последующие проверки безопасности явно терпят неудачу. Затем я могу сразу вернуться на страницу входа в систему, выполнить идентичный вход и все в порядке.

Это также происходит независимо от того, какой пользователь я тестирую, поэтому он не относится к учетной записи.

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

Что я могу сделать, чтобы эта ситуация не возникала? Это также говорит о том, что, возможно, проблема в другом месте?

+0

показать нам код ..... как вы устанавливаете IPrinciple? Где вы его устанавливаете? Каков ваш код входа? Используете ли вы какие-либо пользовательские HttpModules для установки IPrinciple? Все эти детали имеют значение чрезвычайно –

ответ

0

Пройдя несколько экспериментов, выяснилось, что проблема проявилась только в Google Chrome. Все остальные браузеры выполняли, как ожидалось.

Решение было на самом деле надзором с моей стороны. Кажется, Google Chrome имеет более строгие правила в отношении того, как файлы cookie обрабатываются в отношении доменов.

Установка атрибута домена в файле cookie для проверки подлинности устраняет проблему, и теперь Google Chrome также регистрируется в ожидании.