Правильное использование


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

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

У меня нет контроля над панелью управления, тот, кто это делает, сказал, что он предоставилизображения папку a чтение и Запись разрешения на Другие .

После тестирования его снова, в очередной раз та же ошибка, поэтому я отредактировал web.config и включено:

<identity impersonate="true"/>
И теперь все, кажется, работает идеально. Но что я только что здесь делал? Существует ли какой-либо риск для безопасности? Предоставлял ли я всем анонимный доступ к своему сайту?
2 12

2 ответа:

Но что я только что здесь делал?

Теперь вы запускаете свой веб-сайт под именем пользователя-клиента.

Существует ли какой-либо риск для безопасности?

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

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

Предоставлял ли я анонимный доступ к своему сайту для всех?

Нет, это не имеет ничего общего с аутентификацией.

То, что вы сделали, дает пользователю права работать под зарегистрированным пользователем.

И существует риск безопасности для того, чтобы сделать impersonate истинным.

Если вы находитесь на производстве, я бы рекомендовал вам прочитать эту статью http://support.microsoft.com/default.aspx?scid=kb; en-us;329290

" использование олицетворения в сети.config позволяет переопределить любое удостоверение, настроенное для пула приложений, под которым работает приложение, - это просто более мелкий метод, чтобы управление идентификацией (на уровне приложения и на уровне пула приложений), так что вы можете запустить два приложения в одном пуле приложений, но одно из них использует олицетворение для использования другого идентификатора." любезность: идентичность пула приложений против идентичности олицетворения?