更新时间:2025-09-04 GMT+08:00
分享

企业仓库策略

操作场景

如果系统预置的企业仓库权限不满足您的授权要求,可以创建策略。策略中可以添加的授权项(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"
                ]
            }
        ]
    }

企业仓库操作与系统策略关系

表1 企业仓库操作与系统策略关系

操作

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

×

×

相关文档