步骤 1:列出用户和角色的现有权限 - Amazon Lake Formation
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

步骤 1:列出用户和角色的现有权限

要开始将 Amazon Lake Formation 权限用于您的现有 Amazon Glue 数据库和表,必须先确定用户的现有权限。

重要

在开始之前,请确保您已完成 Lake Formation 入门中的任务。

使用 API 操作

使用 Amazon Identity and Access Management (IAM) ListPoliciesGrantingServiceAccess API 操作确定附加到每个主体(用户或角色)的 IAM 策略。根据结果中返回的策略,您可以确定授予主体的 IAM 权限。您必须分别为每个主体调用该 API。

以下 Amazon CLI 示例返回附加到用户 glue_user1 的策略。

aws iam list-policies-granting-service-access --arn arn:aws:iam::111122223333:user/glue_user1 --service-namespaces glue

该命令返回类似于以下内容的结果。

{ "PoliciesGrantingServiceAccess": [ { "ServiceNamespace": "glue", "Policies": [ { "PolicyType": "INLINE", "PolicyName": "GlueUserBasic", "EntityName": "glue_user1", "EntityType": "USER" }, { "PolicyType": "MANAGED", "PolicyArn": "arn:aws:iam::aws:policy/AmazonAthenaFullAccess", "PolicyName": "AmazonAthenaFullAccess" } ] } ], "IsTruncated": false }

使用 Amazon Web Services Management Console

您还可以在 Amazon Identity and Access Management (IAM) 控制台的用户或角色摘要页面上的访问顾问选项卡中查看此信息:

  1. 通过以下网址打开 IAM 控制台:https://console.aws.amazon.com/iam/

  2. 在导航窗格中,选择用户角色

  3. 在列表中选择一个名称以打开其摘要页面,然后选择访问顾问选项卡。

  4. 检查每个策略以确定每个用户有权访问的数据库、表和操作的组合。

    请记住,在此过程中,除了检查用户之外,还要检查角色,因为数据处理作业可能会代入访问数据的角色。

使用 Amazon CloudTrail

确定您的现有权限的另一种方法是在 Amazon CloudTrail 中查找 Amazon Glue API 调用,其中日志的 additionaleventdata 字段包含 insufficientLakeFormationPermissions 条目。此条目列出了用户需要对其具有 Lake Formation 权限才能执行相同操作的数据库和表。

这些是数据访问日志,因此不能保证它们会生成用户及其权限的完整列表。我们建议选择较宽的时间范围来捕获大多数用户的数据访问模式,例如几周或几个月。

有关更多信息,请参阅《Amazon CloudTrail 用户指南》中的使用 CloudTrail 事件历史记录查看事件

接下来,您可以设置 Lake Formation 权限以匹配 Amazon Glue 权限。请参阅步骤 2:设置等效的 Lake Formation 权限