全部产品
Search
文档中心

:云数据库 Tair(兼容 Redis)自定义权限策略参考

更新时间:Dec 04, 2024

如果系统权限策略不能满足您的要求,您可以创建自定义权限策略实现最小授权。使用自定义权限策略有助于实现权限的精细化管控,是提升资源访问安全的有效手段。本文介绍云数据库 Tair(兼容 Redis)使用自定义权限策略的场景和策略示例。

什么是自定义权限策略

在基于RAM的访问控制体系中,自定义权限策略是指在系统权限策略之外,您可以自主创建、更新和删除的权限策略。自定义权限策略的版本更新需由您来维护。

  • 创建自定义权限策略后,需为RAM用户、用户组或RAM角色绑定权限策略,这些RAM身份才能获得权限策略中指定的访问权限。

  • 已创建的权限策略支持删除,但删除前需确保该策略未被引用。如果该权限策略已被引用,您需要在该权限策略的引用记录中移除授权。

  • 自定义权限策略支持版本控制,您可以按照RAM规定的版本管理机制来管理您创建的自定义权限策略版本。

操作文档

常见自定义权限策略场景及示例

常见的自定义权限策略示例如下,您只需将下述示例代码中的实例ID替换为实际的实例ID。

  • 管理单个实例的所有权限

    以下策略表示:您具有管理指定实例的所有权限。

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": "kvstore:*",
                "Resource": "acs:kvstore:*:*:*/<实例ID>",
                "Condition": {}
            },
            {
                "Action": "kvstore:Describe*",
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
    }
  • 管理多个实例的所有权限

    以下策略表示:您具有管理多个指定实例的所有权限。

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": "kvstore:*",
                "Resource": [
                    "acs:kvstore:*:*:*/<实例ID>",
                    "acs:kvstore:*:*:*/<实例ID>"
                ],
                "Condition": {}
            },
            {
                "Action": "kvstore:Describe*",
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
    }
  • 管理指定标签(Tag)实例的所有权限

    以下策略表示:您具有管理指定标签(例如下方中的TagKey:TagValue标签)实例的所有权限,但不支持新增或删除标签。

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "kvstore:DescribeInstances",
                    "kvstore:ListTagResources",
                    "kvstore:DescribeParameterTemplates",
                    "kvstore:DescribeHistoryMonitorValues",
                    "sts:AssumeRole",
                    "hdm:*"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Deny",
                "Action": [
                    "kvstore:TagResources",
                    "kvstore:UntagResources"
                ],
                "Resource": "*"
            },
            {
                "Effect": "Allow",
                "Action": "kvstore:*",
                "Resource": "*",
                "Condition": {
                    "StringEquals": {
                        "acs:ResourceTag/TagKey": [
                            "TagValue"
                        ]
                    }
                }
            }
        ]
    }
  • 修改单个实例的白名单权限

    以下策略表示:您具有修改指定实例IP白名单的权限。

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": "kvstore:ModifySecurityIps",
                "Resource": "acs:kvstore:*:*:*/<实例ID>",
                "Condition": {}
            },
            {
                "Action": "kvstore:Describe*",
                "Resource": "*",
                "Effect": "Allow"
            }
        ]
    }
  • 离线全量Key分析的权限

    以下策略表示:您具有对指定实例进行离线全量Key分析的权限。

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "hdm:CreateCacheAnalysisTask",
                    "hdm:DescribeCacheAnalysisReportList",
                    "hdm:DescribeCacheAnalysisReport",
                    "hdm:CreateCacheAnalysisJob",
                    "hdm:DescribeCacheAnalysisJob",
                    "hdm:DescribeCacheAnalysisJobs",
                    "hdm:GetInstanceLatestBackup"
                ],
                "Resource": "acs:kvstore:*:*:instance/<实例ID>",
                "Condition": {}
            },
            {
                "Action": "ram:CreateServiceLinkedRole",
                "Resource": "*",
                "Effect": "Allow",
                "Condition": {
                    "StringEquals": {
                        "ram:ServiceName": "hdm.aliyuncs.com"
                    }
                }
            }
        ]
    }

授权信息参考

使用自定义权限策略,您需要了解业务的权限管控需求,并了解云数据库 Tair(兼容 Redis)的授权信息。详细内容请参见授权信息