对 Lake Formation 使用服务相关角色 - AWS Lake Formation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

对 Lake Formation 使用服务相关角色

AWS Lake Formation 使用 AWS Identity and Access Management (IAM) 服务相关角色。服务相关角色是一种与 Lake Formation 直接关联的独特类型的 IAM 角色。服务链接的角色由 Lake Formation 和包括服务代表调用其他AWS服务所需的所有权限。

与服务相关的角色使设置 Lake Formation ,因为您不必创建角色并手动添加必要的权限。 Lake Formation 定义其服务链接角色的权限,除非另外定义,否则仅 Lake Formation 可以承担其角色。定义的权限包括信任策略和权限策略,以及不能附加到任何其他 IAM 实体的权限策略。

此服务链接角色信任以下服务担任此角色:

  • lakeformation.amazonaws.com

适用于 Lake Formation 的服务相关角色权限

Lake Formation 使用名为的服务链接角色 AWSServiceRoleForLakeFormationDataAccess。此角色提供一组 Amazon Simple Storage Service (人Amazon S3)权限启用 Lake Formation 集成服务(如 Amazon Athena)以访问注册位置。当您注册数据湖位置时,您必须提供具有所需 Amazon S3 对该位置的读取/写入权限。而不是使用所需的来创建角色 Amazon S3 权限,您可以使用此服务链接角色。

您第一次将服务链接角色命名为要为其注册路径的角色、服务链接角色和新 IAM 策略是代表您创建的。 Lake Formation 将路径添加到内联策略,并将其附加到服务链接的角色。当您使用服务链接角色注册后续路径时, Lake Formation 将路径添加到现有策略。

尝试: 以数据湖管理员身份登录时,请注册数据湖位置。然后,在 IAM 控制台,搜索角色 AWSServiceRoleForLakeFormationDataAccess 并查看随附的政策。

例如,在您注册后, s3://my-kinesis-test/logs, Lake Formation 创建以下内联策略并将其附加到 AWSServiceRoleForLakeFormationDataAccess.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "LakeFormationDataAccessPermissionsForS3", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:DeleteObject" ], "Resource": [ "arn:aws:s3:::my-kinesis-test/logs/*" ] }, { "Sid": "LakeFormationDataAccessPermissionsForS3ListBucket", "Effect": "Allow", "Action": [ "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::my-kinesis-test" ] } ] }

需要以下权限才能使用此服务链接角色注册位置:

  • iam:CreateServiceLinkedRole

  • iam:PutRolePolicy

数据湖管理员通常具有这些权限。