如何使用 Azure 数据工厂管道来连接 ADO REST API 连接

问题描述 投票:0回答:1

如何使用 Azure 数据工厂管道链接服务和数据集来连接 ADO REST API 连接。

我正在尝试使用 azure 数据工厂创建用于 REST 连接的数据集,无法预览数据,出现“Rest call failed with client error”错误,状态代码 401 未经授权,请检查您的活动设置。

rest azure-pipelines azure-data-factory azure-devops-rest-api linked-service
1个回答
0
投票

在 ADF 管道中,您可以使用 Web 活动调用 Azure DevOps REST API。 “401 Unauthorized”错误应该是由于您为请求提供了无效的身份验证凭据而导致的。


如果您要通过 REST API 访问的 Azure DevOps 组织已连接到 AAD (Microsoft Entra) 租户,建议选择“

Service Principal
”或“
Managed Identity
”作为身份验证方法Web
 活动的 
Settings

以下是使用“

Service Principal
”作为身份验证的步骤:

  1. AAD (Microsoft Entra) 租户的先决条件。

    • 转到 Microsoft Entra ID > 应用程序注册,在租户中创建服务主体(如果您没有服务主体)。

    • 打开服务主体,如果没有现有的有效客户端密钥,请转至 证书和密钥 > 客户端密钥选项卡为服务主体创建客户端密钥。复制并记住客户端密钥的值,因为刷新/重新打开页面后,该值将被屏蔽为密钥 (

      ******
      )。您可以将其作为机密存储在 Azure Key Vault 中。

  2. Azure DevOps 组织的先决条件。

    • 转到 组织设置 > Microsoft Entra,确保组织已连接到服务主体所在的 AAD 租户。

    • 转到 组织设置 > 用户,搜索服务主体并将其作为用户添加到组织中。

    • 成功将服务主体添加到组织中后,将其添加到安全组中,以便您可以通过控制组织中该组的权限来管理服务主体的权限。

  3. 在 ADF 管道中,在 Web

     活动的 
    Settings 选项卡上,您可以如下图所示进行设置。

  • 租户: 租户的 ID (
    Directory (tenant) ID
    )。
  • 服务主体 ID: 服务主体的 ID (
    Application (client) ID
    )。
  • 服务主体密钥:上面为服务主体生成的客户端密钥的值。如果您已将值作为机密存储在 Azure Key Vault 中,则可以从 Azure Key Vault 加载该值。
  • 资源:专门针对 Azure DevOps 资源的范围。该值是固定的(
    499b84ac-1321-427f-aa17-267ca6975798
    )。

如果 Azure DevOps 组织未连接到任何租户,您可以在 Web

 活动的 
Basic
 上设置“
Settings”作为身份验证方法。

  • Username:
    有权访问 Azure DevOps 组织的用户的用户名。确保用户拥有访问 Azure DevOps 组织中所需资源的必要权限。
  • Password:
    在 Azure DevOps 中生成的用户的 PAT(个人访问令牌)。确保 PAT 具有必要的范围来访问 Azure DevOps 组织中所需的资源。

© www.soinside.com 2019 - 2024. All rights reserved.