Специализированное администрирование > Сервер 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:
<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>
Конфигурирование встроенного обработчика сервлетов для кадрирования предварительных просмотров Windchill для межсайтового развертывания
При интеграции Windchill с внешним сервером OSLC, таким как Codebeamer, и их развертывании на сайтах, должен быть сконфигурирован встроенный обработчик сервлетов (на основе Tomcat) для поддержки кадрирования предварительных просмотров Windchill на интегрированном сервере OSLC. Межсайтовым развертыванием называют серверы, которые развернуты в различных интернет-доменах верхнего уровня, например windchill.foo.com и codebeamer.bar.com.
* 
Эта конфигурация необходима для обеспечения совместимости с более новыми версиями браузеров.
Чтобы сконфигурировать встроенный обработчик сервлетов (на основе Tomcat), задайте следующие свойства в файле wt.properties с помощью утилиты xconfmanager.
Свойство
Описание
wt.authCookieName
Наименование файла cookie аутентификации.
wt.authCookieNameRegexp
Регулярное выражение, соответствующее наименованию файла cookie аутентификации.
Например: _shibsession_.*
Чтобы найти файл cookie аутентификации, войдите в систему Windchill и перейдите в браузере в раздел Инструменты разработчика > Приложение > Cookies.
* 
Убедитесь, что файл cookie не удаляется и не пропускается аутентифицирующим веб-сервером или прокси-сервером, а передается во встроенный обработчик сервлетов.
Было ли это полезно?