Как ограничить проверку подлинности сертификата для определенных пользователей в IIS 8.0?
Я использую IIS 8.0 на коробке Windows Server 2012. Это не присоединенная к домену машина, поэтому Active Directory мне недоступна.
Я успешно настроил проверку подлинности сертификата. При доступе к веб-сайту пользователю предоставляется список сертификатов на выбор, а список доверия сертификатов (CTL) на сервере имеет те промежуточные и корневые центры сертификации, которым он доверяет.
Мой вопрос: как я могу ограничить только определенных пользователей для успешной аутентификации? Например, если у нас есть пять пользовательских сертификатов, выданных одним и тем же центром сертификации, но я все же хочу ограничить доступ к сайту только трем из пяти человек. Это может быть список доступа на основе любого уникального идентификатора, расположенного в сертификатах X.509 (например, электронная почта, идентификатор ключа, отпечаток большого пальца)
Я не уверен, как добиться этого поведения. Я нашел это, но я не уверен, что это правильный путь для перехода...: http://www.iis.net/configreference/system.webserver/security/authentication/iisclientcertificatemappingauthentication
Может кто-то указать мне верное направление?
1 ответ
Вы думаете об этом с неправильной стороны. Аутентификация сертификата является заменой или улучшением имени пользователя / пароля или аутентификации AD. Когда пользователь подключается к вашему сайту и представляет сертификат, он регистрируется как пользователь, которому сопоставлен сертификат.
Таким образом, если у вас есть 3 пользователя, которые вы хотите использовать на своем сайте, либо ваше веб-приложение должно принять решение (как если бы оно использовало аутентификацию по имени / паролю), либо вы можете создать группу AD и поставить 3 люди в нем и установить безопасность для папки, чтобы разрешить только эту группу.