首页 > 解决方案 > PAT(个人访问令牌)的每个项目或每个回购范围

问题描述

Azure DevOps (PAT) 中的个人访问令牌是否可以按项目或 git-Repo 限定范围?有什么好的选择吗?

我们有一些共享的(内部)开发/测试 VM,其中多个开发人员偶尔使用 git(例如 VS Code),每个都有自己的 PAT。

由于这些开发人员可能会访问不同的项目,因此我们希望确保丢失注销(由于存储的 git-credentials)的影响尽可能小。

Azure DevOps Web UI 不允许每个项目或 git-repo 的范围 PAT,但我想知道是否有任何其他选项,例如通过 API 或 CLI 或这种方法的一些替代方案。基本上,我希望 PAT 范围尽可能窄。也没有找到任何相关的功能请求。

标签: gitazure-devops

解决方案


我想知道是否有任何其他选项,例如通过 API 或 CLI 或这种方法的一些替代方案。基本上,我希望 PAT 范围尽可能窄。

你说的对。如果您想使用 API 或任何其他工具来实现这一点,我很遗憾地说这现在是不可能的。生成 PAT 时页面的 UI 是设置 PAT 范围的独特方式。对于 api,到目前为止,它只支持List而不是createput或任何其他操作方法。

但是,如果你在权限设置页面限制访问,即使给这个账户Token完全访问权限,PAT Token仍然无法对UI中被限制的相关内容进行操作。

因此,作为解决方法,我建议您可以限制对页面中每个项目或 git-repo 的访问,以实现您想要的。例如,如果您想限制项目访问权限,您可以在组织设置的用户选项卡中进行更改。

在此处输入图像描述

此时,即使令牌的范围是完全访问,使用该令牌的用户仍然无法访问不允许访问的项目。

但是,这仍然是不利的。如果您只是不希望此令牌用于操作某些特殊项目/存储库,而不是不允许此用户访问 UI 中的特殊项目/存储库,则此解决方法对您不起作用。

我认为你想要的需求是合适的,你可以在我们的微软开发者社区提出你的建议。希望您能提出更多建议来帮助构建更好的 Azure Devops。


推荐阅读