如果系统权限策略不能满足您的要求,您可以创建自定义权限策略实现最小授权。使用自定义权限策略有助于实现权限的精细化管控,是提升资源访问安全的有效手段。本文介绍消息服务使用自定义权限策略的场景和策略示例。
什么是自定义权限策略
在基于RAM的访问控制体系中,自定义权限策略是指在系统权限策略之外,您可以自主创建、更新和删除的权限策略。自定义权限策略的版本更新需由您来维护。
创建自定义权限策略后,需为RAM用户、用户组或RAM角色绑定权限策略,这些RAM身份才能获得权限策略中指定的访问权限。
已创建的权限策略支持删除,但删除前需确保该策略未被引用。如果该权限策略已被引用,您需要在该权限策略的引用记录中移除授权。
自定义权限策略支持版本控制,您可以按照RAM规定的版本管理机制来管理您创建的自定义权限策略版本。
操作文档
自定义策略
您需要创建的自定义权限策略如下表所示。
权限策略名称 | 说明 | 策略内容 |
RamListRolesPolicy | RAM的ListRoles权限。 |
|
MNSAccessAccountAttr | MNS查看和设置账号属性的权限。 |
|
LogServiceListPolicy | LogService的ListProject和ListLogStore权限。 |
|
OSSListBuckets | OSS的ListBuckets权限。 |
|
常见自定义权限策略场景及示例
示例一:在Allow授权中增加IP限制
允许通过42.120.88.0/24,42.120.66.0/24两个IP段访问消息服务MNS。
{ "Version": "1", "Statement": [ { "Action": "mns:*", "Effect": "Allow", "Resource": "acs:mns:*:*:*", "Condition":{ "IpAddress": { "acs:SourceIp": ["42.120.88.0/24", "42.120.66.0/24"] } } } ] }
示例二:在Deny授权中增加IP限制
如果源IP不在42.120.88.0/24中,则禁止对消息服务MNS执行任何操作。
{ "Version":"1", "Statement":[ { "Action":"mns:*", "Effect":"Deny", "Resource":"acs:mns:*:*:*", "Condition":{ "NotIpAddress":{ "acs:SourceIp":[ "42.120.88.0/24" ] } } } ] }
重要因为Policy的鉴权规则是Deny优先(即如果您的访问操作命中任意一条Deny规则,则禁止访问),所以访问者从42.120.88.0/24以外的IP地址访问时,消息服务MNS会通知没有权限。
示例三:授予RAM用户队列、主题的可读权限
授予查看队列、主题、队列属性和主题属性的权限,请按以下示例设置。
{ "Version":"1", "Statement":[ { "Effect":"Allow", "Action":[ "mns:ListQueue", "mns:ListTopic", "mns:GetQueueAttributes", "mns:GetTopicAttributes" ], "Resource":"acs:mns:*:*:*" } ] }
- 本页导读