PingFederate в качестве центрального сервера аутентификации > Примеры конфигураций SSO > Пример. PingFederate в качестве поставщика удостоверений и Windchill DS в качестве хранилища данных
Пример. PingFederate в качестве поставщика удостоверений и Windchill DS в качестве хранилища данных
Этот пример содержит подробные пошаговые инструкции по конфигурированию среды SSO, содержащей приложение ThingWorx, сконфигурированное для использования единого входа с PingFederate в качестве центрального сервера аутентификации (CAS) и поставщика удостоверений (IdP), а также Windchill DS в качестве хранилища данных.
В следующей таблице показаны сконфигурированные приложения и их роль в этом примере:
Роль
Приложение
Поставщик сервисов
ThingWorx
Сервер авторизации
PingFederate
Поставщик удостоверений
PingFederate (поддерживается Windchill DS)
* 
Начиная с выпуска Windchill 12.0.1.0, модуль Windchill DS удален из технологического набора. Дополнительные сведения доступны здесь. Вместо Windchill DS можно использовать ваш модуль LDAP V3.
PTC предоставляет сценарии автоматизации для конфигурации PingFederate, рассматриваемой в этом примере. Дополнительные сведения см. в разделе Автоматическое конфигурирование PingFederate в качестве центрального сервера аутентификации.
На следующей схеме показана конфигурация, рассматриваемая в этом примере.
Часть A. Предварительные требования 
Загрузите сценарии автоматизации и извлеките их в папку на вашем компьютере.
Убедитесь, что у вас новая установка ThingWorx.
Остановите сервер ThingWorx после установки.
Убедитесь, что выполнена настройка Windchill DS.
Установите PingFederate и запустите PingFederate.
* 
Установите версию Java, соответствующую версии PingFederate. На компьютере PingFederate задайте переменную среды JAVA_HOME и обновите переменную PATH, чтобы соответствующим образом включить Java.
Часть B. Действия перед выполнением сценариев 
Шаг 1. Создайте глобальный сертификат SSL PingFederate и экспортируйте его
1. Войдите в систему PingFederate как администратор и перейдите в раздел Безопасность > SSL Server Certificates.
2. Щелкните Create New, чтобы создать глобальный сертификат SSL, и выполните следующие действия.
a. В поле Common Name укажите полное доменное имя компьютера PingFederate.
b. Укажите другие сведения на этой странице и нажмите кнопку Далее.
c. Нажмите кнопку Done, а затем кнопку Save.
d. Щелкните SSL Server Certificates.
e. Для созданного сертификата SSL в списке Select Action выберите Activate Default for Runtime Server, а затем выберите Activate Default for Admin Console. Щелкните Save
Этот сертификат SSL помечен как значение по умолчанию для консоли администратора и сервера времени выполнения.
3. Для сертификата localhost выполните следующие действия.
a. В списке Select Action выберите действие Deactivate for Runtime Server, а затем выберите Deactivate for Admin Console.
b. Удалите сертификат localhost и щелкните Save.
4. Для экспорта глобального сертификата SSL PingFederate выполните следующие действия.
a. Для созданного сертификата щелкните Export.
b. Выберите Certificate Only и щелкните Next.
c. Щелкните Export.
Сертификат будет экспортирован в папку Downloads по умолчанию.
d. Щелкните Done, а затем Save.
Дополнительные сведения см. в разделе Конфигурирование сертификата SSL для PingFederate.
Шаг 2. Сохранение файлов сертификатов в папке input при автоматической конфигурации PingFederate
Сертификаты требуются в качестве входных данных для процесса автоматической конфигурации. Необходимо сохранить в папке input инструмента автоматической конфигурации следующие файлы сертификатов. Путь к папке input - sso-config-pingfed-X.Y/input, где X.Y обозначает версию PingFederate.
Скопируйте файл глобального сертификата PingFederate (.crt), который вы экспортировали в папку Загрузки.
Чтобы создать и скопировать файл thingworx.cer в папку input, выполните следующие действия.
a. В папке <Папка установки ThingWorx>/ThingworxPlatform создайте папку ssoSecurityConfig.
b. Создайте файл хранилища ключей с типом JKS и именем sso-keystore.jks и сохраните его в папке ssoSecurityConfig следующим образом.
Сгенерируйте пару ключей.
Укажите общее имя сертификата как ThingWorx.
c. Экспортируйте цепочку сертификатов в папку ssoSecurityConfig.
В папке ssoSecurityConfig должны находиться следующие файлы:
sso-keystore.jks
thingworx.cer
d. Скопируйте файл thingworx.cer в папку sso-config-pingfed-X.Y/input.
В папке input должны находиться следующие файлы:
<Экспортированный_из_PingFederate_сертификат SSL>.crt
thingworx.cer
Шаг 3. Обновите файл user.properties
Задайте свойства пользователя в соответствии с вашей настройкой конфигурации.
Шаг 4. Обновите файл default.properties
Обновите свойства по умолчанию в соответствии с вашей настройкой конфигурации.
Часть C. Выполнение сценариев автоматизации 
1. Убедитесь, что приложение PingFederate запущено.
Для конфигурации в этом примере выберите 1. PingFederate as IdP - LDAP при запуске сценариев.
Часть D. Использование сгенерированных артефактов 
Шаг 1. Копирование артефактов в папку ssoSecurityConfig
1. Скопируйте следующие файлы из папки output автоматической конфигурации PingFederate, доступной в разделе sso-config-pingfed-X.Y, в папку /ThingworxPlatform/ssoSecurityConfig:
pingfed_idp_metadata.xml
pingfed_signing_certificate.crt
pingfed_ssl_server_certificate.crt
2. Переименуйте файл pingfed_idp_metadata.xml в sso-idp-metadata.xml.
Дополнительные сведения см. в разделе Использование сгенерированных артефактов.
Шаг 2. Импорт сертификата подписи уровня приложения в хранилище ключей ThingWorx
Импортируйте файл pingfed_signing_certificate.crt в файл sso-keystore.jks в папке /ThingworxPlatform/ssoSecurityConfig. Дополнительные сведения см. в разделе pingfed_signing_certificate.crt Использование сгенерированных артефактов.
Шаг 3. Импорт сертификатов транспортного уровня
Сертификат SSL ThingWorx
1. Импортируйте сертификат SSL ThingWorx в файл Java cacerts на компьютере PingFederate.
2. Перезапустите PingFederate.
Сертификат SSL PingFederate
Импортируйте pingfed_ssl_server_certificate.crt (файл сертификата SSL в PingFederate) в файл Java cacerts на компьютере ThingWorx.
Дополнительные сведения см. в разделе pingfed_ssl_server_certificate.crt Использование сгенерированных артефактов.
Часть E (необязательно). Конфигурирование сопоставления групп 
* 
Прежде чем продолжить, убедитесь, что статические группы определены в Windchill DS.
Выполните следующие шаги в PingFederate:
1. Перейдите в раздел SYSTEM > Password Credential Validators и выберите Instance Name.
2. На открывшейся странице выберите вкладку Extended Contract.
3. В поле Extend the Contract добавьте isMemberOf и щелкните Добавить.
4. Нажмите кнопку Next, чтобы увидеть страницу Summary.
5. На открывшейся странице Summary просмотрите изменения и щелкните Save.
6. Перейдите в раздел AUTHENTICATION > IdP Adapters и выберите Instance Name.
7. На открывшейся странице выберите вкладку Extended Contract.
8. В поле Extend the Contract добавьте isMemberOf и щелкните Добавить.
9. Нажмите кнопку Next, чтобы увидеть страницу Adapter Attributes. Не требуется выполнять какие-либо обновления на этой странице.
10. Нажмите кнопку Next, чтобы перейти на страницу Adapter Contract Mapping, и выберите Configure Adapter Contract.
11. На странице Attribute Sources & User Lookup щелкните Add Attribute Source.
a. На странице Data Store выполните следующие шаги:
i. Для ATTRIBUTE SOURCE ID добавьте isMemberOf.
ii. Для ATTRIBUTE SOURCE DESCRIPTION добавьте isMemberOf.
iii. Для ACTIVE DATA STORE выберите хранилище данных Windchill.
iv. Для DATA STORE предварительно заполняется опция LDAP.
v. Щелкните Next.
b. На странице LDAP Directory Search выполните следующие шаги:
i. Для BASE DN добавьте o=ptc.
ii. Для SEARCH SCOPE предварительно заполняется опция Subtree.
iii. Для Attributes to return from search, выберите следующее:
i. Для ROOT OBJECT CLASS выберите <Show All Attributes>.
ii. Для ATTRIBUTE выберите isMemberOf и щелкните Add Attribute.
iii. Щелкните Next.
c. На странице LDAP Filter выполните следующие шаги:
i. Для Filter добавьте isMemberOf=${isMemberOf}.
ii. Щелкните Next.
d. На открывшейся странице Summary просмотрите изменения и щелкните Save.
12. Откройте страницу APPLICATIONS > SP Connections и выберите Connection Name.
13. На открывшейся странице выберите Attribute Contract, чтобы открыть страницу Attribute Contract и выполнить следующие шаги:
a. Для Extend the Contract добавьте group.
b. Для Attribute Name Format выберите опцию с unspecified.
c. Щелкните Добавить.
d. Щелкните Далее.
14. На открывшейся странице Authentication Source Mapping выберите Adapter Instance Name.
15. На открывшейся странице Attribute Contract Fulfilment выполните следующие шаги для контракта атрибута group, созданного на шаге 12.
a. Для Source выберите Adapter.
b. Для Value выберите isMemberOf.
c. Щелкните Save
* 
Запишите наименование сопоставления (в этом примере group), необходимое для ThingWorx аутентификатора SSO. Дополнительные сведения см. в разделе Аутентификация единого входа в справочном центре ThingWorx.
Часть F. Конфигурирование ThingWorx для единого входа 
1. Убедитесь, что сервер ThingWorx остановлен.
2. Чтобы сконфигурировать ThingWorx для единого входа, выполните следующие действия.
Ваша папка ssoSecurityConfig должна содержать следующие файлы:
3. Запустите сервер ThingWorx.
Было ли это полезно?