使用RAM Policy控制访问权限

为RAM用户授权后,RAM用户就可以使用阿里云视觉智能开放平台的相关服务。

咨询服务

如果您有任何问题需要咨询阿里云视觉智能开放平台,欢迎各位企业用户、开发商、服务商或者开发者通过钉钉搜索群号23109592,加入阿里云视觉智能开放平台咨询群,与平台取得联系。

授权操作步骤

  1. 登录RAM控制台

  2. 新建RAM用户。

    具体操作,请参见创建RAM用户

  3. 新建权限策略(如果使用系统权限策略AliyunVIAPIFullAccess,请跳过本步骤)。

    新建权限策略时请使用脚本编辑的配置模式。细粒度授权设置支持:单个或多个API限制IP/SSL限制时间限制MFA角色STS。关于新建权限策略操作,请参见创建自定义权限策略

  4. 为用户进行授权。

    具体操作,请参见为RAM用户授权

全部权限

  • 方式一:直接授予用户系统权限策略AliyunVIAPIFullAccess(管理视觉智能API的权限)。

  • 方式二:自定义权限。拥有视觉智能所有能力的全部权限,policy定义如下所示。

    {
        "Version": "1",
        "Statement": [
            {
                "Action": [
                    "viapi-imageenhan:*",
                    "viapi-imagerecog:*",
                    "viapi-imageseg:*",
                    "viapi-ocr:*",
                    "viapi-facebody:*",
                    "viapi-objectdet:*",
                    "viapi-imageaudit:*",
                    "viapi-goodstech:*",
                    "viapi-imgsearch:*",
                    "viapi-videorecog:*",
                    "viapi-videoenhan:*",
                    "viapi-videoseg:*",
                    "viapi-imageprocess:*",
                    "viapi-regen:*",
                    "viapi:*"
                ],
                "Resource": "*",
                "Effect": "Allow"
            },
            {
                "Action": "ram:PassRole",
                "Resource": "*",
                "Effect": "Allow",
                "Condition": {
                    "StringEquals": {
                        "acs:Service": "viapi.aliyuncs.com"
                    }
                }
            }
        ]
    }               

单个或多个API限制

系统权限策略AliyunVIAPIFullAccess允许调用视觉智能开放平台所有API。如果您希望限制只能调用单个或多个API,可以通过自定义策略实现。

例如,以下策略限制只能调用RecognizeBankCard和CompareFace。其他能力类似,参考能力开通,找到相关类目英文名Product和相关能力英文名Action,在StatementAction下面增加viapi-<Product>:<Action>即可。

{
    "Version": "1",
    "Statement": [
        {
            "Action": [
                "viapi-ocr:RecognizeBankCard",
                "viapi-facebody:CompareFace"
            ],
            "Resource": "*",
            "Effect": "Allow"
        },
        {
            "Action": "ram:PassRole",
            "Resource": "*",
            "Effect": "Allow",
            "Condition": {
                "StringEquals": {
                    "acs:Service": "viapi.aliyuncs.com"
                }
            }
        }
    ]
}

IP/SSL限制

支持带IP/SSL限制的授权。该授权策略在满足以下两个条件时可以访问所有资源。

  • RAM用户当前的IP网段为42.120.XX.X/24。

  • RAM用户正在使用HTTPS访问阿里云控制台或OpenAPI。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "viapi-imageenhan:*",
      "Resource": "acs:viapi-imageenhan:*:*:*",
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": "42.120.99.0/24"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imagerecog:*",
      "Resource": "acs:viapi-imagerecog:*:*:*",
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": "42.120.99.0/24"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imageseg:*",
      "Resource": "acs:viapi-imageseg:*:*:*",
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": "42.120.99.0/24"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imageaudit:*",
      "Resource": "acs:viapi-imageaudit:*:*:*",
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": "42.120.99.0/24"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-ocr:*",
      "Resource": "acs:viapi-ocr:*:*:*",
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": "42.120.99.0/24"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-facebody:*",
      "Resource": "acs:viapi-facebody:*:*:*",
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": "42.120.99.0/24"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-objectdet:*",
      "Resource": "acs:viapi-objectdet:*:*:*",
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": "42.120.99.0/24"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-goodstech:*",
      "Resource": "acs:viapi-goodstech:*:*:*",
      "Condition": {
        "IpAddress": {
          "acs:SourceIp": "42.120.99.0/24"
        },
        "Bool": {
          "acs:SecureTransport": "true"
        }
      }
    }
  ],
  "Version": "1"
}
                

时间限制

该授权策略的含义是:在北京时间2019年09月25日下午12:30之前,RAM用户拥有viapi的所有权限。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "viapi-imageenhan:*",
      "Resource": "acs:viapi-imageenhan:*:*:*",
      "Condition": {
        "DateLessThan": {
          "acs:CurrentTime": "2019-09-25T12:30:00+08:00"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imagerecog:*",
      "Resource": "acs:viapi-imagerecog:*:*:*",
      "Condition": {
        "DateLessThan": {
          "acs:CurrentTime": "2019-09-25T12:30:00+08:00"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imageseg:*",
      "Resource": "acs:viapi-imageseg:*:*:*",
      "Condition": {
        "DateLessThan": {
          "acs:CurrentTime": "2019-09-25T12:30:00+08:00"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imageaudit:*",
      "Resource": "acs:viapi-imageaudit:*:*:*",
      "Condition": {
        "DateLessThan": {
          "acs:CurrentTime": "2019-09-25T12:30:00+08:00"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-ocr:*",
      "Resource": "acs:viapi-ocr:*:*:*",
      "Condition": {
        "DateLessThan": {
          "acs:CurrentTime": "2019-09-25T12:30:00+08:00"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-facebody:*",
      "Resource": "acs:viapi-facebody:*:*:*",
      "Condition": {
        "DateLessThan": {
          "acs:CurrentTime": "2019-09-25T12:30:00+08:00"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-objectdet:*",
      "Resource": "acs:viapi-objectdet:*:*:*",
      "Condition": {
        "DateLessThan": {
          "acs:CurrentTime": "2019-09-25T12:30:00+08:00"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-goodstech:*",
      "Resource": "acs:viapi-goodstech:*:*:*",
      "Condition": {
        "DateLessThan": {
          "acs:CurrentTime": "2019-09-25T12:30:00+08:00"
        }
      }
    }
  ],
  "Version": "1"
}
                

MFA

如果一个RAM用户仅被授予该授权策略,那么只有当该RAM用户启用MFA并使用MFA登录时,才具有viapi的权限。此RAM用户的AK也没有权限,需要使用AK+正确的MFA六位Code调用STS服务获取一个临时AK(15分钟失效),此临时AK才具有相应的权限。

{
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "viapi-imageenhan:*",
      "Resource": "acs:viapi-imageenhan:*:*:*",
      "Condition": {
        "Bool": {
          "acs:MFAPresent": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imagerecog:*",
      "Resource": "acs:viapi-imagerecog:*:*:*",
      "Condition": {
        "Bool": {
          "acs:MFAPresent": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imageseg:*",
      "Resource": "acs:viapi-imageseg:*:*:*",
      "Condition": {
        "Bool": {
          "acs:MFAPresent": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-imageaudit:*",
      "Resource": "acs:viapi-imageaudit:*:*:*",
      "Condition": {
        "Bool": {
          "acs:MFAPresent": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-ocr:*",
      "Resource": "acs:viapi-ocr:*:*:*",
      "Condition": {
        "Bool": {
          "acs:MFAPresent": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-facebody:*",
      "Resource": "acs:viapi-facebody:*:*:*",
      "Condition": {
        "Bool": {
          "acs:MFAPresent": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-objectdet:*",
      "Resource": "acs:viapi-objectdet:*:*:*",
      "Condition": {
        "Bool": {
          "acs:MFAPresent": "true"
        }
      }
    },
    {
      "Effect": "Allow",
      "Action": "viapi-goodstech:*",
      "Resource": "acs:viapi-goodstech:*:*:*",
      "Condition": {
        "Bool": {
          "acs:MFAPresent": "true"
        }
      }
    }
  ],
  "Version": "1"
}
                

控制台角色STS

STS Token是一种临时身份,用来解决跨账号及跨服务的资源访问的问题。STS Token由以下三部分组成:

  • AccessKeyId

  • AccessKeySecret

  • SecurityToken

  1. 在RAM控制台创建本账户的RAM角色,并为该角色授予该产品的管理权限或者AdministratorAccess。

  2. 创建一个RAM用户,给RAM用户授予AliyunSTSAssumeRoleAccess权限。

  3. 用创建的RAM用户登录RAM控制台

  4. 将鼠标悬停在右上角头像的位置,查看企业别名并保存。

  5. 单击切换身份

  6. 角色切换页面,输入已保存的企业别名和步骤1创建的角色名。

    说明

    如果没有别名,输入主账户ID。

  7. 切换到角色后,在浏览器里输入产品控制台的地址。