如何使用 Lake Formation 与外部帐户共享表

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

我需要与外部帐户共享在 Glue 中创建的表。 实际上,这看起来很简单,但由于某种原因,共享表没有显示在目标帐户的表列表中。

这是我在源帐户中所做的事情:

  1. 在 Glue 中创建数据库和表。
  2. 创建了“数据湖位置”,指向存储数据的存储桶。
  3. 撤销了 IAMallowedPrincipals(否则它不允许我授予访问权限)
  4. 通过选择和描述授予外部帐户(12 位数字)许可。

在目标账户中:

  1. 前往资源访问管理器并接受共享资源。

现在,该表应该在目标帐户中可见,但它不在那里。虽然我可以看到 RAM 中的共享资源。

有什么想法这里缺少什么吗? 谢谢!

amazon-web-services amazon-athena
2个回答
1
投票

进入目标账户中的LakeFormation,点击“表”,选择共享表(您可以通过“所有者账户id”找到它),然后点击“操作”和“创建资源链接”。 现在您需要为该表指定一个本地名称并选择它应驻留在哪个数据库中。 单击“创建”即可 - 您可以从 Athena 查询它。


0
投票

我面临同样的问题,资源链接已经创建,但是当我查询 Athena 时,出现以下错误

com.amazonaws.services.s3.model.AmazonS3Exception:访问被拒绝(服务:Amazon S3;状态代码:403;错误代码:AccessDenied;请求 ID:##########;S3 扩展请求 ID: ########; 代理:空),S3 扩展请求 ID:########### (存储桶:{帐户 A 中保存共享数据库和表的存储桶},密钥:{路径到共享表})
此查询针对“{资源链接数据库}”数据库运行,除非查询限定。请在我们的论坛上发布错误消息或联系客户支持并提供查询 ID:##############

你知道原因吗?

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