配置 AWS 认证信息
StarRocks 支持通过以下三种认证鉴权方式实现与 AWS 资源的集成:Instance Profile、Assumed Role、IAM User。本文介绍在这三种认证鉴权方式下如何配置 AWS 安全凭证。
认证方式介绍
基于 Instance Profile 认证鉴权
通过 Instance Profile,您可以让 StarRocks 集群直接从所在 AWS EC2 虚拟机继承 Instance Profile 的权限。在该模式下,任何能够登录到集群的用户都可以根据 AWS IAM 策略配置,对相关的 AWS 资源执行授权范围内允许的操作(例如 AWS S3 指定 Bucket 的读写操作)。
基于 Assumed Role 认证鉴权
与 Instance Profile 的模式不同,Assumed Role 支持通过担任 AWS IAM Role 来实现对外部数据源的访问认证和鉴权。参见 AWS 官网文档代入角色。
基于 IAM User 认证鉴权
IAM User 支持通过 AWS IAM User 来实现对外部数据源的访问认证和鉴权。参见 AWS 官网文档 IAM users。
准备工作
首先,找到 StarRocks 集群所在 EC2 实例所关联的 IAM 角色(以下简称“EC2 实例关联角 色”),并获取该角色的 ARN。在使用基于 Instance Profile 的认证方式时,会用到该角色;在使用基于 Assumed Role 的认证方式时,会用到该角色及其 ARN。
下一步,根据要访问的 AWS 资源、以及与 StarRocks 集成的具体操作场景来创建 IAM 策略。IAM 策略用于声明特定 AWS 资源的一组访问权限。创建 IAM 策略后,您需要将创建好的策略添加到某个 IAM 用户或角色,从而使该 IAM 用户或角色拥有该策略中所声明的访问特定 AWS 资源的权限。
注意
您必须拥有登录 AWS IAM 控制台和编辑 IAM 用户及角色的权限才能完成上述准备工作。
关于访问特定 AWS 资源所需要创建的 IAM 策略,见如下内容:
基于 Instance Profile 认证鉴权
把声明了访问特定 AWS 资源的 IAM 策略 添加到 EC2 实例关联角色。