授予对 Amazon Redshift 管理控制台的细粒度访问权限(一)

阅读数:10 2019 年 12 月 26 日 13:37

授予对 Amazon Redshift 管理控制台的细粒度访问权限(一)

Amazon Redshift 访问控制概述

自 2013 年 2 月发布的版本开始, Amazon Redshift 已快速成为备受全球数千家客户青睐的云数据仓库平台。

访问 Amazon Redshift 需要凭证,AWS 可根据此凭证对您的请求进行身份验证。这些凭证必须有权访问 Amazon Redshift 资源,例如 Amazon Redshift 集群或快照。有关这些凭证的更多详细信息,请参阅 Amazon Redshift 文档的 Amazon Redshift 中的 Identity and Access Management 部分。

所有 AWS 资源均归 AWS 账户所有,创建或访问资源的权限受 AWS Identity and Access Management (IAM) 策略控制。AWS 账户管理员可将权限策略附加到 IAM 身份(用户、组和角色)。特别是,AWS 账户管理员还可将 IAM 权限策略附加到特定用户。此类策略可为用户授予管理 Amazon Redshift 资源(例如快照或事件订阅)的权限。

授予权限时,您可以决定可获得权限的用户及其可获得哪些 Amazon Redshift 资源的权限。您还可以决定允许对这些资源执行的具体操作。附加到 IAM 身份的策略称为 _ 基于身份 _ 的 IAM 策略,附加到资源的策略称为 _ 基于资源 _ 的策略。Amazon Redshift 仅支持基于身份的 IAM 策略。

使用案例:为用户设置有限的访问权限

请考虑下面的使用案例。假设有一位 IAM 用户是客户运营组的成员,该用户需要监控和终止在 Amazon Redshift 集群中运行的查询。最佳方式是通过 Amazon Redshift 控制台实现此目的。此用户无权修改或删除任何其他 Amazon Redshift 资源。

为实施此使用案例,我们需要实施一项自定义 IAM 策略,用于确保此 IAM 用户拥有对 Amazon Redshift 控制台的只读权限。此操作意味着该用户可以获得可用集群的描述,并可导航到查询选项卡。此外,我们希望此 IAM 用户能够通过 Amazon Redshift 控制台取消正在运行的查询。为实现此目的,我们使用 redshift:CancelQuerySession IAM 操作。有关 IAM 策略允许的其他 Amazon Redshift 操作的描述以及每项操作的意义,请参阅 Amazon Redshift 文档中的 Amazon Redshift 定义的操作

要创建此类自定义 IAM 策略,请按照以下说明进行操作:

  1. 访问 https://console.aws.amazon.com/iam/ 登录 AWS 管理控制台,并打开 IAM 控制台。
  2. 在左侧的导航窗格中,选择策略
  3. 选择创建策略
  4. 选择 JSON 选项卡并输入以下策略:

Json

复制代码
{
"Version": "2012-10-17",
"Statement": [
{
"Action": [
"redshift:Describe*",
"redshift:CancelQuerySession",
"redshift:ViewQueriesInConsole",
"ec2:DescribeAccountAttributes",
"ec2:DescribeAddresses",
"ec2:DescribeAvailabilityZones",
"ec2:DescribeSecurityGroups",
"ec2:DescribeSubnets",
"ec2:DescribeVpcs",
"ec2:DescribeInternetGateways",
"sns:Get*",
"sns:List*",
"cloudwatch:Describe*",
"cloudwatch:List*",
"cloudwatch:Get*"
],
"Effect": "Allow",
"Resource": "*"
}
]
}

授予对 Amazon Redshift 管理控制台的细粒度访问权限(一)

  1. 查看策略页面,为您要创建的策略输入名称值,并可选择输入描述。查看策略摘要以查看您的策略授予的权限。然后选择创建策略以保存您的工作。
  2. 将此策略附加到现有或新的 IAM 用户。

借助此权限策略,IAM 用户可以选择 Amazon Redshift 集群,在查询选项卡中列出所有运行的查询,并根据需要终止查询。所有权限都是只读权限。因此,用户无法新建 Amazon Redshift 集群,或者修改或删除现有集群。但是,用户可以查看可用集群、集群快照、参数组和集群子网组,还可查看现有集群的其他属性。

本文转载自 AWS 技术博客。

原文链接: https://amazonaws-china.com/cn/blogs/china/granting-fine-grained-access-to-the-amazon-redshift-management-console/

欲了解 AWS 的更多信息,请访问【AWS 技术专区】

评论

发布