自动为 Amazon IAM Identity Center 创建 Amazon Redshift 角色 - Amazon Redshift
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

自动为 Amazon IAM Identity Center 创建 Amazon Redshift 角色

此特征与 Amazon IAM Identity Center 集成,让您可以根据组成员资格在 Redshift 中自动创建角色。

自动创建角色有几个好处。自动创建角色时,Redshift 会在您的 IdP 中创建具有组成员资格的角色,因此您可以避免繁琐的手动角色创建和维护。您还可以选择使用包括和排除模式来筛选映射到 Redshift 角色的组。

工作方式

当您以 IdP 用户身份登录 Redshift 时,会发生以下一系列事件:

  1. Redshift 从 IdP 那里检索您的组成员资格。

  2. Redshift 使用角色格式 idp_namespace:rolename 自动创建映射到这些组的角色。

  3. Redshift 授予您使用映射角色的权限。

每次用户登录时,都会自动创建目录中不存在但该用户所属的每个组。您可以选择设置包括和排除筛选条件,从而控制哪些 IdP 组已创建 Redshift 角色。

配置自动创建角色

使用 CREATE IDENTITY PROVIDERALTER IDENTITY PROVIDER 命令启用和配置自动角色创建。

-- Create a new IdP with auto role creation enabled CREATE IDENTITY PROVIDER <idp_name> TYPE AWSIDC NAMESPACE '<namespace>' APPLICATION_ARN 'app_arn' IAM_ROLE 'role_arn' AUTO_CREATE_ROLES TRUE; -- Enable on existing IdP ALTER IDENTITY PROVIDER <idp_name> AUTO_CREATE_ROLES TRUE; -- Disable ALTER IDENTITY PROVIDER <idp_name> AUTO_CREATE_ROLES FALSE;

筛选组

您可以选择使用 INCLUDEEXCLUDE 模式筛选映射到 Redshift 角色的 IdP 组。当模式冲突时,EXCLUDE 优先于 INCLUDE

-- Only create roles for groups with 'dev' CREATE IDENTITY PROVIDER <idp_name> TYPE AWSIDC ... AUTO_CREATE_ROLES TRUE INCLUDE GROUPS LIKE '%dev%'; -- Exclude 'test' groups ALTER IDENTITY PROVIDER <idp_name> AUTO_CREATE_ROLES TRUE EXCLUDE GROUPS LIKE '%test%';

示例

以下示例说明了如何启用自动创建角色而不进行筛选。

CREATE IDENTITY PROVIDER prod_idc TYPE AWSIDC ... AUTO_CREATE_ROLES TRUE;

以下示例包括开发组,不包括测试组。

ALTER IDENTITY PROVIDER prod_idc AUTO_CREATE_ROLES TRUE INCLUDE GROUPS LIKE '%dev%' EXCLUDE GROUPS LIKE '%test%';

最佳实践

为角色启用自动创建功能时,请考虑遵循以下最佳实践:

  • 使用 INCLUDEEXCLUDE 筛选条件来控制哪些组获得角色。

  • 定期审核角色并清理未使用的角色。

  • 利用 Redshift 角色层次结构来简化权限管理。