Установка, лицензирование и конфигурирование ThingWorx Navigate > Использование SSL для безопасного взаимодействия
  
Использование SSL для безопасного взаимодействия
* 
Этот раздел применим к системам с настроенной аутентификацией Windchill.
Введение
Сайт может использовать 2-сторонний протокол SSL для защиты обмена данными между сервером ThingWorx и приложением Windchill. PTC рекомендует использовать SSL при работе в производственной среде. Расширение может использовать SSL как для взаимной аутентификации серверами друг друга, так и для защиты самого взаимодействия.
Использование SSL-соединения требует, чтобы обе системы доверяли друг другу; для этого необходимо сконфигурировать старый и новый шаблон вещи WindchillConnector, чтобы он был привязан к ключу Java, а доверенные хранилища содержались на сервере ThingWorx, предоставляющем ключи для транзакции. Сервер HTTP Server на сервере Windchill должен быть сконфигурирован, чтобы доверять этим ключам.
Эта процедура предполагает, что обе системы ThingWorx и Windchill сконфигурированы для использования SSL для стандартных взаимодействий. В ней также используются сценарии конфигурации, которые поступают с самой последней версией PTC HTTP Server. Самая последняя версия PTC HTTP Server входит в Windchill 11.0 M030 и более поздних версий.
* 
Коммерческий доверенный подстановочный сертификат может использоваться для Windchill, а самоподписанный сертификат может использоваться для взаимодействия между ThingWorx и Windchill.
Конфигурирование ThingWorx с KeyStore и TrustStore
Для ThingWorx требуются хранилища ключа Java и хранилища доверия.
1. Создайте доверенное хранилище TrustStore для ThingWorx и импортируйте сертификат SSL Windchill.
2. Создайте хранилище ключей (KeyStore) для ThingWorxи сгенерируйте пару ключей в KeyStore.
3. Сконфигурируйте Windchill для доверия ThingWorx.
4. Используйте их как ссылку в конфигурации шаблона вещи WindchillConnector, используемого для соединения ThingWorx с системой Windchill, для которой устанавливается защита.
Конфигурирование Windchill для использования аутентификации клиента
На сервере Windchill сконфигурируйте аутентификацию SSL на PTC HTTP Server для признания надежными ключа и сертификата ThingWorx.
* 
Примеры кода переформатированы для соответствия размерам страницы и могут содержать номера строк, скрытые символы редактирования (такие как символы табуляции и конца строки) и лишние пробелы. При вырезании и вставке кода проверьте, нет ли этих символов, и удалите их, прежде чем попытаетесь использовать этот пример в своем приложении.
1. Обновите конфигурацию PTC HTTP Server для привязки к файлу сертификации CA.
a. Создайте файл в <HTTPSERVER_HOME>\conf\ca-bundle.crt. Это расположение рекомендуется, но не является обязательным.
b. Сохраните файл ca-bundle.crt.
c. Создайте файл sslclientauth.conf в <HTTPSERVER_HOME>\conf\sslvhostconf.d.
d. Добавьте путь SSLCACertificateFile в <PATH_TO>\ca-bundle.crt, чтобы он ссылался на файл ca-bundle.crt. Например:
SSLCACertificateFile
<HTTP_Server>\conf\ca-bundle.crt
e. Сохраните изменения.
2. Добавьте сертификат клиента ThingWorx в список сертификатов доверенного CA для PTC HTTP Server.
a. Отредактируйте файл ca-bundle.crt, ссылка на который была указана ранее в записи SSLCACertificateFile.
* 
Если этот файл еще не существует, создайте его и все необходимые каталоги.
b. Отредактируйте файл ca-bundle.crt и вставьте содержимое файла PEM сертификата клиента ThingWorx.
c. Сохраните изменения.
3. Сконфигурируйте PTC HTTP Server для URL-адреса sslClientAuth.
a. Найдите наименование веб-приложения Windchill в файле <windchill-home>/codebase/wt.properties в записи wt.webapp.name.
b. Откройте оболочку или командную строку и введите следующую команду:
cd <HTTPSERVER_HOME>ant -f webAppConfig.xml -DappName=[windchill-web-app] -Dresource=sslClientAuth -DresourceAuthType=sslClientAuth addAuthResource
c. Сконфигурируйте Windchill, чтобы сертификат ThingWorx стал доверенным.
a. Отредактируйте файл <windchill-home>/codebase/WEB-INF/web.xml.
b. Найдите <filter-name>TrustedSSLAuthFilter</filtername>.
c. Добавьте дополнительный элемент <init-param> после существующего элемента, где [thingworx-cert-name] - это наименование сертификата ThingWorx:
<init-param><param-name>trustedSubjectPattern.1</param-name><param-value>
[thingworx-cert-name]</param-value></init-param>
d. Сохраните изменения.