Пример. Реализация Windchill SSO с PingFederate в качестве брокера
В этом примере изложены подробные пошаговые инструкции по настройке среды, которая содержит Windchill PDMLink и Shibboleth SP, сконфигурированные для единого входа с PingFederate в качестве центрального сервера аутентификации (CAS) и службами федерации Active Directory (AD FS) в качестве поставщика удостоверений (IdP).
В следующей таблице показаны сконфигурированные приложения и их роль в этом примере:
На следующей схеме показана конфигурация, рассматриваемая в этом примере.
Часть A. Предварительные требования
Часть B. Конфигурирование аутентификации для AD FS вручную
Шаг 1. Создание глобального сертификата SSL для PingFederate
1. Войдите в систему PingFederate как администратор. Выполните поиск SSL Server Certificates и откройте результаты поиска.
2. Щелкните Create New, чтобы создать глобальный сертификат SSL, и выполните следующие действия.
1. В поле Common Name укажите полное доменное имя компьютера PingFederate.
2. Укажите другие сведения на этой странице и нажмите кнопку Next.
3. Убедитесь, что следующие флажки отмечены, и щелкните Save.
4. Щелкните SSL Server Certificates.
5. Для созданного сертификата SSL в списке Select Action выберите Activate Default for Runtime Server, а затем выберите Activate Default for Admin Console. Щелкните Save
Этот сертификат SSL помечен как значение по умолчанию для консоли администратора и сервера времени выполнения.
3. Для сертификата localhost выполните следующие действия.
1. В списке Select Action выберите действие Deactivate for Runtime Server, а затем выберите Deactivate for Admin Console.
2. Удалите сертификат localhost и щелкните Save.
Шаг 2. Создание контракта поставщика сервиса
1. В PingFederate выполните поиск Policy Contract и откройте результат поиска.
2. Щелкните Create New Contracts и выполните следующие действия.
1. В поле Contract Info введите наименование контракта, например SPContract, и щелкните Next.
2. Чтобы продлить контракт для следующих атрибутов, в разделе Contract Attributes щелкните для каждого атрибута Add.
▪ uid
▪ email
▪ group
По умолчанию атрибут subject существует.
3. Нажмите кнопку Next и на странице Summary щелкните Save.
4. На странице Authentication Policy Contracts щелкните Save.
Шаг 3. Загрузка файла FederationMetadata.xml AD FS
1. В браузере компьютера AD FS введите следующий URL-адрес для загрузки файла метаданных федерации:
https://Хост_ADSF.домен_ADFS/FederationMetadata/2007-06/FederationMetadata.xml
2. Скопируйте загруженный файл в компьютер PingFederate.
Шаг 4. Создание соединения IdP для PingFederate
A) Укажите общую информацию для создания соединения IDP
1. В PingFederate выполните поиск IdP Connections и откройте результаты поиска. Щелкните Create Connection.
2. На вкладке Connection Type установите флажок BROWSER SSO Profiles и нажмите кнопку Next.
3. На вкладке Connection Options установите флажок BROWSER SSO и флажок OAUTH ATTRIBUTE MAPPING и нажмите кнопку Next.
4. На вкладке Import Metadata выберите File и щелкните Choose File, чтобы перейти к файлу FederationMetadata.xml, затем щелкните Next.
5. На вкладке Metadata Summary нажмите кнопку Next.
6. Вкладка General Info предварительно заполняется данными. Можно изменить CONNECTION NAME, если нужно. Проверьте оставшуюся информацию и нажмите кнопку Next.
7. На вкладке Browser SSO щелкните Configure Browser SSO. Откроется страница Browser SSO, в которой необходимо задать настройки для единого входа в браузере.
B) Конфигурирование настроек единого входа в браузере
1. На вкладке SAML Profiles на странице Browser SSO выберите следующие опции и нажмите кнопку Next.
▪ IDP-INITIATED SSO
▪ SP-INITIATED SSO
2. На вкладке User-Session Creation щелкните Configure User-Session Creation. Откроется страница User-Session Creation, на которой необходимо указать настройки для конфигурирования создания пользователя.
C) Конфигурирование настроек создания сессии пользователя
1. На вкладке Identity Mapping примите настройки по умолчанию и нажмите кнопку Next.
2. На вкладке Attribute Contract Проверьте атрибуты автозаполнения и нажмите кнопку Next.
3. На вкладке Target Session Mapping щелкните Map New Authentication Policy. Откроется страница Authentication Policy Mapping, на которой необходимо указать настройки сопоставления политики аутентификации.
D) конфигурирование настроек сопоставления политики аутентификации
1. В списке
Authentication Policy Contract выберите контракт, который был создан на этапе
Часть B. Шаг 2, т. е.
SPContract. Убедитесь, что все атрибуты отображаются, и нажмите кнопку
Next.
2. На вкладке Attribute Retrieval примите настройки по умолчанию и нажмите кнопку Next.
3. На вкладке Contract Fulfillment выберите значения для следующих параметров контрактов политики аутентификации: email, group, subject и uid
▪ В списке Source выберите Assertion.
▪ Выберите соответствующую запись в списке Value.
Нажмите кнопку Next.
4. На вкладке Issuance Criteria щелкните Next.
5. Просмотрите информацию на вкладке Summary. Если информация правильная, нажмите кнопку Done. Откроется страница User-Session Creation, на которой необходимо просмотреть настройки конфигурации для создания сессии пользователя.
E) Просмотр настроек конфигурации создания сессии пользователя
1. На вкладке Target Session Mapping страницы User-Session Creation отображается информация, которая была выбрана при сопоставлении новой политики аутентификации. Нажмите кнопку Next.
2. Просмотрите информацию на вкладке Summary. Если информация правильная, нажмите кнопку Done. Откроется страница Browser SSO.
3. На вкладке User-Session Creation страницы Browser SSO отображается информация, которая была введена при конфигурировании создания сессии пользователя. Нажмите кнопку Next.
4. На вкладке OAuth Attribute Mapping щелкните Map Directly Into Persistent Grant и выберите Configure OAuth Attribute Mapping, а затем выполните следующие действия.
1. На вкладке Data Store нажмите кнопку Next.
2. На вкладке Contract Fulfilment для каждой из переменных USER_KEY и USER_NAME выберите в столбце Source значение Assertion, а в столбце Value выберите Атрибут наименования в ADFS, затем щелкните Next.
3. На вкладке Issuance Criteria щелкните Next.
5. Просмотрите информацию на вкладке Summary. Если информация правильная, нажмите кнопку Done. Нажмите кнопку Next на странице OAuth Attribute Mapping Configuration.
6. На вкладке Protocol Settings щелкните Configure Protocol Settings. Откроется страница Protocol Settings, на которой необходимо указать настройки журнала.
F) конфигурирование и просмотр настроек журнала
1. На вкладке SSO Service URLs нажмите кнопку Next.
2. На вкладке Allowable SAML Bindings выполните следующие действия и нажмите кнопку Next.
1. Установите следующие флажки:
▪ POST
▪ REDIRECT
2. Снимите следующие флажки:
▪ ARTIFACT
▪ POST
3. Пропустите настройки на вкладке Overrides и нажмите кнопку Next.
4. На вкладке Signature Policy щелкните SPECIFY ADDITIONAL SIGNATURE REQUIREMENTS, установите два флажка в этом разделе и нажмите кнопку Next.
5. На вкладке Encryption Policy щелкните ALLOW ENCRYPTED SAML ASSERTIONS AND SLO MESSAGES, установите флажок THE ENTIRE ASSERTION и нажмите кнопку Next.
6. Просмотрите информацию на вкладке Summary. Если информация правильная, нажмите кнопку Done. Откроется страница Browser SSO.
7. На вкладке Protocol Settings на странице Browser SSO отображается информация, которая была выбрана при конфигурировании настроек журнала. Нажмите кнопку Next.
8. Просмотрите информацию на вкладке Summary. Если информация правильная, нажмите кнопку Done. Откроется страница IdP Connection.
9. На вкладке Browser SSO страницы IdP Connection нажмите кнопку Next.
10. На вкладке Credentials щелкните Configure Credentials. Откроется страница Credentials, на которой необходимо указать настройки для конфигурирования учетных данных.
G) конфигурирование учетных данных
1. На вкладке Digital Signature Settings щелкните Manage Certificates.
2. Чтобы создать сертификат подписи, щелкните Create New, укажите следующие значения и нажмите кнопку Next:
▪ COMMON NAME
▪ ORGANIZATION
▪ COUNTRY
▪ VALIDITY (DAYS): 365
▪ KEY ALGORITHM: RSA
▪ KEY SIZE (BITS): 2048
▪ SIGNATURE ALGORITHM: RSA SHA256
3. Просмотрите информацию на вкладке Summary. Если информация правильная, щелкните Save, затем щелкните Done.
4. На вкладке Digital Signature Settings для сертификата SIGNING CERTIFICATE, который был создан, установите флажок INCLUDE THE CERTIFICATE IN THE SIGNATURE <KEYINFO> ELEMENT и нажмите кнопку Next.
Это сертификат уровня приложения, используемый для цифровой подписи запроса из PingFederate в IdP.
5. На вкладке Signature Verification Settings щелкните Manage Signature Verification Settings.
a. На вкладке Trust Model выберите UNANCHORED и нажмите кнопку Next.
b. Убедитесь, что на вкладке Signature Verification Certificate отображается сертификат подписи IdP, и нажмите кнопку Next.
Это сертификат уровня приложения, используемый для проверки подписи запросов из IdP в PingFederate. Он был автоматически импортирован в PingFederate при импорте файла metadata.xml из IdP.
c. Просмотрите информацию на вкладке Summary. Если информация правильная, нажмите кнопку Done.
d. На вкладке Signature Verification Settings нажмите кнопку Next.
e. На панели Select Decryption Keys выберите сертификат PingFederate и нажмите кнопку Next.
f. Просмотрите информацию на вкладке Summary. Если информация правильная, нажмите кнопку Done.
g. На странице Credentials щелкните Next.
H) Активация соединения IdP
Убедитесь, что на странице Activation & Summary активирована конечная точка SSO Application Endpoint, и щелкните Save.
Теперь соединение IdP создано и активировано.
I) Проверка соединения IdP
Щелкните созданное соединение IdP, скопируйте URL-адрес SSO Application Endpoint, вставьте его в браузер и убедитесь, что выполняется перенаправление в IdP. Таким образом, этот URL-адрес из PingFederate должен быть перенаправлен в AD FS. Вы увидите страницу, аналогичную приведенной ниже, которая будет содержать сообщение об ошибке.
Часть C. Конфигурирование проверяющей стороны AD FS
Шаг 1. Экспорт файла XML метаданных из PingFederate
1. В PingFederate перейдите к пункту Поставщик сервисов и в разделе IDP Connections щелкните Manage All.
2. Для соединения IdP в списке Select Action щелкните Export Metadata.
3. На странице Metadata Signing нажмите кнопку Next.
4. На странице Export & Summary щелкните Export чтобы загрузить файл метаданных в папку Downloads на вашем компьютере, и нажмите кнопку Done .
5. Скопируйте XML-файл метаданных на компьютер AD FS.
Шаг 2. Добавление проверяющей стороны в AD FS
1. Войдите на сервер AD FS и откройте Server Manager.
2. Перейдите в > .
3. В разделе AD FS щелкните правой кнопкой мыши Relying Party Trusts и выберите Add Relying Party Trust. Это необходимо, чтобы обеспечить доверие AD FS к соединению с PingFederate.
4. В окне Add Relying Party Trust Wizard выполните следующие действия.
1. Щелкните Начать.
2. На следующем экране щелкните Import data about the relying party from a file.
3. Щелкните Browse и перейдите в расположение файла Metadata.xml, скопированного из PingFederate, чтобы создать проверяющую сторону в AD FS, и нажмите кнопку Next.
4. Укажите отображаемое имя в поле Display name и нажмите кнопку Next.
Запишите это имя, поскольку оно потребуется позже.
5. Нажимайте кнопку Next в следующих окнах, пока не достигните экрана Done. Затем щелкните Close.
Текущая запись будет добавлена в список Relying Part Trusts.
Также должно отображаться следующее окно (оно может быть скрыто за текущим окном):
5. Чтобы сопоставить атрибуты AD FS с Active Directory, выполните следующие действия.
1. В окне Edit Claim Issuance Policy for <Доверенное имя проверяющей стороны> щелкните Add Rule и нажмите кнопку Next.
2. Укажите имя в поле Claim rule name и задайте для Attribute store значение Active Directory.
3. В таблице Mapping of LDAP attributes to outgoing claim types выберите значения из списков, чтобы сопоставить атрибуты AD FS с атрибутами Active Directory:
| Если эти атрибуты не сопоставлены правильно, единый вход не будет работать. |
Display-Name | Name |
SAM-Account-Name | Name ID |
E-Mail-Addresses | E-Mail Address |
Is-Member-Of-DL | Group |
4. Щелкните Done и нажмите кнопку ОК.
Шаг 3. Настройка AD FS для шифрования полного сообщения и утверждения
1. На компьютере AD FS откройте Windows PowerShell от имени администратора.
2. Выполните следующую команду на компьютере AD FS, чтобы осуществлялось взаимодействие:
Set-ADFSRelyingPartyTrust -TargetName <Доверенное имя проверяющей стороны> -SamlResponseSignature "MessageAndAssertion"
где <Доверенное имя проверяющей стороны> - это доверенное имя проверяющей стороны, которое было создано и записано на шаге 2 ранее.
Эта команда конфигурирует подпись отклика SAML с помощью Windows PowerShell.
Часть D. Проверка URL-адреса конечной точки соединения IdP
Часть E. Настройка Shibboleth SP и PingFederate
Часть F. Настройка записи JNDI LDAP
Часть G. Дополнительная настройка