
# CodeArts Artifact权限配置最佳实践
#### 方案概述
制品仓库（CodeArts Artifact）分为软件发布库和私有依赖库两种类型的仓库。软件发布库提供了项目级的权限管理，私有依赖库提供项目级的权限管理与仓库级的权限管理，详情可参考[配置软件发布库权限](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0006.html)和[配置私有依赖库权限](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0047.html)。
本文以**私有依赖库权限管理** 为例，介绍在**私有依赖库** 内快速管理权限的方式，实现对单*个*仓库进行单独权限管理，以及按照项目维度进行权限管理。
#### 约束与限制
- 创建的[自定义角色](https://support.huaweicloud.com/usermanual-devcloud/codearts_01_0061.html#section2)在CodeArts Artifact无预置权限，可以联系项目管理者配置角色类型及对应资源的相应操作权限。
- 项目管理者、项目经理、测试经理默认具有"权限配置"的权限，可以配置其他成员角色在私有依赖库的操作权限。其他角色之前如有"权限配置"权限，可以继续在私有依赖库内给其他角色配置权限。
 
#### 前提条件
- 已[开通并授权使用CodeArts Artifact](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_bill_9000.html)。
- 已[新建CodeArts项目](https://support.huaweicloud.com/usermanual-devcloud/codearts_01_0027.html)，选择"Scrum"模板，命名为"Scrum"。
- 已将用户加入CodeArts项目"Scrum"使其成为项目成员，并为其配置角色，具体操作请参见[添加CodeArts项目成员](https://support.huaweicloud.com/usermanual-devcloud/devcloud_01_0025.html)。
- 需要具有"权限配置"操作权限（项目管理员、项目经理、测试经理角色默认具有）才可配置其他成员角色在私有依赖库的操作权限。
- 在项目名为"Scrum"的项目中，已创建名称为"pypi_test"的私有依赖库，具体操作请参见[创建私有依赖库](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0008.html)。
 
 #### 配置私有依赖库项目级权限
制品仓库服务支持在项目下统一配置项目各角色对当前项目下私有依赖库的默认操作权限（可参考[配置私有依赖库项目级权限]）。
1. 具有"权限配置"权限的用户[访问CodeArts Artifact的私有依赖库](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0007.html#cloudartifact_01_0007__section1789618380209)。
2. 选择"私有依赖库"页签，页面展示服务下已创建的所有私有依赖库，如下图所示。 
   ![](https://support.huaweicloud.com/bestpractice-cloudartifact/zh-cn_image_0000002512517041.png "点击放大")
   
   
   
3. 在私有依赖库列表中，单击仓库名称"pypi_test"跳转到该仓库所在项目的私有依赖库详情页面，如下图所示。 
   ![](https://support.huaweicloud.com/bestpractice-cloudartifact/zh-cn_image_0000002512397069.png "点击放大")
   
   
   
4. 在左侧导航栏选择"设置 \> 权限管理"，进入项目权限管理页面。可通过以下两种方式进行项目级权限配置。 
   - 方式一：在"角色"列表中单击需要配置权限的角色，在右侧服务权限列表中选择"制品仓库"，然后单击页面底部"编辑"进入权限编辑状态，根据需要勾选或取消勾选相应权限，单击"保存"，完成权限配置。 ![](https://support.huaweicloud.com/bestpractice-cloudartifact/zh-cn_image_0000002480397162.png "点击放大")
     
     
   
   - 方式二：在页面顶部"权限模板"下拉框中选择要应用的模板（权限模板的创建和管理方法请参见[管理CodeArts项目权限模板](https://support.huaweicloud.com/usermanual-devcloud/codearts_01_0062.html#section3)），在弹框中单击"确定"，即可复用权限模板中的模板进行一键配置权限，如下图所示。**使用权限模板后项目中同名角色的权限将被模板权限覆盖，无法复原，请谨慎操作** 。
     ![](https://support.huaweicloud.com/bestpractice-cloudartifact/zh-cn_image_0000002480237184.png "点击放大")
     
     
   
   
   
   
 
#### 配置私有依赖库仓库级权限
制品仓库服务除了支持在项目下统一配置项目各角色对当前项目下私有依赖库的默认操作权限（可参考[配置私有依赖库项目级权限]）外，也支持单独配置对应私有依赖库的仓库权限（需要用户具有私有库"编辑仓库"的权限）。
- 新建成功的私有依赖库默认对接项目下"设置 \> 权限管理"的角色权限，即通过[私有依赖库项目级权限配置]修改后的角色权限，会同步到私有依赖库的仓库权限。
- 当用户没有在对应私有库下修改相关角色的仓库权限，通过[私有依赖库项目级权限配置]修改该角色的权限会同步到对应私有依赖库的仓库权限。
- 当用户在对应私有库下修改了相关角色的仓库权限，通过[私有依赖库项目级权限配置]修改该角色的权限将不会同步到对应私有依赖库的仓库权限，请在仓库下进行后续该角色的权限修改。
1. [访问CodeArts Artifact的私有依赖库](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0007.html#cloudartifact_01_0007__section1789618380209)。
2. 在仓库列表中选择目标仓库。 
   ![](https://support.huaweicloud.com/bestpractice-cloudartifact/zh-cn_image_0000002480397160.png "点击放大")
   
   
   
3. 在页面右侧单击"设置仓库"。 
   ![](https://support.huaweicloud.com/bestpractice-cloudartifact/zh-cn_image_0000002480237178.png "点击放大")
   
   
   
4. 选择"仓库权限"页签，当前项目下的角色显示在页面中。 
   ![](https://support.huaweicloud.com/bestpractice-cloudartifact/zh-cn_image_0000002480397148.png "点击放大")
   
   
   
5. 在角色列表中，单击需要修改权限的角色，勾选或取消勾选相关权限。 
   - 新建成功的私有依赖库默认对接项目下"设置 \> 权限管理"的角色权限，即通过[私有依赖库项目级权限配置](https://support.huaweicloud.com/bestpractice-cloudartifact/cloudartifact_06_0014.html#cloudartifact_06_0014__zh-cn_topic_0000002316748585_section10337153616288)修改后的角色权限，会同步到私有依赖库的仓库权限。
   
   - 当用户没有在对应私有库下修改相关角色的仓库权限，通过[私有依赖库项目级权限配置](https://support.huaweicloud.com/bestpractice-cloudartifact/cloudartifact_06_0014.html#cloudartifact_06_0014__zh-cn_topic_0000002316748585_section10337153616288)修改该角色的权限会同步到对应私有依赖库的仓库权限。
   
   - 当用户在对应私有库下修改了相关角色的仓库权限，通过[私有依赖库项目级权限配置](https://support.huaweicloud.com/bestpractice-cloudartifact/cloudartifact_06_0014.html#cloudartifact_06_0014__zh-cn_topic_0000002316748585_section10337153616288)修改该角色的权限将不会同步到对应私有依赖库的仓库权限，请在仓库下进行后续该角色的权限修改。
   
   
   
   
6. 单击"保存"，私有依赖库仓库级权限配置完成。 
   项目中各成员角色[访问CodeArts Artifact的私有依赖库](https://support.huaweicloud.com/usermanual-cloudartifact/cloudartifact_01_0007.html#cloudartifact_01_0007__section1789618380209)，即可在私有依赖库进行已拥有权限的相应操作。
   
   
 
