Подтвердить что ты не робот

Проверяет ли IIS проверку сертификата SSL или я должен ее проверить?

У меня есть служба IIS, позволяющая принимать клиентские соединения только с сертификатом SSL. У меня есть служба WCF, работающая на IIS. У меня есть Центр сертификации в доверенных центрах сертификации. Теперь, когда клиент подключается к службе, проверяет ли IIS, что сертификат клиента был выпущен одним из моих доверенных центров сертификации? Или мне нужно выполнить проверку в моей службе WCF?

Кроме того, если я хочу, чтобы служба только принимала подключения от одного конкретного ЦС (не всех моих доверенных ЦС, всего один), должен ли я выполнять проверку в служебном коде?

4b9b3361

Ответ 1

Если вы настроили IIS на требование взаимного HTTPS (SSL с клиентскими сертификатами), IIS/http.sys отвечает за проверку сертификата, а сертификат клиента должен быть либо в хранилище доверенных лиц, либо должен быть выпущен доверенным ЦС. Сертификат проверяется во время установления связи для установления SSL-соединения. Когда IIS используется для размещения службы WCF, эта проверка выполняется за пределами WCF (в случае самостоятельного хостинга вы можете использовать проверку подлинности сертификата).

Если вы хотите ограничить доступ к службе только ограниченному подмножеству клиентов (с сертификатами, выпущенными только одним CA), вы должны перенести это требование с проверки подлинности (проверки сертификата) на авторизацию = custom AuthorizationPolicy в вашей службе WCF, где вы подтвердите, что сертификат был выпущен правильным CA = клиенту разрешено вызывать вашу службу.

Надежные эмитенты также могут быть настроены на системном уровне с netsh - проверьте sslctlidentifier и sslctlstorename. Эта конфигурация будет глобальной для всего порта (веб-сайта), поэтому, если у вас есть несколько веб-приложений или служб с различными требованиями, размещенными на одном и том же порту, это не будет для вас вариантом.

Ответ 2

Да, IIS проверяет сертификат клиента для взаимной аутентификации, вам не нужно проверять его в коде веб-службы.
Проверьте эту статью, это будет более понятно.