Ищете рекомендации о том, какие изменения для поддержки.net приложения Webseal Authentication .

Наша организация планирует использовать Webseal в качестве прокси-сервера перед нашими веб-сайтами.net. В настоящее время мы используем аутентификацию форм.net и настраиваемый поставщик членства для пользовательской таблицы SQL-сервера.

В соответствии с этой новой моделью вся аутентификация будет выполняться слоем webseal. Из того, что я понимаю, после аутентификации webseal просто добавит токен в заголовок, указывающий, что пользователь аутентифицирован вместе с идентификатором пользователя.

Мне бы хотелось, чтобы наши приложения работали без изменений, поэтому я хочу создать что-то, что защитит их от деталей webseal, создав некоторый слой, который преобразует токен webseal в обычный токен.net.

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

Кто-нибудь делал такие вещи? Что было бы хорошей стратегией для этого. Я слышал о Windows Identity Framework, но не уверен, что это правильное решение для этого.

Любой совет или направление будет полезно.

2 ответа

Если информация аутентификации предоставлена ​​(в заголовке), то самый простой способ использовать ее в конвейере запросов - написать собственный модуль.

Модуль - это класс, реализующий IHttpModule интерфейс. В своем Init метод, который вы присоединяете пользовательский обработчик к AuthenticateRequest из HttpApplication, Ваш пользовательский обработчик должен отвечать за воссоздание идентичности, т.е. HttpContext"s User к любому объекту, реализующему IPrincipal (вы можете использовать встроенный GenericPrincipal).

Затем вы регистрируете свой модуль в соответствующем разделе web.config и вы сделали.

Для получения более подробной информации, спросите Google о "модуле аутентификации C# custom".

Предполагая, что вы используете MVC, в соответствии с этим примером IBM вы можете добавить настраиваемый фильтр действий для преобразования информации пользователя в заголовке WebSEAL для аутентифицированного пользователя.

Другие вопросы по тегам