===== Создание отношений доверия для Exchange =====
После развёртывания роли //ADFS//, описанном в статье [[Установка роли ADFS]], мы можем создать отношения доверия и подключить //ADFS// в качестве способа аутентификации в //Exchange//.
==== Создание отношений доверия ====
Дальнейшие действия мы будем производить в разделе //Relying Party Trusts// в консоли //ADFS//. Для создания полноценных отношений доверия все действия повторяются в данном случае ДВАЖДЫ: для //OWA// и для //ECP// (админка //Exchange//).
;#;
{{:ms:adfs_relying_party_trusts.jpg?600|}}
;#;
1. Выполняем //Add Relying Party Trust// и выбираем //Claims Aware//.
;#;
{{:ms:adfs_claims_aware_party_trust.png?600|}}
;#;
2. Выбираем опцию ввести вручную детали отношений доверия.
;#;
{{:ms:adfs_relying_part_trusts_data_source.png?600|}}
;#;
3. Выбираем отображаемое имя отношений (делаем понятные имена для //OWA// и //ECP//).
;#;
{{:ms:adfs_relying_part_trusts_displ_name.png?600|}}
;#;
4. На этапе сертификата ничего не выбираем и пропускаем этот шаг.
;#;
{{:ms:adfs_relying_part_trusts_cert.png?600|}}
;#;
5. Далее выбираем опцию //Enable support for the WS-Federation Passive protocol// и указываем полный URL OWA/ECP, ВКЛЮЧАЯ слеш.
;#;
{{:wiki:adfs_relying_part_trusts_ws_trust.png?600|}}
;#;
6. Нажимаем //next// на шаге //Configure identifiers//.
;#;
{{:ms:adfs_relying_part_trusts_identifiers.png?600|}}
;#;
7. На этапе выбора политики - отмечаем //Permit everyone//.
;#;
{{:ms:adfs_relying_part_trusts_policy.png?600|}}
;#;
8. В пункте //Ready to add trust// - также кликаем //next//.
;#;
{{:ms:adfs_relying_part_trusts_ready.png?600|}}
;#;
==== Политика подачи запросов ====
Теперь необходимо отредактировать политику подачи запросов. Данные действия также выполняются ДВАЖДЫ - для OWA и для ECP. Кликаем на отношение доверия и выбираем //Edit claim insurance policy//.
;#;
{{:ms:adfs_edit_claims_inssurance_policy.jpg?600|}}
;#;
Нам необходимо создать два правила. Вот их пример.
;#;
{{:ms:adfs_claim_insurance_policy_rules.jpg?600|}}
;#;
Правило с именем: //ActiveDirectoryUserSID//.
Слдержание правила:
c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"] => issue(store = "Active Directory", types = ("http://schemas.microsoft.com/ws/2008/06/identity/claims/primarysid"), query = ";objectSID;{0}", param = c.Value);
Правило с именем: //ActiveDirectoryUPN//.
Содержание правила:
c:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname", Issuer == "AD AUTHORITY"] => issue(store = "Active Directory", types = ("http://schemas.xmlsoap.org/ws/2005/05/identity/claims/upn"), query = ";userPrincipalName;{0}", param = c.Value);
==== Конфигурирование ADFS на стороне Exchange ====
=== Конфигурирование настроек Exchange на уровне организации ===
Предполагаю, что сертификат подписи ADFS был импортирован в Exchange, как описано в материале [[Установка роли ADFS]]. В этом случае нам необходимо получить отпечаток данного сертификата. Сделаем это следующим образом на //Exchange//:
Set-Location Cert:\LocalMachine\Root; Get-ChildItem | Sort-Object Subject | sls ADFS
Получив отпечаток, сконфигурируем настройку //ADFS// на уровне организации:
Set-OrganizationConfig -AdfsIssuer https://adfs1.arasaka.local/adfs/ls/ -AdfsAudienceUris "https://exch1.arasaka.local/owa/","https://exch1.arasaka.local/ecp/" -AdfsSignCertificateThumbprint "0EFB56DD0FC460B9B310A08065667A67514FD0D8"
=== Конфигурирование настроек Exchange на уровне виртуальных директорий ===
:!: Конфигурировать виртуальные директории обязательно в данном порядке: сначала //ECP//, затем //OWA//.
Конфигурируем ECP:
Set-EcpVirtualDirectory -Identity "exch1\ecp (Default Web Site)" -AdfsAuthentication $true -BasicAuthentication $false -DigestAuthentication $false -FormsAuthentication $false -OAuthAuthentication $false -WindowsAuthentication $false
Точное название виртуальной директории ECP можно получить так:
Get-EcpVirtualDirectory
Конфигурируем OWA:
Set-OwaVirtualDirectory -Identity "exch1\owa (Default Web Site)" -AdfsAuthentication $true -BasicAuthentication $false -DigestAuthentication $false -FormsAuthentication $false -OAuthAuthentication $false -WindowsAuthentication $false
Точное название виртуальной директории OWA можно получить так:
Get-OWAVirtualDirectory
Теперь необходимо перезапустить //IIS// на сервере //Exchange//. Сделаем это так:
net stop w3svc /y
net start w3svc
==== Как проверить, что всё ОК? ====
Заходим на //OWA// или //ECP//: https://exch1.arasaka.local/owa или https://exch1.arasaka.local/ecp
Видим, что нас заредиректило на страницу авторизации ADFS.
;#;
{{:ms:arasaka_adfs_welcome.jpg?600|}}
;#;
{{tag>ADFS Certificates PKI Microsoft Windows WindowsServer PowerShell Exchange}}