Azure DevOps 模块
在 Adobe Workfront Fusion 场景中,您可以自动化使用 Azure DevOps 的工作流,并将其连接到多个第三方应用程序和服务。
有关创建场景的说明,请参阅创建场景:文章索引中的相关文章。
有关模块的详细信息,请参阅模块:文章索引下的相关文章。
访问权限要求
| table 0-row-2 1-row-2 2-row-2 3-row-2 layout-auto html-authored no-header | |
|---|---|
| Adobe Workfront 包 |
任意 Adobe Workfront Workflow 包以及任意 Adobe Workfront 自动化和集成包 Workfront Ultimate Workfront Prime 和 Select 包,且需额外购买 Workfront Fusion。 |
| Adobe Workfront 许可证 |
标准 工作版或更高版本 |
| Adobe Workfront Fusion 许可证 |
基于操作:适用于拥有基于操作的许可证的组织 基于连接器(旧版):Workfront Fusion for Work Automation and Integration |
| 产品 | 如果您的组织使用的 Workfront Select 或 Prime 包不包含 Workfront 自动化和集成,则必须单独购买 Adobe Workfront Fusion。 |
有关此表中信息的更多详细说明,请参阅文档中的访问权限要求。
有关 Adobe Workfront Fusion 许可证的详细信息,请参阅 Adobe Workfront Fusion 许可证。
先决条件
要使用Azure DevOps模块,您必须具有Azure DevOps帐户。
Azure DevOps API信息
Azure DevOps连接器使用以下对象:
将 Azure DevOps 连接到 Workfront Fusion connect-azure-devops-to-workfront-fusion
使用联合连接将Azure DevOps连接到Adobe Workfront Fusion
联合连接的工作方式与服务主体连接类似,只不过它不使用客户端密钥。
告诉Microsoft Entra ID信任Workfront Fusion为某个特定连接颁发的令牌,而不是存储密钥。 当连接运行时,Fusion提供短暂的标识验证,Microsoft Entra ID返回访问令牌。 由于没有客户端密钥,因此没有过期的任何内容,也没有要轮换或存储的密钥。
| note |
|---|
| NOTE |
|
- 使用联合连接将Azure DevOps连接到Workfront Fusion的先决条件
- 在Microsoft Entra ID(Federated连接)中创建应用程序注册
- 收集您的连接详细信息(联合连接)
- 在Workfront Fusion中创建连接(联合连接)
- 在Microsoft Entra ID中添加联合凭据
- 验证连接(联合连接)
使用联合连接将Azure DevOps连接到Workfront Fusion的先决条件
要创建此连接,您需要满足以下条件:
- 在Microsoft Entra ID中拥有全局管理员或应用程序管理员访问权限,可注册应用程序并添加联合凭据。 如果您没有此访问权限,请让您的IT或身份团队中的某人为您完成这些步骤。
- 具有您的Azure DevOps组织中的项目集合管理员访问权限,以将服务主体添加为成员。 此人通常与管理Microsoft Entra ID的人不同。
- Azure DevOps组织的名称。 您可以在Azure DevOps URL中找到此项:
dev.azure.com/<your organization name>。
在Microsoft Entra ID(Federated连接)中创建应用程序注册
- 登录到Microsoft Entra管理中心。
- 转到“应用程序注册”>“新注册”。
- 为应用程序提供一个清晰且可识别的名称。 例如:
Workfront Fusion Azure DevOps Integration。 - 将重定向URI保留为空。 此连接不涉及通过浏览器登录。
- 选择“注册”。
- 请勿创建客户端密码。 联合连接不使用联合连接。
- 继续收集您的连接详细信息。
收集您的连接详细信息(联合连接)
-
在应用程序注册的“概述”页面中,注意以下值。 在模块中创建连接时输入这些参数。
table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header 租户ID 在概述页面上,标记为目录(租户) ID。 客户端 ID 在概述页面上,标记为应用程序(客户端) ID。 组织 您的Azure DevOps组织名称。 例如,如果URL是 dev.azure.com/yourorg,请输入yourorg。
| note |
|---|
| NOTE |
| 与服务主体连接一样,您可以跳过应用程序注册的API权限区域。 在下一步中,将在Azure DevOps中授予对Azure DevOps的访问权限。 |
在Workfront Fusion中创建连接(联合连接)
-
在模块的连接设置屏幕中,选择联合连接类型。
-
输入以下内容:
- 租户ID
- 客户端 ID
- 组织
-
选择创建。
Workfront Fusion显示三个值。 保持此页面处于打开状态,因为稍后在创建连接的过程中您将需要这些值。
table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header Issuer https://oidc.automations.adobe.com.主题 这将标识此连接。 它看起来像 fusion:6e5b1c2a345bd8d1ed98b6b4f1459818:28964。 您创建的每个连接都各不相同。受众 api://AzureADTokenExchange.note important IMPORTANT 不要关闭面板或选择“取消”。 在完成其余步骤之前,连接不会完成。 如果关闭面板,则必须删除连接并重新启动,因为新连接会收到新主题。 -
复制 主题 值。
-
继续在Microsoft Entra ID中添加联合凭据。
在Microsoft Entra ID中添加联合凭据
此过程将替换客户端密码。 它会告知Microsoft Entra ID接受Workfront Fusion为此连接颁发的令牌。
-
在新的浏览器选项卡中,返回Microsoft Entra管理中心并打开您的应用程序注册。
-
转到“证书和密码”>“联合凭据”。
-
选择添加凭据。
-
在“联合凭据”方案中,选择“其他颁发者”。
-
输入以下内容:
table 0-row-2 1-row-2 2-row-2 3-row-2 layout-auto html-authored no-header Issuer https://oidc.automations.adobe.com主题标识符 您从Workfront Fusion复制的主题。 完全粘贴,不添加空格。 名称 用于标识此连接的名称,以便您以后查找。 例如: workfront-fusion-connection-28964。受众 api://AzureADTokenExchange. 这通常是替您填充的。 保留默认值。 -
单击添加。
-
继续验证连接。
| note |
|---|
| NOTE |
| Microsoft Entra ID在单个应用程序注册中最多允许20个联合凭据,并且主体标识符必须完全匹配。 不支持通配符。 由于每个Workfront Fusion连接都有其自己的主题,因此每个连接都需要其自己的联合凭据。 如果您需要超过20个连接,请注册多个应用程序并在这些应用程序之间分布连接。 |
验证连接(联合连接)
-
返回到Workfront Fusion浏览器选项卡,其中连接面板仍处于打开状态。
-
单击保存。
- 如果一切设置正确,则连接验证成功,您可以继续配置模块。
- 如果验证失败,面板将保持打开状态并显示错误。 请更正Microsoft Entra ID或Azure DevOps中的问题,然后再次选择“保存”。 您不需要重新创建连接,并且主题不会更改。
| note |
|---|
| NOTE |
| 您在Microsoft Entra ID中添加的联合凭据可能需要很短时间才能变为活动状态。 如果在添加凭据后验证立即失败,请等待一分钟并再次选择“保存”,然后进一步调查。 |
故障排除
| table 0-row-2 1-row-2 2-row-2 layout-auto html-authored no-header | |
|---|---|
| 连接验证失败,客户端无效或请求错误 | Microsoft Entra ID无法将令牌与联合凭据进行匹配。 检查颁发者是否刚好为https://oidc.automations.adobe.com,没有尾随斜杠,并且主题标识符的字符对字符与Workfront Fusion中显示的主题相同。 从其他连接复制的主题是最常见的原因。 |
| 连接验证,但模块从Azure DevOps返回401或403 | 该身份值得信任,但它无法访问您的Azure DevOps数据。 确认您已完成将服务主体添加到Azure DevOps组织,并且服务主体已分配给模块使用的特定项目。 |
| 您无法添加其他联合凭据 | 您已达到该应用程序注册的20个联合凭据的限制。 注册其他应用程序并创建针对该应用程序的更多连接。 |
使用EntraApp将Azure DevOps连接到Workfront Fusion
您可以使用EntraApp将Azure DevOps连接到Workfront Fusion。
-
将Azure DevOps模块添加到您的方案。
-
单击连接字段旁边的添加。
-
在连接类型字段中,选择要使用的连接类型。
note NOTE Azure DevOps (EntraApp)允许您请求连接的所有作用域。 -
填写以下字段:
table 0-row-2 1-row-2 2-row-2 3-row-2 4-row-2 layout-auto html-authored no-header 连接名称 输入正在创建的连接的名称。 组织 输入您创建了Azure DevOps应用程序的组织的名称。 应用程序ID 输入要连接的DevOps应用程序的ID。 客户端密钥 为要连接的DevOps应用程序输入客户端密码。 请求所有作用域 如果您使用Azure DevOps (EntraApp)连接类型,请启用此选项以请求连接的所有作用域。 -
要输入Azure DevOps应用程序ID或客户端密钥,请单击显示高级设置,然后在打开的字段中输入它们。
-
单击 继续 完成连接设置并继续创建方案。
使用服务主体将Azure DevOps连接到Workfront Fusion
您可以创建使用服务主体(应用程序API连接)而不是个人帐户的连接。 当您希望连接作为应用程序或服务标识而不是作为特定人员运行时,这将很有用。 例如,如果某人离开公司或更改密码,则集成不会中断,这可能会很有用。
此连接类型适用于所有Azure DevOps模块。
| note |
|---|
| NOTE |
| 服务主体身份验证不支持每个Azure DevOps功能。 少数管理员级别的操作(如管理用户许可证)仍需要个人帐户连接。 如果仅对工作项、展示板、存储库或管道需要此身份验证,请使用服务主体身份验证。 |
- 使用服务主体将Azure DevOps连接到Workfront Fusion的先决条件
- 在Microsoft Entra ID中创建应用程序注册
- 创建客户端密码
- 收集您的连接详细信息
- 将服务主体添加到您的Azure DevOps组织
- 创建连接
使用服务主体将Azure DevOps连接到Workfront Fusion的先决条件
要创建此连接,您需要满足以下条件:
- 在Microsoft Entra ID中 全局管理员 或 应用程序管理员 访问权限,以注册应用程序。 如果您没有此访问权限,请让您的IT或身份团队中的某人为您完成该步骤。
- 在您的Azure DevOps组织中 项目集合管理员 访问权限,以将服务主体添加为成员。 此人通常与管理Microsoft Entra ID的人不同。
- Azure DevOps组织的名称。 您可以在Azure DevOps URL中找到此项:
dev.azure.com/<your organization name>。
在Microsoft Entra ID(服务主体)中创建应用程序注册
- 登录到Microsoft Entra管理中心。
- 转到应用注册 > 新注册。
- 为应用程序提供一个清晰且可识别的名称。 例如:
Workfront Fusion Azure DevOps Integration。 - 将 重定向URI 保留为空。 此连接不涉及通过浏览器登录。
- 选择注册。
- 继续创建客户端密钥。
创建客户端密码
- 在新应用注册中,转到证书和密钥。
- 选择新客户端密钥,添加说明,并选择有效期。
- 选择添加。
- 立即复制密码的值。 它只显示一次。 如果您在复制它之前导航离开,则必须创建一个新路径。
- 继续收集您的连接详细信息。
收集您的连接详细信息(服务主体)
-
在应用程序注册的 概述 页面中,注意以下值。 在模块中创建连接时输入这些参数。
table 0-row-2 1-row-2 2-row-2 3-row-2 layout-auto html-authored no-header 租户ID 在概述页面上,标记为目录(租户) ID。 客户端 ID 在概述页面上,标记为应用程序(客户端) ID。 客户端密钥 您在中创建客户端密钥中复制的值。 组织 您的Azure DevOps组织名称。 例如,如果URL是 dev.azure.com/yourorg,请输入yourorg。note NOTE 您可以跳过应用程序注册的 API权限 区域。 如果在此处添加Azure DevOps,则只有 委派权限 可用。 应用程序权限显示为灰色。 这是正常情况,因为Azure DevOps不支持以这种方式授予访问权限。 相反,在下一部分中,访问权限将直接在Azure DevOps中授予。
将服务主体添加到您的Azure DevOps组织
在Microsoft Entra ID中注册应用程序只会创建其标识。 它尚未授予应用程序访问Azure DevOps数据的任何权限。 此过程授予该访问权限。
-
登录到Azure DevOps组织,网址为
dev.azure.com/<your organization name>。 -
选择左下角的组织设置,然后选择用户。
-
选择添加用户。
-
在搜索框中,按应用程序的显示名称(您在注册应用程序时为其提供的名称)进行搜索。 请勿按客户端ID进行搜索。
-
选择访问级别:
- Basic通常足以读写工作项、展示板和存储库。
- 如果您的工作流需要在设置过程中浏览可用进程,例如Agile、Scrum或自定义模板,请改为将服务主体添加到 项目集合管理员 组。 这是更高级别的访问权限,因此仅在您需要此功能时才授予此访问权限。
-
按照贵组织的常规访问惯例,将服务主体分配给所需的一个或多个特定项目。
-
选择添加。
在Workfront Fusion(服务主体)中创建连接
-
在模块的连接设置屏幕中,选择 服务主体 连接类型。
-
输入以下内容:
- 租户ID
- 客户端ID
- 客户端密码
- 组织
-
保存连接。
如果一切设置正确,连接验证成功。
Azure DevOps模块及其字段
在您配置 Azure DevOps 模块时,Workfront Fusion 会显示以下字段。 除这些字段外,根据您的应用程序或服务访问权限级别,可能会显示更多 Azure DevOps 字段。 模块中的加粗标题表示必填字段。
如果您看到字段或功能上方的映射按钮,可使用它为该字段设置变量和函数。 有关详细信息,请参阅将信息从一个模块映射到另一个模块。
触发器
关注工作项
此即时触发器模块在Azure DevOps中添加、更新或删除记录时执行方案。
该模块会返回与记录关联的所有标准字段,以及连接可访问的任何自定义字段及其值。 您可以在场景后续的模块中映射这些信息。
在配置此模块时,会显示以下字段。
操作
创建记录
此操作模块创建新项目或工作项。
模块输出新创建的工作项的对象ID,或新创建项目的URL和状态代码。
自定义 API 调用
此操作模块允许您向 Azure DevOps API 发起自定义的已经过身份认证的调用。 通过这种方式,您可以构建其他 Azure DevOps 模块无法实现的数据流自动化。
在配置此模块时,会显示以下字段。
下载附件
此操作模块下载附件。
模块将返回附件的文件内容。
链接工作项
此操作模块链接两个工作项并定义它们之间的关系。
读取记录
此操作模块从Azure DevOps中的单个记录读取数据。
您需要指定记录的 ID。
该模块会返回记录的 ID 及其关联字段,以及连接可访问的任何自定义字段及其值。 您可以在场景后续的模块中映射这些信息。
在配置此模块时,会显示以下字段。
更新工作项
该操作模块使用其ID更新现有工作项。
模块返回已更新工作项的ID。
上载附件
此操作模块上传文件并将其附加到工作项。
模块会返回附件的附件ID和下载URL。
搜索
列出工作项
此操作模块检索Azure DevOps项目中特定类型的所有工作项。
模块返回主工作项和任何关联字段的ID,以及连接访问的任何自定义字段和值。 您可以在场景后续的模块中映射这些信息。
在配置此模块时,会显示以下字段。