【问题标题】:Athena queries between tables in different accounts不同账户中表之间的 Athena 查询
【发布时间】:2022-04-29 11:50:00
【问题描述】:

我可以使用两个不同的 IAM 角色单独访问两个不同的 Athena 表,因为每个角色位于不同的账户中。

有没有办法运行从两者中提取的单个查询(即 INNER JOIN)?

【问题讨论】:

  • 嘿@aidan.plenert.macdonald 你得到答案了吗?
  • @AadityaChauhan 不幸的是,此时不能使用 IAM 角色来完成,因为您不能同时承担两个角色并获得特权的超集。但一位同事声称,他通过使用对不同账户开放的存储桶策略成功地做到了这一点。

标签: amazon-iam amazon-athena


【解决方案1】:

在底层,Athena 表数据位于 S3 存储桶中

Athena 支持跨账户 S3 存储桶访问。

假设您分别拥有 Account A 和 B 以及 Athena 表 TableA 和 TableB。

从 AccountA Athena 运行查询的步骤(访问跨账户数据):

  1. 提供对 AccountB S3 存储桶策略的 AccountA IAM 角色读取访问权限 (TableB 数据所在的位置)。

  2. 在AccountA Athena中创建TableB,参考S3中的bucket数据 帐户 B。

  3. 在 AccountA 中使用 TableA & 和 TableB 并进行内部联接

参考(跨账户访问):https://aws.amazon.com/athena/faqs/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-11-07
    • 1970-01-01
    • 2020-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-14
    • 1970-01-01
    相关资源
    最近更新 更多