当系统权限策略无法满足精细化管控需求时,可创建自定义权限策略,按最小权限原则精确控制对表格存储资源的访问。
自定义权限策略
在基于RAM的访问控制体系中,权限策略分为系统策略和自定义策略两类。与系统策略不同,自定义策略支持自主创建、更新和删除,版本历史由自己维护。
创建自定义权限策略后,需将其绑定到RAM子用户、用户组或角色,对应身份才能获得策略中定义的访问权限。
删除策略前,需先解除所有绑定关系。如果策略已被引用,需在引用记录中移除授权后才能删除。
自定义策略支持版本管理,可按RAM提供的版本管理机制追踪和回滚策略变更。
参考文档
常见自定义权限策略场景及示例
典型示例的配置操作,请参见自定义RAM Policy。
您可以根据Condition配置用户能访问的场景策略,目前表格存储支持的Policy包括访问IP限制、是否通过HTTPS访问、是否通过MFA(多因素认证)访问、是否通过TLSv1.2和TLSv1.3版本访问、访问时间限制等多种鉴权条件。
访问IP限制
通过配置IP白名单限制访问表格存储的源IP地址,并且支持根据网段进行过滤。典型配置如下:
-
限制多个IP地址。
以下示例用于只允许IP地址为10.10.XX.XX和10.11.XX.XX的请求访问。
{ "Statement": [ { "Effect": "Allow", "Action": "ots:*", "Resource": "acs:ots:*:*:*", "Condition": { "IpAddress": { "acs:SourceIp": [ "10.10.XX.XX", "10.11.XX.XX" ] } } } ], "Version": "1" } -
限制单个IP地址和IP网段。
以下示例用于只允许IP地址为10.10.XX.XX或10.10.XX.XX/24网段的请求访问。
{ "Statement": [ { "Effect": "Allow", "Action": "ots:*", "Resource": "acs:ots:*:*:*", "Condition": { "IpAddress": { "acs:SourceIp": [ "10.10.XX.XX", "10.10.XX.XX/24" ] } } } ], "Version": "1" }
HTTPS访问限制
通过自定义权限策略限制是否通过HTTPS访问表格存储。
以下示例用于限制请求必须通过HTTPS访问表格存储。
{
"Statement": [
{
"Effect": "Allow",
"Action": "ots:*",
"Resource": "acs:ots:*:*:*",
"Condition": {
"Bool": {
"acs:SecureTransport": "true"
}
}
}
],
"Version": "1"
}
TLS版本访问限制
通过自定义权限策略限制是否通过TLSv1.2和TLSv1.3版本访问表格存储。
以下示例用于限制请求必须通过TLSv1.2和TLSv1.3版本访问表格存储。
{
"Version": "1",
"Statement": [
{
"Effect": "Deny",
"Action": [
"ots:*",
],
"Resource": [
"*"
],
"Condition": {
"StringNotEquals": {
"ots:TLSVersion": [
"TLSv1.2",
"TLSv1.3"
]
}
}
}
]
}
MFA访问限制
通过自定义权限策略限制是否通过MFA(多因素认证)访问表格存储。
以下示例用于限制请求必须通过MFA访问表格存储。
{
"Statement": [
{
"Effect": "Allow",
"Action": "ots:*",
"Resource": "acs:ots:*:*:*",
"Condition": {
"Bool": {
"acs:MFAPresent ": "true"
}
}
}
],
"Version": "1"
}
访问时间限制
通过自定义权限策略限制请求的访问时间,即只允许或拒绝在某个时间点范围之前的请求。
以下示例用于限制用户在北京时间2016年1月1日零点之前可以访问表格存储,之后将不能再访问。
{
"Statement": [
{
"Effect": "Allow",
"Action": "ots:*",
"Resource": "acs:ots:*:*:*",
"Condition": {
"DateLessThan": {
"acs:CurrentTime": "2016-01-01T00:00:00+08:00"
}
}
}
],
"Version": "1"
}