Hen*_*ler 3 devops azure-devops
现在我的 NuGet 还原失败,因为项目构建用户没有对包源的贡献者访问权限。
/usr/share/dotnet/sdk/3.0.100/NuGet.targets(123,5): 错误:无法加载源 pkgs.dev.azure.com[..]index.json 的服务索引。/usr/share/dotnet/sdk/3.0.100/NuGet.targets(123,5): 错误 : 响应状态代码未表示成功:403(禁止 - 用户“xxxxxxx”缺乏完成此操作的权限。您需要有“阅读包”。
解决方案是将构建授权范围从当前项目更改为项目集合。这似乎非常可行,如下所示:
https://docs.microsoft.com/en-us/azure/devops/pipelines/build/options?view=azure-devops
但是,在 DevOps 的无数菜单中,可以在哪里设置此范围?
所有答案都是有效的,但这取决于情况。
请考虑到仅允许贡献者和所有者角色推送包, 请阅读此处的文档。
然后还要记住Scoped 构建标识。
Azure DevOps 使用两个内置标识来执行管道。
- 集合范围的标识,可以访问集合中的所有项目(或 Azure DevOps Services 的组织)
- 项目范围的身份,可以访问单个项目
...
默认情况下,使用集合范围的标识,除非在项目设置 > 设置中设置了将作业授权范围限制为当前项目。
考虑到这一点,请执行以下步骤:
对我来说是项目范围的身份
再次记住您需要使用所有者或贡献者角色。
几个小时前发布的这个 403 错误有一个解决方法:https : //developercommunity.visualstudio.com/content/problem/795493/403-error-during-nuget-restore.html
简而言之,这似乎会影响连接到私有源的新项目。这是建议的解决方法:
在构建失败的项目中单击“Artifacts”
选择您在构建中尝试使用的提要,然后单击右上角的齿轮
点击“饲料设置”
转到权限选项卡
单击选项卡右侧出现的 3 个点 [...]
单击“允许项目范围的构建”
这添加了 OP 发布的错误所抱怨的相关用户权限。希望微软能尽快对此做出适当的修复。
完全归功于来自开发者社区页面的 Tim Lynch。
归档时间: |
|
查看次数: |
3607 次 |
最近记录: |