SAE采用阿里云完善的权限管理机制,您可以通过RAM对部署在SAE上的应用进行权限控制。本文介绍如何对SAE资源进行授权配置。

前提条件

配置授权策略前,请先了解访问控制服务,详细说明请参见RAM产品文档

背景信息

默认情况下,阿里云主账号对其名下资源拥有完全操作权限。借助RAM,可以赋予不同子账号访问SAE命名空间和应用的不同权限。

鉴权规则

资源描述

资源类型 授权策略中的资源描述
application acs:sae:${regionid}:${accountid}:application/${namespaceid}/${appid}}

参数说明

参数名称 说明
$regionid 地域ID,可用*代替。
$accountid 云账号数字ID,可用*代替。
$namespaceid 命名空间ID,其中由于默认命名空间ID为空,采用_default进行转义。
$appid 应用ID,可用*代替。

示例

  • 命名空间ID为cn-shanghai:test,应用ID为0c815215-46a1-46a2-ba1e-0102a740****的资源描述:
    acs:sae:cn-shanghai:*:application/test/0c815215-46a1-46a2-ba1e-0102a740****
  • 命名空间ID为cn-shanghai的资源描述:
    acs:sae:cn-shanghai:*:application/_default/*

典型场景配置示例

  • 场景一:命名空间级别的授权配置

    场景描述:授权产品读权限和特定命名空间及所属应用写权限。

    例如:允许使用子账号操作命名空间ID为cn-shanghai:test及其所属应用。

    {
        "Version": "1",
        "Statement": [
            {
                "Action": [
                    "sae:Get*",
                    "sae:Query*",
                    "sae:List*",
                    "sae:Describe*",
                    "sae:Check*",
                    "sae:*Ingress*",
                    "sae:*ChangeOrder*",
                    "sae:*Pipeline*",
                    "sae:*Task*",
                    "sae:AssignUploadSignature"
                ],
                "Resource": "*",
                "Effect": "Allow"
            },
            {
                "Action": [
                    "sae:*"
                ],
                "Resource": [
                    "acs:sae:cn-shanghai:*:application/test/*"
                ],
                "Effect": "Allow"
            }
        ]
    }
  • 场景二:应用级别的授权配置

    场景描述:授权产品读权限和特定应用写权限。

    例如:允许使用子账号操作如下应用。

    应用 命名空间 应用id
    应用1 cn-shanghai:test 0c815215-46a1-46a2-ba1e-102a740****
    应用2 cn-shanghai e468a92b-1529-4d20-8ab1-9d1595dc****
    {
        "Version": "1",
        "Statement": [
            {
                "Action": [
                    "sae:Get*",
                    "sae:Query*",
                    "sae:List*",
                    "sae:Describe*",
                    "sae:Check*",
                    "sae:*Ingress*",
                    "sae:*ChangeOrder*",
                    "sae:*Pipeline*",
                    "sae:*Task*",
                    "sae:AssignUploadSignature"
                ],
                "Resource": "*",
                "Effect": "Allow"
            },
            {
                "Action": [
                    "sae:*"
                ],
                "Resource": [
                    "acs:sae:cn-shanghai:*:application/test/0c815215-46a1-46a2-ba1e-0102a740****",
                    "acs:sae:cn-shanghai:*:application/_default/e468a92b-1529-4d20-8ab1-9d1595dc****"
                ],
                "Effect": "Allow"
            }
        ]
    }
  • 场景三:与SAE相关联云产品授权

    由于业务需要,应用在SAE运行时会调用类似ECS、SLB、ARMS等其他云产品的业务接口,因此RAM授权时应对相关产品的权限进行配置。例如添加只读访问ECS的权限(AliyunECSReadOnlyAccess),只读访问SLB的权限(AliyunSLBReadOnlyAccess),只读访问ARMS的权限(AliyunARMSReadOnlyAccess)。