如果系统权限策略不能满足您的要求,您可以创建自定义权限策略实现最小授权。使用自定义权限策略有助于实现权限的精细化管控,是提升资源访问安全的有效手段。本文介绍资源编排使用自定义权限策略的场景和策略示例。
什么是自定义权限策略
在基于RAM的访问控制体系中,自定义权限策略是指在系统权限策略之外,您可以自主创建、更新和删除的权限策略。自定义权限策略的版本更新需由您来维护。
创建自定义权限策略后,需为RAM用户、用户组或RAM角色绑定权限策略,这些RAM身份才能获得权限策略中指定的访问权限。
已创建的权限策略支持删除,但删除前需确保该策略未被引用。如果该权限策略已被引用,您需要在该权限策略的引用记录中移除授权。
自定义权限策略支持版本控制,您可以按照RAM规定的版本管理机制来管理您创建的自定义权限策略版本。
操作文档
常见自定义权限策略场景及示例
示例一:查看资源栈列表
以下策略表示:RAM用户可以查看北京地域的所有资源栈列表和资源栈详情。其中,星号(*)是通配符,表示北京地域的所有资源栈。
{ "Statement": [ { "Action": [ "ros:DescribeStacks", "ros:DescribeStackDetail" ], "Effect": "Allow", "Resource": "acs:ros:cn-beijing:*:stack/*" } ], "Version": "1" }
示例二:创建和查看资源栈
以下策略表示:RAM用户可以在所有地域创建和查看资源栈。
{ "Statement": [ { "Action": [ "ros:CreateStack", "ros:DescribeStacks", "ros:DescribeStackDetail", "ros:ValidateTemplate" ], "Effect": "Allow", "Resource": "*" } ], "Version": "1" }
示例三:更新资源栈
以下策略表示:RAM用户
12345****
可以更新资源栈94dd5431-2df6-4415-81ca-732a7082****
。{ "Statement": [ { "Action": [ "ros:UpdateStack" ], "Effect": "Allow", "Resource": "acs:ros:cn-beijing:12345****:stack/94dd5431-2df6-4415-81ca-732a7082****" } ], "Version": "1" }
示例四:访问ROS的所有功能和资源
当ROS通过阿里云STS(Security Token Service)和不通过STS进行临时授权访问时,以下策略均表示RAM用户当前IP网段为42.120.XX.XX/24、且正在使用HTTPS访问阿里云控制台或API时,可以访问ROS所有功能和资源,但不能访问其他云服务。说明:
acs:SourceIp
取值为42.120.XX.XX/24,表示通过指定IP网段(42.120.XX.XX/24)访问阿里云。acs:SecureTransport
取值为true,表示通过HTTPS方式访问阿里云。
{ "Statement": [ { "Effect": "Allow", "Action": "ros:*", "Resource": "*", "Condition": { "IpAddress": { "acs:SourceIp": "42.120.XX.XX/24" }, "Bool": { "acs:SecureTransport": "true" } } } ], "Version": "1" }
示例五:访问ROS的所有功能和资源,并设置是否支持访问ECS
当ROS通过STS进行临时授权访问时,由于STS场景下无法透传acs:SourceIp和acs:SecureTransport,因此以下策略表示RAM用户当前IP网段为42.120.XX.XX/24、且正在使用HTTPS访问阿里云控制台或API时,可以访问ROS所有功能和资源,但不能访问其他服务,包括ECS。
当ROS不通过STS进行临时授权访问时,以下策略表示RAM用户当前IP网段为42.120.XX.XX/24、且正在使用HTTPS访问阿里云控制台或API时,可以访问ROS和ECS所有功能和资源,但不能访问其他服务。
说明当ROS不通过STS进行临时授权访问时,支持透传acs:SourceIp和acs:SecureTransport的服务为:云服务器ECS、专用网络VPC、负载均衡SLB、阿里云关系型数据库RDS、云数据库Redis版、云解析PrivateZone、容器服务Kubernetes版ACK、函数计算FC、对象存储OSS、日志服务SLS、API网关和操作审计。
{ "Statement": [ { "Effect": "Allow", "Action": [ "ros:*", "ecs:*" ], "Resource": "*", "Condition": { "IpAddress": { "acs:SourceIp": "42.120.XX.XX/24" }, "Bool": { "acs:SecureTransport": "true" } } } ], "Version": "1" }
示例六:通过标签鉴权来访问和操作ROS的资源
以下策略表示:允许RAM用户管理带有标签对
{"Enviroment": "TEST"}
的ROS资源。{ "Statement": [ { "Action": "ros:*", "Effect": "Allow", "Resource": "*", "Condition": { "StringEquals": { "acs:ResourceTag/Enviroment": "TEST" } } } ], "Version": "1" }
授权信息参考
使用自定义权限策略,您需要了解业务的权限管控需求,并了解资源编排的授权信息。详细内容请参见授权信息。