Специализированное администрирование > Сервер Open Services for Lifecycle Collaboration (OSLC)
Сервер Open Services for Lifecycle Collaboration (OSLC)
Для упрощения интеграции инструментов управления жизненным циклом используются службы Open Services for Lifecycle Collaboration (OSLC). Windchill поддерживает спецификацию OSLC по умолчанию и активирует клиенты OSLC, чтобы использовать эти службы для интеграции с Windchill.
Интерфейсы Windchill OSLC API позволяют клиентам OSLC запрашивать детали Windchill и устанавливать с ними связь на основе спецификаций OSLC. Windchill поддерживает следующие спецификации OSLC:
Configuration Management 1.0 (для отображения деталей Windchill)
Службы Windchill OSLC отвечают за сопоставление объектов Windchill с соответствующим ресурсом OSLC и предоставляют ответ для этих ресурсов в запрашиваемом формате. Поддерживаются следующие форматы:
RDF+XML (по умолчанию)
text/turtle
* 
Службы Windchill OSLC могут использоваться только клиентами OSLC; не-OSLC клиенты должны использовать службы Windchill REST (WRS) (OData).
Каталог OSLC
Доступ к каталогу OSLC и к дополнительной информации обо всех доступных службах, ресурсах и терминологии можно получить в расположении http(s)://<server>:<port>/Windchill/oslc/catalog.
Конфигурирование авторизации OAuth
Авторизацией по умолчанию для служб Windchill OSLC является базовая авторизация. Для включения авторизации OAuth необходимо выполнить дополнительный шаг конфигурации.
См. в разделе Конфигурирование делегированной авторизации OAuth описание шагов по конфигурированию Windchill для использования OAuth. После создания конфигурации Windchill OAuth задайте следующие свойства Windchill:
Имя свойства
Описание
oslc.authorizationURI
URI для получения авторизации OAuth
oslc.oauthAccessTokenURI
URI для получения лексемы доступа OAuth
oslc.oauthRequestTokenURI
URI для получения лексемы запроса OAuth
Если сконфигурированы свойства OSLC OAuth, каталог Windchill OSLC содержит свойство OAuthConfiguration, позволяющее клиентам OSLC обнаружить, что они должны использовать авторизацию OAuth.
* 
При использовании авторизации OAuth убедитесь, что все запросы к конечным точкам OSLC имеют префикс с настроенным шаблоном URL-адреса SpringSecurityFilterChain. Например, если SpringSecurityFilterChain сконфигурирован с использованием шаблона URL-адреса /oauth/*, все конечные точки OSLC должны иметь шаблон URL-адреса /oauth/oslc/*.
Конфигурация, требуемая после обновления Windchill
Чтобы включить службы Windchill OSLC после обновления с предыдущей версии Windchill, выполните следующие шаги.
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 с другими клиентскими приложениями PTC 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</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>
</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 после интеграции.
Было ли это полезно?