【问题标题】:Azure DevOps: Moving packages between organizations using the REST APIAzure DevOps:使用 REST API 在组织之间移动包
【发布时间】:2019-01-02 21:11:35
【问题描述】:

在我们的 Azure DevOps 实施中,我们需要在不同组织中的包管理源之间移动包。我们当前的实现使用 2 个个人访问令牌 (PAT),一个对源组织的 Feed 具有读取权限,另一个对目标组织的 Feed 具有写入权限。此解决方案适用于我们当前的需求,但由于使用 PAT 需要进行维护,我们正在探索替代实现。

我们目前正在研究的一个途径是使用SYSTEM_ACCESSTOKEN,如https://docs.microsoft.com/en-us/azure/devops/pipelines/scripts/powershell?view=vsts#oauth 所述,以及其他地方。我们在在同一组织内运行的其他管道中使用此令牌,它按预期工作。在某些情况下,我们必须将“Project Collection Build Service ({org-name})”用户添加到适当的安全组中才能访问所需的功能。

执行迁移的管道位于目标组织中。我假设如果我们在 powershell 中使用SYSTEM_ACCESSTOKEN,那么它将在“项目集合构建服务({destination-org-name})”的凭据下运行,在这种情况下它可能不会访问源组织中的提要。这是一个正确的假设吗?如果是这样,有没有办法以某种方式获取源组织的 OAuth 令牌?

如果无法获取源组织的 OAuth 令牌,是否有其他方法可以在其他组织中的 Feed 之间移动包?我们当前的实现是实现这一目标的唯一方法吗?

【问题讨论】:

    标签: azure-devops


    【解决方案1】:

    经过一些测试,我的假设被证明是正确的;一个组织的 OAuth 令牌无权访问另一个组织。似乎也没有办法为其他组织获取 OAuth 令牌,这不足为奇,因为这将是一个巨大的安全漏洞!

    我认为除了使用 PAT 之外,没有其他方法可以完成我们需要的工作。希望其他人会发现这很有用。

    【讨论】:

      猜你喜欢
      • 2020-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-02
      • 2019-05-05
      • 1970-01-01
      • 2022-07-17
      • 2022-08-19
      相关资源
      最近更新 更多