为项目配置授权角色
创建IMM项目时需要为项目设置授权角色(即项目中的ServiceRole参数),这样IMM服务才能以该角色访问您授权的其他云资源(例如阿里云对象存储OSS)。本文介绍如何配置授权角色。
警告
当您创建授权角色、创建项目、更改项目授权角色时,均需拥有该角色内的全部权限,否则会因为权限不足导致操作失败,请谨慎操作。
创建授权角色
您可以通过RAM控制台创建授权角色,具体操作,请参见创建服务关联角色。创建授权角色时,可信实体类型选择阿里云服务,角色类型选择普通服务角色,受信服务选择智能媒体管理。
选择可信实体类型。
填写角色名称,选择角色类型和受信服务。
配置角色权限。
通过RAM控制台成功创建授权角色后,该RAM角色没有任何权限,您可以为该RAM角色授权,请根据使用场景至少授予OSS和MNS相关的权限。
OSS读写权限:AliyunOSSFullAccess、AliyunMNSFullAccess。
OSS只读权限:AliyunOSSReadOnlyAccess、AliyunMNSFullAccess。
具体操作,请参见为RAM角色授权。
如果您使用自定义权限策略,权限策略示例如下。
{ "Version": "1", "Statement": [ { "Action": [ "oss:Get*", "oss:List*", "oss:PutBucketLifecycle", "oss:PutBucketNotification", "oss:DeleteBucketNotification", "oss:PutBucketAcl", "oss:PutObjectAcl", "oss:CopyObject", "oss:AppendObject", "oss:PutSymlink", "oss:PutObject", "oss:StartEventRecord", "oss:StopEventRecord", "oss:GetEventRecordStatus" ], "Resource": "*", "Effect": "Allow" }, { "Action":"mns:*", "Resource": "*", "Effect": "Allow" }, { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "imm.aliyuncs.com" ] } } ] }
如果您想缩减权限范围,比如限定OSS只能读取,权限策略示例如下。
{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "oss:Get*", "oss:List*", ], "Resource": "*" }, { "Effect": "Allow", "Action": "mns:*", "Resource": "*" }, { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "imm.aliyuncs.com" ] } } ] }
使用授权角色
授权角色创建好之后,刷新新建项目页面,就可以选择使用新创建的授权角色来创建智能媒体管理项目,如下图所示。

修改服务角色权限
您可以通过RAM控制台修改角色的权限,具体操作,请参见为RAM角色授权。
修改授权角色的权限时,请根据使用情况至少授予OSS、MNS相关的权限,否则可能由于没有相关权限,导致接口调用失败。