如果系统权限策略无法满足您的要求,您可以创建自定义权限策略以实现最小授权。采用自定义权限策略有助于实现权限的精细化管理,是提升资源访问安全性的有效手段。本文将为您介绍使用IMM进行文档转换时自定义权限策略的相关场景及示例。
自定义项目服务角色权限
在创建IMM项目时,必须为项目设置服务角色,以确保IMM服务能够以该角色访问您已授权的其他云资源,例如阿里云对象存储(OSS)。
创建自定义服务角色
自定义服务角色权限策略示例
只能对特定的OSS Bucket进行文件的读取和写入
RAM Policy将允许读取和写入名称为my-bucket
的Bucket,可以向上海地域名称为test-topic
的主题发布MNS消息。
示例参数说明
OSS Resource格式为:acs:oss:*:*:<BucketName>/*
,配置时请根据实际参数进行替换,相关参数说明如下:
参数 | 说明 |
| OSS Bucket名称,可以在OSS控制台 的Bucket列表查看。 |
MNS Resource格式为:acs:mns:<RegionId>:<UID>:/topics/<TopicName>/messages
,配置时请根据实际参数进行替换,相关参数的说明如下:
参数 | 说明 |
| 地域ID,例如 |
| 账号ID,可以在账号中心的概览中查看。 |
| MNS主题名称,可以在MNS控制台 的主题列表查看。 |
{
"Version": "1",
"Statement": [
{
"Action": [
"oss:GetObject",
"oss:PutObject"
],
"Resource": "acs:oss:*:*:my-bucket/*",
"Effect": "Allow"
},
{
"Action":"mns:PublishMessage",
"Resource": "acs:mns:cn-shanghai:150910xxxxxxxxxx:/topics/test-topic/messages",
"Effect": "Allow"
},
{
"Action": "ram:PassRole",
"Resource": "*",
"Effect": "Allow",
"Condition": {
"StringEquals": {
"acs:Service": "imm.aliyuncs.com"
}
}
}
]
}
自定义调用IMM的RAM用户权限
RAM提供了一种长期有效的权限控制机制,通过划分不同权限的RAM用户,将各类权限分配给不同的用户。这一机制确保即使RAM用户的AccessKey发生泄露,也不会导致全局信息的泄露。
创建RAM用户并授权
自定义RAM用户权限策略示例
仅可使用指定项目调用IMM文档转换及查询任务相关接口
RAM Policy将允许用户只能使用上海地域的项目doc-convert-project
调用智能媒体管理的CreateOfficeConversionTask、ListTasks、GetTask接口。
示例参数说明
IMM Resource格式为:acs:imm:<RegionId>:<UID>:project/<ProjectName>
,配置时,请根据实际参数进行替换。相关参数说明如下:
参数 | 说明 |
| 地域ID,例如 |
| 账号ID,可以在账号中心的概览中查看。 |
| 项目名称,IMM创建项目时指定的名称,可以在智能媒体控制台中查看。 |
MNS Resource格式为:acs:mns:<RegionId>:<UID>:/queues/<QueueName>/messages
,配置时请根据实际参数进行替换,相关参数说明如下所示:
参数 | 说明 |
| 地域ID,例如 |
| 账号ID,可以在账号中心的概览中查看。 |
| MNS队列名称,可以在MNS控制台 的队列列表查看。 |
{
"Version": "1",
"Statement": [
{
"Action": ["imm:CreateOfficeConversionTask", "imm:ListTasks", "imm:GetTask"],
"Resource": "acs:imm:cn-shanghai:150910xxxxxxxxxx:project/doc-convert-project",
"Effect": "Allow"
},
{
"Action": ["mns:ReceiveMessage", "mns:DeleteMessage"],
"Resource": "acs:mns:cn-shanghai:150910xxxxxxxxxx:/queues/test-queue/messages",
"Effect": "Allow"
}
]
}