Конфигурирование сервера OSLC
Windchill поддерживает следующие спецификации OSLC:
Configuration Management 1.0 (для отображения деталей Windchill)
Change Management 3.0 (для отображения объектов изменения Windchill)
Сервисы Windchill OSLC сопоставляют объекты Windchill с соответствующими ресурсами OSLC и предоставляют ответы в запрашиваемом формате. Поддерживаются следующие форматы:
RDF/XML (по умолчанию)
JSON-LD
Turtle
Каталог Windchill OSLC
Доступ к каталогу Windchill OSLC можно получить по адресу https://<WINDCHILL-SERVER-URL>/Windchill/oslc/catalog.
Конфигурирование авторизации OAuth
По умолчанию сервисы Windchill OSLC используют базовую авторизацию. Чтобы включить авторизацию OAuth, требуется выполнить дополнительный шаг конфигурации. См. в разделе Конфигурирование делегированной авторизации OAuth описание шагов по конфигурированию Windchill для использования OAuth.
Если сконфигурированы свойства OSLC OAuth, каталог Windchill OSLC содержит свойство OAuthConfiguration, позволяющее клиентам OSLC обнаружить, что они должны использовать авторизацию OAuth.
После создания конфигурации Windchill OAuth задайте следующие свойства Windchill:
Имя свойства
Описание
oslc.authorizationURI
URI для получения авторизации OAuth
oslc.oauthAccessTokenURI
URI для получения лексемы доступа OAuth
oslc.oauthRequestTokenURI
URI для получения лексемы запроса OAuth
* 
При использовании авторизации OAuth убедитесь, что все запросы к конечным точкам OSLC имеют префикс с настроенным шаблоном URL-адреса SpringSecurityFilterChain. Например, если SpringSecurityFilterChain сконфигурирован с использованием шаблона URL-адреса /oauth/*, все конечные точки OSLC должны иметь шаблон URL-адреса /oauth/oslc/*.
Конфигурация, необходимая для включения сервисов Windchill OSLC
Чтобы включить сервисы Windchill OSLC, выполните следующие шаги.
1. Добавьте следующую запись в %WT_HOME%/codebase/WEB_INF/web.xml
<servlet-mapping>
<servlet-name>OSLCServlet</servlet-name>
<url-pattern>/oslc/*</url-pattern>
</servlet-mapping>
2. Чтобы добавить путь OSLC в конфигурацию Apache, добавьте следующую запись в HTTPServer/conf/conf.d/30-app-Windchill-AJP.conf
JkMount /Windchill/oslc/* ajpWorker
3. Чтобы сконфигурировать каталог OSLC для анонимного доступа в конфигурации Apache, добавьте следующую запись в HTTPServer/conf/conf.d/30-app-Windchill-Auth.conf
<LocationMatch ^/+Windchill/+oslc/catalog(;.*)?>
Require all granted
</LocationMatch>
Конфигурация для политики безопасности содержимого
Чтобы клиентские сайты с других сайтов могли видеть предварительные просмотры OSLC, обновите файл web.xml, включив в него следующие конфигурации фильтра сервлетов OSLC Content Security:
<filter>
<filter-name>OSLCContentSecurityFilter</filter-name>
<description>Servlet request filter to set the Content Security Policy for previews</description>
<filter-class>com.ptc.oslc.windchill.filter.OSLCHttpHeaderSecurityFilter</filter-class>
<init-param>
<param-name>allowedOrigins</param-name>
<param-value>https://site1.domain.com,https://site2.domain.com </param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>OSLCContentSecurityFilter</filter-name>
<url-pattern>/oslc/*</url-pattern>
</filter-mapping>
Конфигурация для общего доступа к ресурсам (CORS) для OSLC
* 
Для более безопасной конфигурации используйте фильтр CORS только для междоменной конфигурации OSLC.
* 
При конфигурировании Windchill для общего доступа к содержимому OSLC с другими продуктами OSLC установите эти приложения локально в том же домене.
Чтобы клиентские сайты с других сайтов могли видеть службы OSLC, обновите файл web.xml, включив в него следующие конфигурации фильтров сервлетов:
<filter>
<filter-name>ContentCorsFilter</filter-name>
<filter-class>org.apache.catalina.filters.CorsFilter</filter-class>
<init-param>
<param-name>cors.allowed.origins</param-name>
<param-value>[ALLOWED_ORIGINS]</param-value>
</init-param>
<init-param>
<param-name>cors.support.credentials</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.methods</param-name>
<param-value>GET,POST,OPTIONS,HEAD</param-value>
</init-param>
<init-param>
<param-name>cors.allowed.headers</param-name>
<param-value>Content-Type,X-Requested-With</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>ContentCorsFilter</filter-name>
<url-pattern>/oslc/preview/*</url-pattern>
<url-pattern>/oslc/config/*</url-pattern>
<url-pattern>/oslc/cm/*</url-pattern>
</filter-mapping>
Конфигурирование Apache для поддержки покадрового предварительного просмотра в Windchill при межсайтовом развертывании
При интеграции Windchill с внешним сервером OSLC, таким как Codebeamer, и обоюдном развертывании между сайтами, Apache должен быть сконфигурирован для поддержки кадрирования предварительных просмотров Windchill на интегрированном сервере OSLC. Межсайтовым развертыванием называют серверы, которые развернуты в различных интернет-доменах верхнего уровня, например windchill.foo.com и codebeamer.bar.com.
* 
Эта конфигурация необходима для обеспечения совместимости с более новыми версиями браузеров.
Для конфигурирования Apache выполните следующие шаги.
1. Задайте следующие свойства в файле app-Windchill.properties:
Свойство
Описание
trustedAncestorSites
Укажите URL-адрес межсайтового сервера OSLC, чтобы включить кадрирование страницы предварительного просмотра OSLC.
Это значение должно совпадать со значением allowedOrigins в OSLCContentSecurityFilter в файле web.xml.
Например, URL-адрес межсайтового сервера Codebeamer: https\://ppumsv-ipfc408d.almrd.example.com\:8573.
authCookieNameRegexp
Регулярное выражение для наименования cookie-файла аутентификации, которое может совпадать с наименованием cookie-файла аутентификации.
Например: _shibsession_.*
Чтобы найти файл cookie аутентификации, войдите в систему Windchill и перейдите в браузере в раздел Инструменты разработчика > Приложение > Cookies.
enableOslcPreviewRewrite
Задайте для этой опции значение true, чтобы включить переход процесса страниц на основе Apache.
enableRefererChecking
Задайте для этого параметра значение true, чтобы включить проверку заголовка реферера в качестве дополнительной меры безопасности. Делать это необязательно.
originBaseUrl
Если для enableRefererChecking задано значение true, укажите базовый URL-адрес сервера Windchill.
Например: https\://pwrdcsv-wcqa576d.ptcnet.ptc.com
setReferrerPolicy
Если для enableRefererChecking задано значение true, задайте для этого параметра значение true, чтобы сконфигурировать заголовок отклика политики реферера как strict-origin.
2. Выполните команду ANT: ant -f webAppConfig.xml regenAllWebApps.
Можно также выполнить команду Ant ant -f webAppConfig.xml regenWebAppConf -DappName=Windchill.
3. Перезапустите сервер Apache, чтобы изменения вступили в силу.
4. Убедитесь в доступности предварительных просмотров в Windchill на сервере OSLC после интеграции.
Было ли это полезно?