跳到主要内容
跳到主要内容

AWS 认证接入

当访问云上的服务时,我们需要提供访问服务所需要的凭证,以便服务能够通过各云厂商 IAM 的认证。

现在 Doris 访问 AWS 服务时,能够支持两种类型的身份认证。

使用 Catalog 属性认证

Catalog 支持填写基本的 Credentials 属性,比如:

  1. 访问 S3 时,可以使用 s3.endpoint,s3.access_key,s3.secret_key。

  2. 访问 Glue 时,可以使用 glue.endpoint,glue.access_key,glue.secret_key。

以 Iceberg Catalog 访问 Glue 为例,我们可以填写以下属性访问在 Glue 上托管的表:

CREATE CATALOG glue PROPERTIES (
"type"="iceberg",
"iceberg.catalog.type" = "glue",
"glue.endpoint" = "https://glue.us-east-1.amazonaws.com",
"glue.access_key" = "ak",
"glue.secret_key" = "sk"
);

使用系统属性认证

用于运行在 AWS 资源 (如 EC2 实例) 上的应用程序。可以避免硬编码写入 Credentials,能够增强数据安全性。

当我们在创建 Catalog 时,未填写 Credentials 属性,那么此时会使用 DefaultAWSCredentialsProviderChain,它能够读取系统环境变量或者 instance profile 中配置的属性。

配置环境变量和系统属性的方式可以参考:AWS CLI

  • 可以选择的配置的环境变量有:AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_SESSION_TOKENAWS_ROLE_ARNAWS_WEB_IDENTITY_TOKEN_FILE

  • 另外,还可以使用aws configure直接配置 Credentials 信息,同时在~/.aws目录下生成 credentials 文件。