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

Как получить тему из клиентского сертификата, выданного как утверждение в ADFS?

Я использую аутентификацию на основе сертификатов в ADFS 3.0, и мне нужно получить поле «Тема» из клиентского сертификата, выданного как утверждение, но оно недоступно в качестве входящего утверждения в ADFS.

Когда я включаю аудит, я вижу, что он присутствует в идентификаторе вызывающего абонента как следующий тип утверждения: http://schemas.microsoft.com/2012/12/certificatecontext/field/subject

Но он не выдается в выданном удостоверении и, следовательно, не доступен в качестве входящего утверждения для использования в Правилах утверждений.

Кто-нибудь делал это раньше? Можете ли вы настроить входящие заявки из клиентских сертификатов?

Я решил эту проблему, настроив таблицу [AdfsConfiguration]. [IdentityServerPolicy]. [Policies] в базе данных конфигурации ADFS. Есть запись, которая охватывает входящие заявки. В моей базе данных это идентификатор «88EDF726-83FA-E511-80C5-000D3AB14473», хотя я не знаю, являются ли они постоянными значениями или меняются в зависимости от развертывания. Вы можете сказать, какой из них, так как он довольно длинный и содержит претензию Cert eku.

Я изменил его, включив в него следующее правило:

@RuleTemplate = "PassThroughClaims"
@RuleName = "Pass through certificate Subject claim"
c:[Type == "http://schemas.microsoft.com/2012/12/certificatecontext/field/subject", Issuer =~ "^(AD AUTHORITY|SELF AUTHORITY|LOCAL AUTHORITY)$"]
 => issue(claim = c);