设置统一 AWS 访问
Overview
某些 Atlas 功能(包括 Data Federation 和静态加密 )使用 AWS IAM 角色 进行身份验证。当 Atlas 访问 AWS 服务时,将扮演 IAM 角色。
如果您拥有 Project Owner
角色,则可为 Atlas 帐户设置假定的 IAM 角色,以便与 Atlas Administration API 或 Atlas UI 一起使用。Atlas 仅支持 AWS 的统一访问。
必需的访问权限
要设置统一 AWS 访问权限,您必须对项目拥有 Organization Owner
(组织所有者)或 Project Owner
(项目所有者)访问权限。
先决条件
一个 Atlas 帐户。
步骤
在 Atlas 中创建新的 AWS IAM 角色。
要使用 Atlas CLI 创建 AWS IAM 角色,请运行以下命令:
atlas cloudProviders accessRoles aws create [options]
要了解有关命令语法和参数的更多信息,请参阅Atlas CLI AtlascloudProviders accessRolesAmazon Web Services create 的 文档。
保存由命令返回的 AtlasAWSAccountArn
和 AtlasAssumedRoleExternalId
字段值,以便下一步使用。
修改 AWS IAM 角色信任策略。
登录 AWS 管理控制台。
导航到 Identity and Access Management (IAM)服务。
从左侧导航栏中选择 Roles 。
单击角色列表中您希望用于 Atlas 访问的现有 IAM 角色。
选择 Trust Relationships 标签页。
单击 Edit trust relationship 按钮。
编辑 Policy Document。添加包含以下内容的新
Statement
对象。注意
将突出显示的行替换为上一步返回的值。
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "AWS":"<atlasAWSAccountArn>" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "sts:ExternalId":"<atlasAssumedRoleExternalId>" } } } ] } 单击 Update Trust Policy 按钮。
授权新的 IAM 角色。
要使用 Atlas CLI 授权 AWS IAM 角色,请运行以下命令:
atlas cloudProviders accessRoles aws authorize <roleId> [options]
要了解有关命令语法和参数的更多信息,请参阅Atlas CLI AtlascloudProviders accessRolesAmazon Web Services 的 文档。
如果命令成功,您就可以在配置使用 AWS 的 Atlas 服务时使用 RoleID
值。
向 cloudProviderAccess
端点发送 POST 请求。
使用 API 终端节点创建新的 AWS IAM 角色。Atlas 将使用此角色对您的 AWS 帐户进行身份验证。
保存返回的字段值 atlasAWSAccountArn
和 atlasAssumedRoleExternalId
,以便在下一步中使用。
修改 AWS IAM 角色信任策略。
登录 AWS 管理控制台。
导航至 Identity and Access Management (IAM) 服务。
从左侧导航栏中选择 Roles 。
单击角色列表中您希望用于 Atlas 访问的现有 IAM 角色。
选择 Trust Relationships 标签页。
单击 Edit trust relationship 按钮。
编辑 Policy Document。添加包含以下内容的新
Statement
对象。注意
将突出显示的行替换为上一步返回的值。
{ "Version":"2012-10-17", "Statement":[ { "Effect":"Allow", "Principal":{ "AWS":"<atlasAWSAccountArn>" }, "Action":"sts:AssumeRole", "Condition":{ "StringEquals":{ "sts:ExternalId":"<atlasAssumedRoleExternalId>" } } } ] } 单击 Update Trust Policy 按钮。
授权新创建的 IAM 角色。
使用 API 端点授权和配置新的 IAM 假定角色 ARN 。如果 API 调用成功,则可以在配置使用 AWS 的 Atlas 服务时使用 roleId
值。
启动 AWS IAM 访问权限的设置程序
在 Atlas 中,转到 Project Integrations(项目设置)页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
在 Projects(项目)菜单旁边,展开 Options(选项)菜单,然后单击 Integrations(项目设置)。
显示“项目集成”页面。
设置 AWS IAM 访问权限。
单击 AWS IAM Role Access 面板中的 Configure 按钮。
注意
如果您已配置一个或多个角色,则该按钮将显示为 Edit。
单击 Authorize an AWS IAM Role 按钮。
通读 Overview 说明,然后单击 Next。
如果要创建一个新的 AWS IAM 角色供 Atlas 使用,请使用用 AWS CLI 创建新角色过程。如果您想要为 Atlas 授权现有 AWS IAM 角色,请使用为现有角色添加信任关系 过程。
使用 AWS CLI 创建新角色
单击 Create New Role with the AWS CLI 展开下一部分。
复制 JSON 文本并将其保存到名为
role-trust-policy.json
的文件中。在文本框中输入新的 AWS IAM 角色名称。
如果您尚未安装 AWS 命令行界面 (CLI),请参阅文档。如果已安装 AWS CLI,请继续执行下一步。
复制 CLI 命令并将其输入命令提示符。
如果成功,CLI 命令将返回一个 JSON 文档,其中包含有关新创建的 AWS IAM 角色的信息。找到名为 Arn 的字段,并将其复制到 Atlas 模态窗口中标有 Enter the Role ARN 的文本框中。
单击 Validate and Finish(连接)。
为现有角色添加信任关系
单击 Add Trust Relationships to an Existing Role 展开下一部分。
复制 JSON 信任关系文本。
在 AWS Web 控制台中,导航至 IAM 仪表盘的 Roles 部分。
单击要授权的角色。
选择 Trust relationships 标签页。
单击 Edit trust relationship 按钮。
将现有文本替换为您在步骤 2 中复制的 JSON 文本。
单击 Update Trust Policy(连接)。
复制角色 ARN,并将其粘贴到 Atlas 模态窗口中标有 Enter the Role ARN 的文本框中。
单击 Validate and Finish(连接)。
恢复授权过程
如果取消了通过 Atlas 授权待使用 AWS IAM 角色的过程,您可以从中断处恢复。
在 Atlas 中,转到 Project Integrations(项目设置)页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
在 Projects(项目)菜单旁边,展开 Options(选项)菜单,然后单击 Integrations(项目设置)。
显示“项目集成”页面。
取消对假定 IAM 角色的授权
您可以通过 Atlas Administration API 或 Atlas 用户界面取消对 Atlas 帐户中现有 AWS IAM 角色的授权。
注意
在取消授权之前,请务必从 IAM 角色中删除任何相关的 Atlas 服务。
要使用 Atlas CLI 取消对 AWS IAM 角色的授权,请运行以下命令:
atlas cloudProviders accessRoles aws deauthorize <roleId> [options]
要了解有关命令语法和参数的更多信息,请参阅Atlas CLI AtlascloudProviders accessRolesAmazon Web Services deauthorize 的 文档。
使用 API 文档所描述的 DELETE
API 端点。
在 Atlas 中,转到 Project Integrations(项目设置)页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
在 Projects(项目)菜单旁边,展开 Options(选项)菜单,然后单击 Integrations(项目设置)。
显示“项目集成”页面。
管理 AWS IAM 角色
要使用 Atlas CLI 授权 AWS IAM 角色,请运行以下命令:
atlas cloudProviders accessRoles aws authorize <roleId> [options]
要了解有关命令语法和参数的更多信息,请参阅Atlas CLI AtlascloudProviders accessRolesAmazon Web Services 的 文档。
您可以使用 API 管理 AWS IAM 角色。
要导航到 Atlas AWS IAM Role Access 屏幕:
在 Atlas 中,转到 Project Integrations(项目设置)页面。
如果尚未显示,请从导航栏上的 Organizations 菜单中选择包含所需项目的组织。
如果尚未显示,请从导航栏的Projects菜单中选择所需的项目。
在 Projects(项目)菜单旁边,展开 Options(选项)菜单,然后单击 Integrations(项目设置)。
显示“项目集成”页面。
配置 Atlas AWS IAM Role Access(AWS IAM 角色访问权限)。
单击 AWS IAM Role Access 面板中的 Configure 按钮。
注意
如果您已配置一个或多个角色,则该按钮将显示为 Edit。
可以在 Atlas AWS IAM Role Access 屏幕上执行以下操作:
查看授权的 AWS IAM 角色列表。
角色列表显示角色的 ARN、其创建时间以及配置为使用该角色的所有 Atlas 服务。
授权 AWS IAM 角色。
单击 Authorize an AWS IAM Role 按钮。
注意
如果正在进行授权,则关联的角色旁边会有一个 Resume 按钮。
有关详细说明,请参阅设置统一 AWS 访问。
取消对 AWS IAM 角色的授权。
单击角色旁边的 Delete 按钮。
注意
在取消授权之前,请务必从 IAM 角色中删除任何相关的 Atlas 服务。
查看 AWS IAM 角色的详细信息。
单击角色旁边的省略号 (...) 图标并选择 View Role Details。