Azure 中的服务连接有何用途?

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

我看到服务连接是Azure Pipelines和Azure Subscription之间的链接,用于触发Pipelines。 但是我可以创建一个服务连接并获取客户端 ID 和密钥并使用它来获取访问令牌吗?有了该访问令牌,我可以通过带有 REST API 的 C# 代码运行 Azure Pipeline 吗? 这就是服务连接的用途吗?

azure-devops azure-pipelines
1个回答
0
投票

但是我可以创建一个服务连接并获取客户端 ID 和秘密吗? 用它来获取访问令牌。

您可以通过此生成令牌,但不能在 C# 代码中使用它来运行管道。

“Azure Pipelines 和 Azure 订阅”之间的服务连接仅供您在 AAD 中创建应用程序,这还将在 Azure 门户端创建相关的企业应用程序(服务主体)。

可以在 Azure 门户中为服务主体分配访问资源的权限。一旦服务主体有权访问 Azure 门户上的资源,使用与服务主体关联的服务连接的 DevOps 管道也将具有相同的访问权限。

上面服务连接设计的初衷是为了让管道能够访问到入口处的资源。

为什么我们不能使用应用程序的 clientid 和 Secret 来获取访问令牌来运行管道?

这个官方文档说得很清楚:

https://learn.microsoft.com/en-us/azure/devops/integrate/get-started/authentication/authentication-guidance?view=azure-devops

Azure DevOps API 不支持非交互式服务访问 通过服务主体。

enter image description here

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