获取AWS Glue写入另一个AWS账户中的S3存储桶

vr00n

我需要让AWS Glue(Account:PROD)写入另一个账户(Account:DEV)上的S3存储桶

根据http://docs.aws.amazon.com/glue/latest/dg/access-control-overview.html

基于资源的策略

其他服务(例如Amazon S3)也支持基于资源的权限策略。例如,您可以将策略附加到S3存储桶以管理对该存储桶的访问权限。AWS Glue不支持基于资源的策略。

...这意味着我做不到 arn:aws:s3::DEV-Account:S3-Bucket/*

我尝试Trusted entity使用PROD在DEV帐户上创建一个,并附加了一个策略集以访问DEV帐户上的s3存储桶。

我该怎么办?

恶作剧

我们遇到了同样的问题,并且通过将这些添加到我们的DEV存储桶策略中来解决了这个问题:

{
    "Sid": "SID",
    "Effect": "Allow",
    "Principal": {
        "AWS": "arn:aws:iam::[PROD-ACCOUNT-ID]:role/[PROD-GLUE-ROLE]"
    },
    "Action": [
        "s3:Get*",
        "s3:Put*",
        "s3:ListBucket",
        "s3:ListBucketMultipartUploads",
        "s3:ListBucketVersions",
        "s3:ListMultipartUploadParts"
    ],
    "Resource": [
        "arn:aws:s3:::[DEV-BUCKET]",
        "arn:aws:s3:::[DEV-BUCKET]/*"
    ]
}

这是PROD Glue角色([PROD-GLUE-ROLE])帐户策略:

{
    "Action": [
        "s3:Get*",
        "s3:List*"
        "s3:Put*"
    ],
    "Resource": [
        "arn:aws:s3:::[DEV-BUCKET]*"
    ],
    "Effect": "Allow"
}

之后,您应该能够使用PROD帐户中的PROD角色从DEV存储桶读取数据或向DEV存储桶写入数据:

data_frame = glue_context.create_dynamic_frame_from_options(
    connection_type='s3',
    connection_options={
        'paths':'s3://[DEV-BUCKET]/...'
    },
    format='json'
)

希望这可以帮助

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何使用承担角色将另一个AWS账户中的S3对象放入您自己的账户S3存储桶中?

将文件从 s3 存储桶复制到另一个 AWS 账户

是否可以使用存储桶策略授予对AWS S3中另一个账户拥有的对象的访问权限?

将S3存储桶从一个AWS账户复制到另一个AWS账户在传输过程中是否安全?

使用AWS Lambda将文件从一个s3存储桶移动到AWS中的另一个存储桶

AWS Lambda:如何在S3存储桶中读取CSV文件,然后将其上传到另一个S3存储桶?

如何从另一个AWS帐户访问公共S3存储桶?

AWS s3重定向到另一个s3存储桶

如何将文件从一个 AWS 账户的存储桶复制到另一个 AWS 账户的存储桶?

Shell 脚本 - 如何将最后修改的 AWS S3 对象从一个存储桶复制到另一个存储桶?

使用Node将文件从一个AWS S3存储桶复制到另一个存储桶

如何使用 AWS CLI 根据创建时间将 s3 对象从一个存储桶移动到另一个存储桶

如何从一个存储桶中获取图像并将其放入S3 Boto中的另一个存储桶中

AWS S3 静态网站:错误 400:指定的存储桶存在于另一个区域

如何使用AWS Lambda将S3对象备份到另一个帐户的存储桶中?

Python 中的 AWS Lambda 将新文件复制到另一个 s3 存储桶

如何将文件(从 aws s3 存储桶复制)附加到 Linux 中的另一个文件,

AWS CloudFormation:如何为另一个Lambda代码从另一个AWS账户中指定存储桶?

R-如何将文件从一个位置复制并粘贴到s3存储桶中的另一个位置(使用aws.s3)?

AWS S3 复制 - 一个源存储桶到多个目标存储桶

在另一个 AWS 账户中克隆 CodeCommit 存储库

如何使用 Lambda 将文件从一个文件夹移动到同一 AWS S3 存储桶中的另一个文件夹?

S3存储桶策略,用于设置引用URL可读的文件夹,以及仅对AWS用户可用的另一个文件夹

尝试使用 node.js 和 exec + aws cli 将所有文件从一个 S3 存储桶移动到另一个存储桶

如何利用Shell脚本和AWS CLI每天自动将文件从一个S3存储桶复制到另一个存储桶?

AWS lambda 在同一个 aws 账户中担任角色以访问 S3

通过PUT触发AWS Lambda到单独账户中的s3存储桶

AWS S3默认加密可以使用另一个账户拥有的KMS密钥吗?

如何使用Android SDK在AWS S3存储桶中创建一个空文件夹?