项目范围的源
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
创建新的 Azure Artifacts 源时,可以选择根据需求将源范围限定为项目或组织。 默认情况下,通过 Web 界面创建的源是项目范围的。
创建新源
按照这些说明选择适当的范围,以便创建项目范围或组织范围的源。
选择“项目”,然后选择“创建源”。
为源提供 名称 并选择其 可见性。 如果要包含公共注册表中的包,请选择 上游源 。
如果要创建项目范围的源,请选择 “项目 ”,否则请选择“ 组织”。
完成操作后,选择“创建”。
注意
组织范围的源不能转换为项目范围的源。
项目范围内与组织范围内源
对于项目范围内的源,其范围限定为项目而不是组织。 下面是两种类型的源之间的主要区别:
可见性:
- 项目范围的源继承项目的可见性。
- 默认情况下,组织范围的源始终是专用的。
链接:
项目范围的源的 URL 包括项目。
- 示例:
https://pkgs.dev.azure.com/<ORG_NAME>/<PROJECT_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json
- 示例:
组织范围的源的 URL 不包括项目。
- 示例:
https://pkgs.dev.azure.com/<ORG_NAME>/_packaging/<FEED_NAME>/nuget/v3/index.json
- 示例:
用户界面:
- 所有组织范围的源都可以从源的下拉菜单获取。 若要在源列表中查看项目范围的源,必须导航到托管该源的项目。
Connection:
- 从同一组织中但位于不同项目中的 Azure Pipelines 管道连接到专用项目范围的源时,该源的范围限定为的项目必须允许访问其他项目的生成服务。 无论源的范围如何,生成服务也必须单独添加到源权限中。 有关详细信息,请参阅 包权限。
注意
若要将来自其他组织的源添加为上游源,目标源所有者必须通过导航到“源设置>视图”选择指定视图“编辑右侧的省略号按钮,与我Microsoft Entra 租户关联的组织中所有源和人员共享目标视图>>。
安全策略
如果要将额外的安全性层添加到项目范围的源,并保护源的可见性,则可以禁用 “允许公共项目 ”策略,从 组织策略设置。
或者,可以使用 “创建源 API ”手动创建新的组织范围的源。 必须使用源权限 API 或项目源设置手动设置新源的默认权限。
重要
如果用户有权访问特定视图,并且他们无权访问源,他们仍然可以通过该视图访问和下载包。
如果要完全隐藏包,则必须限制对源和视图的访问。 有关详细信息,请参阅 源和视图权限。
问答
问:如何与组织中的所有用户共享包?
答:如果要使源中的某些包可供组织中的所有用户使用,请创建或选择 包含要共享的包的视图 ,并确保其可见性设置为 “我的组织中的人员”。
问:如何使用 Azure Pipelines 访问另一个项目范围内的源?
为了使管道能够访问不同项目中的项目范围的源,必须向管道授予对源范围和源本身的项目的访问权限。
项目设置:导航到托管源的项目,选择“项目设置>权限”,然后将管道的项目生成服务添加到“参与者”组或任何其他提供参与者访问权限的相应组。
源设置:导航到要访问的源,选择“设置源”>权限,然后将项目生成服务添加为源和上游读取者(协作者)。 项目 生成服务 标识以以下格式显示:
[Project name] Build Service ([Organization name])
(例如 FabrikamFiber 生成服务(代码共享-演示)。
问:我想从另一个项目下载管道项目,但管道失败?
答:如果要从同一组织中的另一个项目下载管道项目,请确保为下游项目和生成项目的管道设置以下权限:
在生成项目(下游项目)的管道上,选择省略号以获取更多选项:管理上游项目的生成服务的安全>搜索,并允许以下操作>:更新生成信息、查看生成管道和查看生成。
在下游项目中:项目设置>权限>用户>搜索上游项目的名称,然后选择“展开搜索>”选择上游项目的生成服务,并允许以下操作:查看项目级信息。