Что такое олицетворение в ASP.NET?

пожалуйста, объясните олицетворение для нетехнических пользователей.Тогда, пожалуйста, объясните это в контексте ASP.NET - ... Является ли олицетворение добром или злом? Используем ли мы его в случае проверки подлинности на основе форм?

3 ответов


вы должны проверить описание кита Брауна подражание. Это действительно концепция Windows.

когда у вас есть приложение с использованием проверки подлинности форм (FA), процесс IIS выполняется под учетными данными определенной пользовательской установки в IIS.

пример: если пользователь Bob вошел в систему с помощью FA и IIS setup для запуска в качестве сетевой службы. Боб обращается к странице, которая делает вызов веб-сервиса на другой компьютер, другой компьютер увидит пользователя IIS, а не Боба. Можно использовать олицетворение, чтобы Боб мог получить доступ к веб-службе в качестве реального пользователя Windows, а не сетевой службы.

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


веб-приложения запускаются через веб-сервер. Этот веб-сервер работает как пользователь с другими разрешениями, чем у вас. Олицетворение позволяет приложению работать как вы (или любой другой пользователь с различными priveledges на cmoputer), как если бы вы вошли в систему на компьютере, на котором он работает.

Это на самом деле делает вещи довольно хорошо. Это позволяет другим способом предоставить / ограничить доступ к защищенным файлам на компьютере.

и да, вы можете применить его с помощью формы Аутентификация (но вам не нужно).


ASP.NET приложения могут выполняться с идентификатором Windows (учетной записью пользователя) пользователя, сделавшего запрос. Олицетворение обычно используется в приложениях, которые используют службы Microsoft Internet Information Services (IIS) для проверки подлинности пользователя.

ASP.NET олицетворение по умолчанию отключено. Если олицетворение включено для ASP.NET приложение, которое выполняется в контексте удостоверения, маркер доступа к которому IIS передает ASP.NET - ... Этот токен может быть либо маркер пользователя, прошедшего проверку подлинности, например маркер для вошедшего в систему пользователя Windows или маркер, предоставляемый IIS анонимным пользователям (обычно идентификатор IUSR_MACHINENAME).