企业仓库策略
操作场景
如果系统预置的企业仓库权限不满足您的授权要求,可以创建策略。策略中可以添加的授权项(Action)请参考表1。
目前华为云支持以下两种方式创建策略:
- 可视化视图创建策略:无需了解策略语法,按可视化视图导航栏选择云服务、操作、资源、条件等策略内容,可自动生成策略。
- JSON视图创建策略:可以在选择策略模板后,根据具体需求编辑策略内容;也可以直接在编辑框内编写JSON格式的策略内容。
具体创建步骤请参见:创建策略。本章为您介绍常用的企业仓库策略样例。
企业仓库策略样例
- 示例1:用户可以创建、更新、查看、删除命名空间。
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "swr:repository:getNamespace", "swr:repository:listNamespaces", "swr:repository:createNamespace", "swr:repository:updateNamespace", "swr:repository:deleteNamespace" ] } ] }
- 示例2:
拒绝策略需要同时配合其他策略使用,否则没有实际作用。用户被授予的策略中,一个授权项的作用如果同时存在Allow和Deny,则遵循Deny优先原则。
如果您给用户授予SWR FullAccess的系统策略,但不希望用户拥有SWR FullAccess中定义的删除仓库权限,您可以创建一条拒绝删除仓库的策略,然后同时将SWR FullAccess和拒绝策略授予用户,根据Deny优先原则,则用户可以对企业仓库执行除了删除仓库外的所有操作。拒绝策略示例如下:
{ "Version": "1.1", "Statement": [ { "Effect": "Deny", "Action": [ "swr:instance:delete" ] } ] }
企业仓库操作与系统策略关系
操作 |
Action名称 |
SWR FullAccess |
SWR OperateAccess |
SWR ReadOnlyAccess |
---|---|---|---|---|
授予查询制品列表的权限 |
swr:repository:listArtifacts |
√ |
√ |
√ |
授予查询制品详情的权限 |
swr:repository:getArtifact |
√ |
√ |
√ |
授予删除制品的权限 |
swr:repository:deleteArtifact |
√ |
√ |
× |
授予查询制品附件列表的权限 |
swr:repository:listAccessories |
√ |
√ |
√ |
授予查询制品附加信息的权限 |
swr:repository:getArtifactAddition |
√ |
√ |
√ |
授予查询企业版实例策略的权限 |
swr:instance:getPolicy |
√ |
√ |
√ |
授予更新企业版实例策略的权限 |
swr:instance:updatePolicy |
√ |
× |
× |
授予查询企业版实例配置的权限 |
swr:instance:getConfigurations |
√ |
√ |
√ |
授予更新企业版实例配置的权限 |
swr:instance:updateConfigurations |
√ |
× |
× |
授予授予查询资源实例列表的权限 |
swr:instance:listResourceInstances |
√ |
√ |
√ |
授予授予查询资源实例数量的权限 |
swr:instance:getResourceInstancesCount |
√ |
√ |
√ |
授予批量创建资源标签的权限 |
swr:instance:createResourceTags |
√ |
× |
× |
授予批量删除资源标签的权限 |
swr:instance:deleteResourceTags |
√ |
× |
× |
授予查询项目标签的权限 |
swr:instance:getProjectTags |
√ |
√ |
√ |
授予查询资源标签的权限 |
swr:instance:getResourceTags |
√ |
√ |
√ |
授予创建企业版实例的权限 |
swr:instance:create |
√ |
× |
× |
授予查询企业版实例列表信息的权限 |
swr:instance:list |
√ |
√ |
√ |
授予查询企业版实例信息的权限 |
swr:instance:get |
√ |
√ |
√ |
授予删除企业版实例的权限 |
swr:instance:delete |
√ |
× |
× |
授予查询企业版实例审计日志的权限 |
swr:instance:getAuditLogs |
√ |
√ |
√ |
授予查询企业版实例统计信息的权限 |
swr:instance:getStatistics |
√ |
√ |
√ |
授予查询任务列表的权限 |
swr:instance:listJobs |
√ |
√ |
√ |
授予查询任务详情的权限 |
swr:instance:getJobs |
√ |
√ |
√ |
授予删除任务的权限 |
swr:instance:deleteJob |
√ |
× |
× |
授予创建命名空间的权限 |
swr:repository:createNamespace |
√ |
√ |
× |
授予查询命名空间列表的权限 |
swr:repository:listNamespaces |
√ |
√ |
√ |
授予查询命名空间详情的权限 |
swr:repository:getNamespace |
√ |
√ |
√ |
授予修改命名空间的权限 |
swr:repository:updateNamespace |
√ |
√ |
× |
授予删除命名空间的权限 |
swr:repository:deleteNamespace |
√ |
√ |
× |
授予获取制品仓库列表的权限 |
swr:repository:listRepositories |
√ |
√ |
√ |
授予获取制品仓库详情的权限 |
swr:repository:getRepository |
√ |
√ |
√ |
授予修改制品仓库配置的权限 |
swr:repository:updateRepository |
√ |
√ |
× |
授予删除制品仓库的权限 |
swr:repository:deleteRepository |
√ |
√ |
× |
授予查询制品版本列表的权限 |
swr:repository:listTags |
√ |
√ |
√ |
授予查询制品版本详情的权限 |
swr:repository:getTag |
√ |
√ |
√ |
授予删除制品版本的权限 |
swr:repository:deleteTag |
√ |
√ |
× |
授予查询制品版本附加信息的权限 |
swr:repository:getTagAddition |
√ |
√ |
√ |
授予创建版本清理策略的权限 |
swr:repository:createRetentionPolicy |
√ |
√ |
× |
授予查询版本清理策略列表的权限 |
swr:repository:listRetentionPolicies |
√ |
√ |
√ |
授予查询版本清理策略详情的权限 |
swr:repository:getRetentionPolicy |
√ |
√ |
√ |
授予修改版本清理策略配置的权限 |
swr:repository:updateRetentionPolicy |
√ |
√ |
× |
授予删除版本清理策略的权限 |
swr:repository:deleteRetentionPolicy |
√ |
√ |
× |
授予应用版本清理策略的权限 |
swr:repository:executeRetentionPolicy |
√ |
√ |
× |
授予获取版本清理执行记录列表的权限 |
swr:repository:listRetentionPolicyExecutions |
√ |
√ |
√ |
授予获取版本清理任务列表的权限 |
swr:repository:listRetentionPolicyExecTasks |
√ |
√ |
√ |
授予获取版本清理子任务列表的权限 |
swr:repository:listRetentionPolicyExecSubTasks |
√ |
√ |
√ |
授予创建触发器的权限 |
swr:repository:createWebhook |
√ |
√ |
× |
授予查询触发器列表的权限 |
swr:repository:listWebhooks |
√ |
√ |
√ |
授予查询触发器详情的权限 |
swr:repository:getWebhook |
√ |
√ |
√ |
授予修改触发器配置的权限 |
swr:repository:updateWebhook |
√ |
√ |
× |
授予删除触发器的权限 |
swr:repository:deleteWebhook |
√ |
√ |
× |
授予获取触发器执行记录列表的权限 |
swr:repository:listWebhookJobs |
√ |
√ |
√ |
授予创建目标仓库的权限 |
swr:instance:createRegistry |
√ |
× |
× |
授予获取目标仓库列表的权限 |
swr:instance:listRegistries |
√ |
√ |
√ |
授予获取目标仓库详情的权限 |
swr:instance:getRegistry |
√ |
√ |
√ |
授予修改目标仓库配置的权限 |
swr:instance:updateRegistry |
√ |
× |
× |
授予删除目标仓库的权限 |
swr:instance:deleteRegistry |
√ |
× |
× |
授予创建复制策略的权限 |
swr:instance:createReplicationPolicy |
√ |
× |
× |
授予查询复制策略列表的权限 |
swr:instance:listReplicationPolicies |
√ |
√ |
√ |
授予查询复制策略详情的权限 |
swr:instance:getReplicationPolicy |
√ |
√ |
√ |
授予修改复制策略的权限 |
swr:instance:updateReplicationPolicy |
√ |
× |
× |
授予删除复制策略的权限 |
swr:instance:deleteReplicationPolicy |
√ |
× |
× |
授予应用复制策略的权限 |
swr:instance:executeReplicationPolicy |
√ |
√ |
× |
授予停止复制任务的权限 |
swr:instance:stopReplicationPolicyExecution |
√ |
× |
× |
授予查询复制记录列表的权限 |
swr:instance:listReplicationPolicyExecutions |
√ |
√ |
√ |
授予查询复制任务列表的权限 |
swr:instance:listReplicationPolicyExecTasks |
√ |
√ |
√ |
授予查询复制子任务列表的权限 |
swr:instance:listReplicationPolicyExecSubTasks |
√ |
√ |
√ |
授予创建签名策略的权限 |
swr:repository:createSignPolicy |
√ |
√ |
× |
授予查询签名策略列表的权限 |
swr:repository:listSignPolicies |
√ |
√ |
√ |
授予查询签名策略详情的权限 |
swr:repository:getSignPolicy |
√ |
√ |
√ |
授予修改签名策略的权限 |
swr:repository:updateSignPolicy |
√ |
√ |
× |
授予删除签名策略的权限 |
swr:repository:deleteSignPolicy |
√ |
√ |
× |
授予执行签名策略的权限 |
swr:repository:executeSignPolicy |
√ |
√ |
× |
授予查询签名执行记录列表的权限 |
swr:repository:listSignPolicyExecutions |
√ |
√ |
√ |
授予查询签名任务列表的权限 |
swr:repository:listSignPolicyExecTasks |
√ |
√ |
√ |
授予查询签名策略执行记录子任务列表的权限 |
swr:repository:listSignPolicyExecSubTasks |
√ |
√ |
√ |
授予创建扫描策略的权限 |
swr:repository:createScanPolicy |
√ |
√ |
× |
授予查询扫描策略列表的权限 |
swr:repository:listScanPolicies |
√ |
√ |
√ |
授予查询扫描策略详情的权限 |
swr:repository:getScanPolicy |
√ |
√ |
√ |
授予修改扫描策略的权限 |
swr:repository:updateScanPolicy |
√ |
√ |
× |
授予删除扫描策略的权限 |
swr:repository:deleteScanPolicy |
√ |
√ |
× |
授予执行扫描策略的权限 |
swr:repository:executeScanPolicy |
√ |
√ |
× |
授予查询扫描执行记录列表的权限 |
swr:repository:listScanPolicyExecutions |
√ |
√ |
√ |
授予查询扫描任务列表的权限 |
swr:repository:listScanPolicyExecTasks |
√ |
√ |
√ |
授予创建阻断策略的权限 |
swr:repository:createBlockPolicy |
√ |
√ |
× |
授予查询阻断策略列表的权限 |
swr:repository:listBlockPolicies |
√ |
√ |
√ |
授予查询阻断策略详情的权限 |
swr:repository:getBlockPolicy |
√ |
√ |
√ |
授予修改阻断策略配置的权限 |
swr:repository:updateBlockPolicy |
√ |
√ |
× |
授予查询阻断记录列表的权限 |
swr:repository:listBlockPolicyRecords |
√ |
√ |
√ |
授予更新公网访问白名单配置的权限 |
swr:instance:updateEndpointPolicy |
√ |
× |
× |
授予更新公网访问白名单配置状态的权限 |
swr:instance:updateEndpointPolicyStatus |
√ |
× |
× |
授予查询公网访问白名单配置的权限 |
swr:instance:getEndpointPolicy |
√ |
√ |
√ |
授予创建内网访问的权限 |
swr:instance:createInternalEndpoint |
√ |
× |
× |
授予获取内网访问的权限 |
swr:instance:getInternalEndpoint |
√ |
√ |
√ |
授予删除内网访问的权限 |
swr:instance:deleteInternalEndpoint |
√ |
× |
× |
授予查询内网访问列表的权限 |
swr:instance:listInternalEndpoints |
√ |
√ |
√ |
授予上传制品的权限 |
swr:repository:uploadArtifact |
√ |
√ |
× |
授予下载制品的权限 |
swr:repository:downloadArtifact |
√ |
√ |
√ |
授予创建临时访问凭证的权限 |
swr:instance:createTempCredential |
√ |
√ |
√ |
授予创建长期访问凭证的权限 |
swr:instance:createLTCredential |
√ |
× |
× |
授予启用/停用长期访问凭证的权限 |
swr:instance:updateLTCredential |
√ |
× |
× |
授予查询长期访问凭证列表的权限 |
swr:instance:listLTCredentials |
√ |
√ |
√ |
授予删除长期访问凭证的权限 |
swr:instance:deleteLTCredential |
√ |
× |
× |