Назад | Перейти на главную страницу

IIS7.5 - Персональные SSL-сертификаты для нескольких пользователей

Я хочу реализовать модель безопасности, но я не уверен, какую терминологию использует IIS / SSL для этого. Я также не знаю, как это сделать в IIS7.5.

Процесс, который я хочу иметь

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

Я предполагаю, что мне понадобятся выделенные пользователи Windows для каждого администратора с синхронизированными сертификатами. Обратите внимание, что это Win2k8 R2 + IIS 7.5, а не вещи, управляемые обменом или доменом, а простой сервер без всякой ерунды AD.

Вам нужно будет сопоставить клиентские сертификаты для проверки подлинности Windows (если это необходимо). Вы можете найти следующие две статьи от Microsoft полезными. У них есть пошаговый процесс. Один из них - статья MSDN. Другой - статья базы знаний службы поддержки Майкрософт.

http://msdn.microsoft.com/en-us/library/ff649203.aspx

http://support.microsoft.com/?id=907274

Надеюсь, что это поможет.

У вас есть две разные проблемы.

  1. Разработайте способ создания и поддержки ваших сертификатов. Обычно это означает установку центра сертификации и его использование для подписания сертификатов, созданных пользователями. Это довольно сложная тема, но вы можете начать с установки и понимания роли «Центр сертификации» в Windows. Однако НЕ устанавливайте это на том же компьютере, что и ваш веб-сервер.
  2. Реализация правила проверки подлинности сертификата клиента в IIS 7.5. На самом деле это не так уж сложно.

Вот подробности о том, как настроить аутентификацию сертификата клиента в IIS 7.5:

  • В диспетчере ролей установите службу роли IIS под названием «Проверка подлинности сопоставления сертификатов клиента IIS».
  • Откройте диспетчер IIS и выберите сайт или папку, которую вы хотите защитить.
  • Откройте «редактор конфигурации» и перейдите в раздел «system.webServer / security / authentication / iisClientCertificateMappingAuthentication».
  • Установите для "enabled" значение "true".

Теперь у вас есть разные варианты (оба могут быть включены одновременно): сопоставление «многие к одному» и «один к одному». Видеть эта документация о том, как его настроить, но, по сути, вы создаете версию в кодировке base-64 каждого сертификата, который хотите принять, открываете его в текстовом редакторе, удаляете строки «начальный сертификат» и «конечный сертификат», удаляете все строки прерывается для него, а затем создайте запись сопоставления в редакторе конфигурации с именем пользователя и паролем Windows, которые будут использоваться для входа в систему с сертификатом, и используя строку, которую вы только что создали в поле «сертификат».

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

Кроме того, знайте, что все используемые вами сертификаты НЕОБХОДИМО быть действительными на сервере: вам необходимо установить их в хранилище сертификатов серверной системы (не вашего пользователя, системы) либо в разделе «доверенные люди» (для самозаверяющих и пользовательские сертификаты), в «Надежном корневом ЦС» (для корневого сертификата) или в промежуточном центре сертификации (для ICA).

Я изначально думал, что вы хотите, чтобы SSL делал то, для чего он не предназначен, но, конечно, есть сертификаты клиентов ...

Взгляните на эту статью на iisadmin.co.uk

http://www.iisadmin.co.uk/?p=11

-Льюис