如何使用 Terraform 为 Redshift Serverless Workgroup 添加“授予帐户”?

问题描述 投票:0回答:1

我想授予对我的 Redshift Serverless 工作组的访问权限,以便其他指定帐户创建 Redshift 管理的 VPC 终端节点。

在控制台的工作组视图中,它看起来像是工作组上的一个属性。但是,它不是该 Terraform 资源的成员。

terraform amazon-redshift terraform-provider-aws amazon-redshift-serverless
1个回答
0
投票

虽然它看起来像控制台中的工作组设置,但在更新“授予的帐户”时检查网络请求表明,与 AWS 中的大多数访问一样,它是由 IAM 策略控制的。

您需要通过 Terraform 设置一个 aws_redshiftserverless_resource_policy,其中 Resource_arn 设置为您的工作组 arn,策略声明应如下所示:

{
  "Principal": {
    "AWS": ["123456789012", "987654321098"]
  },
  "Action" [
   "redshift-serverless:CreateEndpointAccess",
   "redshift-serverless:UpdateEndpointAccess",
   "redshift-serverless:DeleteEndpointAccess",
   "redshift-serverless:GetEndpointAccess"
  ],
  "Condition": {
    "ArnLike": {
      "redshift-serverless:AuthorizedVpc": [ "arn:aws:ec2:<REGION>:<ACCOUNT_ID>:vpc/<VPC_ID_OR_*>" ]
    }
  }
}

*** 免责声明:这就是我观察通过控制台设置策略的方式。就像 SO 上的所有内容一样,您应该在自己使用之前对其进行审查:)

© www.soinside.com 2019 - 2024. All rights reserved.