Правильное использование
На моем веб-сайте пользователи, которые вошли в систему, могут изменить свои фотографии профиля, и этот процесс включает сохранение загруженного изображения в папку в корневом каталоге веб-сайта.
Когда я тестировал его,я получил сообщение об ошибке, что я должен предоставить доступ к этой конкретной папке с помощью разрешений.
У меня нет контроля над панелью управления, тот, кто это делает, сказал, что он предоставилизображения папку a чтение и Запись разрешения на Другие .
После тестирования его снова, в очередной раз та же ошибка, поэтому я отредактировал web.config и включено:
<identity impersonate="true"/>
И теперь все, кажется, работает идеально. Но что я только что здесь делал? Существует ли какой-либо риск для безопасности? Предоставлял ли я всем анонимный доступ к своему сайту?2 ответа:
Но что я только что здесь делал?Теперь вы запускаете свой веб-сайт под именем пользователя-клиента.
Существует ли какой-либо риск для безопасности?
Это будет зависеть от разрешений, которые эта учетная запись имеет на сервере. Обычно это плохая практика, чтобы запустить веб-сайт с учетными записями, которые имеют много привилегий. В идеале вы должны настроить свой веб-сайт так, чтобы он работал под учетной записью, которой вы явно предоставляете необходимые права доступа. папки.
Проблема вашего подхода заключается в том, что если другой пользователь, не имеющий доступа к указанной папке, посетит ваш сайт, это не будет работать для него. Если, с другой стороны, это ожидаемое поведение, то вы, вероятно, в порядке, олицетворяя удостоверения пользователей.
Предоставлял ли я анонимный доступ к своему сайту для всех?
Нет, это не имеет ничего общего с аутентификацией.
То, что вы сделали, дает пользователю права работать под зарегистрированным пользователем.
И существует риск безопасности для того, чтобы сделать impersonate истинным.
Если вы находитесь на производстве, я бы рекомендовал вам прочитать эту статью http://support.microsoft.com/default.aspx?scid=kb; en-us;329290
" использование олицетворения в сети.config позволяет переопределить любое удостоверение, настроенное для пула приложений, под которым работает приложение, - это просто более мелкий метод, чтобы управление идентификацией (на уровне приложения и на уровне пула приложений), так что вы можете запустить два приложения в одном пуле приложений, но одно из них использует олицетворение для использования другого идентификатора." любезность: идентичность пула приложений против идентичности олицетворения?