Amazon Redshift 连接

Redshift 连接类型支持与 Redshift 的集成。

验证 Amazon Redshift

可以使用 redshift_connector 支持的任何身份验证方法进行身份验证,例如通过直接凭据、IAM 身份验证或使用身份提供程序 (IdP) 插件。

默认连接 ID

默认连接 ID 为 redshift_default

配置连接

主机(可选)

指定 Amazon Redshift 集群端点。

模式(可选)

指定 Amazon Redshift 数据库名称。

登录名(可选)

指定用于与 Amazon Redshift 进行身份验证的用户名。

密码(可选)

指定用于与 Amazon Redshift 进行身份验证的密码。

端口(可选)

指定用于与 Amazon Redshift 交互的端口。

额外配置(可选)

指定 Amazon Redshift 连接中可以使用的额外参数(以 JSON 字典形式)。有关支持的参数的完整列表,请参阅 redshift_connector 的文档

如果您通过 URI 配置连接,请确保 URI 的所有组成部分都经过 URL 编码。

示例

数据库身份验证

  • 模式: Dev

  • 主机: redshift-cluster-1.123456789.us-west-1.redshift.amazonaws.com

  • 登录名: awsuser

  • 密码: ********

  • 端口: 5439

凭据身份验证

使用连接中的凭据连接到 Amazon Redshift。端口是必需的。如果未提供,则使用默认端口 (5439)。这假设所有其他连接字段(例如登录名)为空。在这种方法中,cluster_identifier 将替换 HostPort,以便唯一标识集群。

IAM 身份验证

使用在 hook 初始化时给定的 AWS IAM 配置文件检索用于连接到 Amazon Redshift 的临时密码。端口是必需的。如果未提供,则使用默认端口 (5439)。还必须提供登录名模式。这假设所有其他连接字段为空。在这种方法中,如果未在额外配置中设置 cluster_identifier,它将由连接中的 Host 字段自动推断。 有关 AWS IAM 身份验证以生成数据库用户凭据的更多详细信息

  • 额外配置:

{
  "iam": true,
  "cluster_identifier": "redshift-cluster-1",
  "port": 5439,
  "region": "us-east-1",
  "db_user": "awsuser",
  "database": "dev",
  "profile": "default"
}

如果要将 IAM 与 Amazon Redshift 无服务器一起使用,则需要将 is_serverless 设置为 true 并提供 serverless_work_group。您还可以设置 serverless_token_duration_seconds 以指定返回的临时密码过期之前的秒数;最小值为 900 秒,最大值为 3600 秒,默认值为 3600 秒。

  • 额外配置:

{
  "iam": true,
  "is_serverless": true,
  "serverless_work_group": "default",
  "serverless_token_duration_seconds": 3600,
  "port": 5439,
  "region": "us-east-1",
  "database": "dev",
  "profile": "default"
}

此条目是否有帮助?