使用 IAM 角色授权 COPY、UNLOAD、CREATE EXTERNAL FUNCTION 和 CREATE EXTERNAL SCHEMA 操作 - Amazon Redshift

使用 IAM 角色授权 COPY、UNLOAD、CREATE EXTERNAL FUNCTION 和 CREATE EXTERNAL SCHEMA 操作

您可使用 COPY 命令将数据加载(或导入)到 Amazon Redshift,使用 UNLOAD 命令从 Amazon Redshift 卸载(或导出)数据。您可以使用 CREATE EXTERNAL FUNCTION 命令创建用户定义的函数,这些函数从 AWS Lambda 调用函数。

在使用 Amazon Redshift Spectrum 时,您要使用 CREATE EXTERNAL SCHEMA 命令来指定包含您的数据的 Simple Storage Service(Amazon S3)存储桶的位置。当您运行 COPY、UNLOAD 或 CREATE EXTERNAL SCHEMA 命令时,会提供安全凭证。这些凭证授权您的 Amazon Redshift 集群在目标目的地 [如 Simple Storage Service(Amazon S3)存储桶] 中读取或写入数据。

运行 CREATE EXTERNAL FUNCTION 时,您可以使用 IAM 角色参数提供安全凭证。这些凭证授权您的 Amazon Redshift 集群从 AWS Lambda 调用 Lambda 函数。提供安全凭证的首选方法是指定一个 AWS Identity and Access Management (IAM) 角色。对于 COPY 和 UNLOAD,您可以提供临时凭证。有关创建 IAM 角色的信息,请参阅授权 Amazon Redshift 代表您访问 AWS 服务

如果用户需要在 AWS Management Console 之外与 AWS 交互,则需要编程式访问权限。授予编程式访问权限的方法取决于访问 AWS 的用户类型。

要向用户授予编程式访问权限,请选择以下选项之一。

哪个用户需要编程式访问权限? 目的 方式

人力身份

(在 IAM Identity Center 中管理的用户)

使用临时凭证签署向 AWS CLI、AWS SDK 或 AWS API 发出的编程请求。

按照您希望使用的界面的说明进行操作。

IAM 使用临时凭证签署向 AWS CLI、AWS SDK 或 AWS API 发出的编程请求。 按照《IAM 用户指南》将临时凭证用于 AWS 资源中的说明进行操作。
IAM

(不推荐使用)

使用长期凭证签署向 AWS CLI、AWS SDK 或 AWS API 发出的编程请求。

按照您希望使用的界面的说明进行操作。

使用 IAM 角色的步骤如下所示:

  • 创建要与您的 Amazon Redshift 集群结合使用的 IAM 角色。

  • 将 IAM 角色与集群关联。

  • 在调用 COPY、UNLOAD、CREATE EXTERNAL SCHEMA 或 CREATE EXTERNAL FUNCTION 命令时包含 IAM 角色的 ARN。