如果系统权限策略不能满足您的要求,您可以创建自定义权限策略实现最小授权。使用自定义权限策略有助于实现权限的精细化管控,是提升资源访问安全的有效手段。本文介绍短信服务使用自定义权限策略的场景和策略示例。
什么是自定义权限策略
在基于RAM的访问控制体系中,自定义权限策略是指在系统权限策略之外,您可以自主创建、更新和删除的权限策略。自定义权限策略的版本更新需由您来维护。
创建自定义权限策略后,需为RAM用户、用户组或RAM角色绑定权限策略,这些RAM身份才能获得权限策略中指定的访问权限。
已创建的权限策略支持删除,但删除前需确保该策略未被引用。如果该权限策略已被引用,您需要在该权限策略的引用记录中移除授权。
自定义权限策略支持版本控制,您可以按照RAM规定的版本管理机制来管理您创建的自定义权限策略版本。
操作文档
自定义权限策略示例
示例1:IP白名单权限策略配置
输入IP白名单权限策略内容。例如,只允许192.0.2.0/24的IP访问,且只能访问名为SendSms的API方法。脚本配置如下:
acs:SourceIp的取值如果是单个IP地址,请写明具体的IP地址,不可以使用该IP地址的IP地址段形式xx.xx.xx.xx/32。例如:10.0.0.1不可以写为10.0.0.1/32。
如果不需要限制条件请去掉“Condition{}”相关内容并去掉"Resource":[]后的“,”,条件检查策略不支持使用类似“*”或“0.0.0.0”等写法。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": ["dysms:SendSms"],
"Resource": ["*"],
"Condition": {
"IpAddress": {
"acs:SourceIp": ["192.0.2.0/24"]
}
}
}
]
}
示例2:IP黑名单权限策略配置
输入IP黑名单的策略内容。例如:不允许192.0.2.1访问名为SendSms的API方法。 脚本配置如下:
acs:SourceIp的取值如果是IP地址段,请使用该IP地址的IP地址段形式xx.xx.xx.xx/32。例如10.0.0.1/32。
如果不需要限制条件请去掉“Condition{}”相关内容并去掉"Resource":[]后的“,”,条件检查策略不支持使用类似“*”或“0.0.0.0”等写法。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": ["dysms:SendSms"],
"Resource": ["*"],
"Condition": {
"NotIpAddress": {
"acs:SourceIp": ["192.0.2.1"]
}
}
}
]
}
示例3:安全信道权限策略(HTTPS)配置
开启安全信道权限策略(HTTPS)的策略内容。脚本配置如下:
配置此安全策略后,将禁止非安全策略(HTTP)请求的访问。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": "dysms:*",
"Resource": "*",
"Condition": {
"Bool": {
"acs:SecureTransport": ["true"]
}
}
}
]
}
示例4:多接口调用权限策略配置
多接口调用权限策略配置,例如,只允许访问SendSms和SendBatchSms的API方法。脚本配置如下:
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"dysms:SendSms",
"dysms:SendBatchSms"
],
"Resource": "*"
}
]
}
授权信息参考
使用自定义权限策略,您需要了解业务的权限管控需求,并了解短信服务的授权信息。详细内容请参见授权信息。