【问题标题】:AWS Redshift cross account accessAWS Redshift 跨账户访问
【发布时间】:2020-02-20 20:25:36
【问题描述】:

不同的团队拥有不同的数据集。我想要完成的目标是能够查询不同团队(AWS 账户)拥有的不同来源。

  • 帐户 A - 红移
  • 帐户 B - S3
  • 账户 C - 我的账户

我想通过我的帐户:

  1. 使用红移光谱从账户 B 的 S3 存储桶中访问数据

  2. 访问账户 A 的红移数据库。

我知道如何做第 1 部分,我如何查询跨账户红移(第 2 部分)?

【问题讨论】:

    标签: amazon-web-services amazon-redshift amazon-redshift-spectrum


    【解决方案1】:

    账户 B 中相关 Amazon S3 存储桶的所有者应添加存储桶策略,授予对 Amazon Redshift 使用的 IAM 角色的访问权限。

    来自IAM Policies for Amazon Redshift Spectrum - Amazon Redshift

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Sid": "Example permissions",
                "Effect": "Allow",
                "Principal": {
                    "AWS": "arn:aws:iam::redshift-account:role/spectrumrole"
                },
                "Action": [
                    "s3:GetBucketLocation",
                    "s3:GetObject",
                    "s3:ListMultipartUploadParts",
                    "s3:ListBucket",
                    "s3:ListBucketMultipartUploads"
                ],
                "Resource": [
                    "arn:aws:s3:::bucketname",
                    "arn:aws:s3:::bucketname/*"
                ]
            }
        ]
    }
    

    【讨论】:

    • 您可能已经在映射光谱表的 redshift 外部模式表上设置了安全性 - 您可能还想检查一下。
    猜你喜欢
    • 1970-01-01
    • 2015-05-11
    • 1970-01-01
    • 1970-01-01
    • 2020-05-17
    • 2020-11-08
    • 2021-06-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多