服务器指南
本指南提供有关 Codebeamer 生命周期协作开放服务 (OSLC) 服务器的详情。
先决条件
要阅读、理解和执行本指南中的说明,需要满足以下条件:
• 在使用 Codebeamer 服务器时熟悉 OSLC 标准和规范。
• 在托管 Codebeamer 的服务器上执行活动 (例如安装和配置) 所需的管理员权限。
• Codebeamer 中的系统管理员权限。
Codebeamer 服务器目录
Codebeamer 服务器提供一个根目录,其中包含服务提供者和嵌套的服务提供者目录。根目录充当组织和显示这些资源的主要参考点,为服务提供者目录提供 URI,以轻松用于客户端应用程序。
安装和配置
无需执行特定的安装或配置步骤,即可安装 OSLC 服务。根目录在安装
Codebeamer 后可用。有关
Codebeamer 的安装,请参阅
Codebeamer 安装指南。
还要确保为
Codebeamer 服务器设置 SSL。有关详情,请参阅
如何为 Codebeamer 设置 SSL。
OSLC 服务在运行 Codebeamer 服务器时可用。
用于启用预览和选择对话框的内容安全策略
默认情况下,在 Web 浏览器中,Codebeamer 允许请求来自同一域 (和源)。即使域是相同的,来源也可能由于子域或端口而有所不同。例如,https://app1.myexample.com 和 https://app2.myexample.com 属于同一个域,但具有不同的来源。
要使用预览和选择对话框,即使来源因子域而不同,请求也必须来自同一域。此类来源必须位于 Allowed List 中。
要启用安全策略,请执行以下操作:
1. 以系统管理员身份登录 Codebeamer,然后单击 > 。
2. 执行下列其中一个步骤:
◦ 添加以下应用程序配置:
"contentSecurityPolicy" : {
"text" : "frame-ancestors <EXTERNAL_DPT_SERVER_BASE_URL1> <EXTERNAL_DPT_SERVER_BASE_URL2>"
},
|
 如果在 "contentSecurityPolicy" 应用程序配置中列出多个服务器,使用空格分隔这些服务器。
|
例如:
"contentSecurityPolicy" : {
"text" : "frame-ancestors https://pingfed-az.ptcnet.ptc.com https://pingfed-az.ptcnet.ptc.com:9031 https://pwdcsv-wcqa56d.ptcnet.ptc.com"
},
◦ 或者,设置以下环境变量:
CB_CORS_ALLOWED_ORIGINS=<EXTERNAL_DPT_SERVER_BASE_URL1>,<EXTERNAL_DPT_SERVER_BASE_URL2>
|
 如果在 CB_CORS_ALLOWED_ORIGINS 环境变量中列出多个服务器,使用逗号分隔这些服务器。
|
例如:
CB_CORS_ALLOWED_ORIGINS=https://pingfed-az.ptcnet.ptc.com,https://pingfed-az.ptcnet.ptc.com:9031
支持的安全方案
Codebeamer 服务器支持基本身份验证和 OAuth 2.0 身份验证方案。如果您的 OSLC 设置与其他系统进行交互,您必须在所有产品中始终使用一个身份验证方案。
如果当前使用 OAuth 2.0 协议进行身份验证,则必须将特定 DPT 密钥添加至配置。有关特定 DPT 密钥,请参阅
OSLC DPT 特定密钥。有关配置示例,请参阅
OpenID PingFederate OAuth 客户端。
使用 Codebeamer 服务器
Codebeamer 支持需求管理域和变更管理域:
• 需求管理域
Codebeamer 服务器支持 OSLC 客户端应用程序 (例如 Windchill) 使用
Codebeamer 需求资源来创建追溯。该服务器还提供紧凑的资源,用于访问
Codebeamer 需求的小型预览,这些需求可从下游系统 (例如 Windchill) 进行预览。有关详情,请参阅
需求管理域。
• 变更管理域
Codebeamer 服务器支持 OSLC 客户端应用程序 (例如 Windchill) 使用
Codebeamer 变更管理资源来创建追溯。该服务器还提供紧凑资源,用于访问
Codebeamer 项的小型预览。例如,可以从 Windchill 等下游系统预览变更请求资源。有关详情,请参阅
变更管理域。
Codebeamer 服务器支持将 application/rdf+xml 作为所有请求响应 (资源预览除外) 的内容类型。根据 OSLC Core 3.0 版本的规范,Codebeamer 服务器还支持 rdf+xml。
通过 Codebeamer 服务器访问 Codebeamer 资源
在通过 OSLC API 访问 Codebeamer 服务器时,必须具有必要的项目级别访问权限。
Codebeamer 服务器支持通过以下 URI (支持身份验证) 发现服务提供者目录 (根目录):
GET <protocol scheme>://<server host name>:<server port number>/<context path>/api/oslc/catalog
例如:
GET https://codebeamer:8443/cb/api/oslc/catalog
Codebeamer 服务器支持通过以下 URI (支持身份验证) 发现各种服务提供者和服务提供者目录资源:
GET <protocol scheme>://<server host name>:<server port number>/<context path>/api/oslc/catalog/projects
例如:
GET https://codebeamer:8443/cb/api/oslc/catalog/projects
标识 Codebeamer 项目
GET /api/oslc/catalog/projects 端点会跨代码流返回可访问项目。有关代码流的详情,请参阅
关于代码流。
请参阅以下示例响应:
<oslc:ServiceProviderCatalog rdf:about="https://codebeamer:8443/cb/api/oslc/catalog/projects">
<dcterms:title rdf:parseType="Literal">PTC Codebeamer Projects Catalog</dcterms:title>
<dcterms:description rdf:parseType="Literal">PTC Codebeamer Projects Catalog</dcterms:description>
<oslc:serviceProvider>
<oslc:ServiceProvider rdf:about="https://codebeamer:8443/cb/api/oslc/projects/9234">
<dcterms:title rdf:parseType="Literal">Automotive ISO 26262:2018 & ASPICE Template</dcterms:title>
</oslc:ServiceProvider>
</oslc:serviceProvider>
<oslc:serviceProvider>
<oslc:ServiceProvider rdf:about="https://codebeamer:8443/cb/api/oslc/projects/15585">
<dcterms:title rdf:parseType="Literal">Automotive ISO 26262:2018 & ASPICE Template (Stream01)</dcterms:title>
</oslc:ServiceProvider>
</oslc:serviceProvider>
在上述响应中,请注意以下事项:
• 项目是两个代码流的一部分。
• 9234 是基于初始代码流的项目 ID。项目始终是“初始代码流”的一部分。
• 15585 是基于自定义代码流的项目 ID。
• 基于自定义代码流的 ID 15585 的名称会以下列格式在 <dcterms:title> 标记中显示:<项目名称><空间>(<自定义代码流名称>)。例如,在 Automotive ISO 26262:2018 & ASPICE Template (Stream01) 值中,自定义代码流名称为 Stream01。