将 Lake Formation 与 IAM Identity Center 连接
您必须先完成以下步骤,然后才能使用 IAM Identity Center 管理身份以使用 Lake Formation 授予对数据目录资源的访问权限。您可以使用 Lake Formation 控制台或 Amazon CLI 创建 IAM Identity Center 集成。
- Amazon Web Services 管理控制台
-
将 Lake Formation 与 IAM Identity Center 连接
登录 Amazon Web Services 管理控制台 并打开 Lake Formation 控制台 (https://console.aws.amazon.com/lakeformation/)。
在左侧导航窗格中,选择 IAM Identity Center 集成。
(可选)输入一个或多个有效 Amazon Web Services 账户 ID、组织 ID 和/或组织单位 ID,以允许外部账户访问数据目录资源。当 IAM Identity Center 用户或组尝试访问 Lake Formation 托管式数据目录资源时,Lake Formation 会代入 IAM 角色来授权访问元数据。如果 IAM 角色属于一个没有 Amazon Glue 资源策略和 Amazon RAM 资源共享的外部账户,那么即使 IAM Identity Center 用户和组拥有 Lake Formation 权限,也无法访问资源。
Lake Formation 使用 Amazon Resource Access Manager(Amazon RAM)服务与外部账户和组织共享资源。Amazon RAM 向被授予者账户发送邀请,以便其接受或拒绝资源共享。
有关更多信息,请参阅接受来自 Amazon RAM 的资源共享邀请。
注意
Lake Formation 允许外部账户中的 IAM 角色代表 IAM Identity Center 用户和组作为访问数据目录资源的载体角色,但只能在所有者账户内授予对数据目录资源的权限。如果您尝试在外部账户中向 IAM Identity Center 用户和组授予对数据目录资源的权限,那么 Lake Formation 会引发以下错误:“Cross-account grants are not supported for the principal.”
(可选)在创建 Lake Formation 集成屏幕上,指定第三方应用程序的 ARN,这些应用程序可以访问已向 Lake Formation 注册的 Amazon S3 位置中的数据。Lake Formation 根据有效权限以 Amazon STS 令牌的形式向已注册的 Amazon S3 位置提供缩小范围的临时凭证,以便授权应用程序可以代表用户访问数据。
选择提交。
Lake Formation 管理员完成这些步骤并创建集成后,IAM Identity Center 属性将显示在 Lake Formation 控制台中。完成这些任务后,Lake Formation 将成为启用了 IAM Identity Center 的应用程序。控制台中的属性包括集成状态。集成完成后,状态显示为
Success。此状态指示 IAM Identity Center 配置是否已完成。
- Amazon CLI
-
-
以下示例演示如何创建 Lake Formation 与 IAM Identity Center 的集成。您还可以指定该应用程序的
Status(ENABLED、DISABLED)。aws lakeformation create-lake-formation-identity-center-configuration \ --catalog-id<123456789012>\ --instance-arn<arn:aws:sso:::instance/ssoins-112111f12ca1122p>\ --share-recipients '[{"DataLakePrincipalIdentifier": "<123456789012>"}, {"DataLakePrincipalIdentifier": "<555555555555>"}]' \ --external-filtering '{"AuthorizedTargets": ["<app arn1>", "<app arn2>"], "Status": "ENABLED"}' -
以下示例演示如何查看 Lake Formation 与 IAM Identity Center 的集成。
aws lakeformation describe-lake-formation-identity-center-configuration --catalog-id<123456789012>
-