本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
设置 AWS HealthLake
在本章中,您将使用 AWS Management Console 来设置开始使用 AWS HealthLake 和创建数据存储所需的权限。要设置创建数据存储的权限,您需要创建一个既是数据湖管理员又 HealthLake 是管理员的 IAM 用户或角色。您可以在 Lake Formation 中将此用户设置为数据 AWS 湖管理员。数据湖管理员授予 Lake Formation 访问使用亚马逊 Athena 查询数据存储所需的资源的权限。创建 HealthLake数据存储后,您可以设置导入和导出文件的权限。
主题
注册获取 AWS 账户
如果您没有 AWS 账户,请完成以下步骤来创建一个。
报名参加 AWS 账户
打开https://portal.aws.amazon.com/billing/注册。
按照屏幕上的说明操作。
在注册时,将接到电话或收到短信,要求使用电话键盘输入一个验证码。
当您注册时 AWS 账户,就会创建AWS 账户根用户一个。根用户有权访问该账户中的所有 AWS 服务 和资源。作为最佳安全实践,请为用户分配管理访问权限,并且只使用根用户来执行需要根用户访问权限的任务。
AWS 注册过程完成后会向您发送一封确认电子邮件。您可以随时前往 https://aws.amazon.com/
创建具有管理访问权限的用户
注册后,请保护您的安全 AWS 账户 AWS 账户根用户 AWS IAM Identity Center,启用并创建管理用户,这样您就不会使用 root 用户执行日常任务。
保护你的 AWS 账户根用户
-
选择 Root 用户并输入您的 AWS 账户 电子邮件地址,以账户所有者的身份登录。AWS Management Console
在下一页上,输入您的密码。 要获取使用根用户登录方面的帮助,请参阅《AWS 登录 用户指南》中的 Signing in as the root user。
-
为您的根用户启用多重身份验证(MFA)。
有关说明,请参阅 I A M 用户指南中的为 AWS 账户 根用户启用虚拟 MFA 设备(控制台)。
创建具有管理访问权限的用户
-
启用 IAM Identity Center。
有关说明,请参阅《AWS IAM Identity Center 用户指南》中的 Enabling AWS IAM Identity Center。
-
在 IAM Identity Center 中,为用户授予管理访问权限。
有关使用 IAM Identity Center 目录 作为身份源的教程,请参阅《用户指南》 IAM Identity Center 目录中的使用默认设置配置AWS IAM Identity Center 用户访问权限。
以具有管理访问权限的用户身份登录
-
要使用您的 IAM Identity Center 用户身份登录,请使用您在创建 IAM Identity Center 用户时发送到您的电子邮件地址的登录网址。
有关使用 IAM Identity Center 用户登录的帮助,请参阅AWS 登录 用户指南中的登录 AWS 访问门户。
将访问权限分配给其他用户
-
在 IAM Identity Center 中,创建一个权限集,该权限集遵循应用最低权限的最佳做法。
有关说明,请参阅《AWS IAM Identity Center 用户指南》中的 Create a permission set。
-
将用户分配到一个组,然后为该组分配单点登录访问权限。
有关说明,请参阅《AWS IAM Identity Center 用户指南》中的 Add groups。
配置要使用的 IAM 用户或角色 HealthLake(IAM 管理员)
角色:IAM 管理员
可以创建 IAM 用户和角色并可以添加数据湖管理员的用户。
本主题中的这些步骤必须由 IAM 管理员执行。
要将您的 HealthLake 数据存储连接到 Athena,您需要创建一个既是数据湖管理员又是管理员的 IAM 用户或角色。 HealthLake 此新用户或角色授予通过 AWS Lake Formation 访问数据存储中资源的权限,并将AmazonHealthLakeFullAccess AWS 托管策略添加到其用户或角色中。
重要
身为数据湖管理员的 IAM 用户或角色无法创建新的数据湖管理员。要添加其他数据湖管理员,您必须使用已被授予AdministratorAccess访问权限的 IAM 用户或角色。
创建管理员
-
将
AmazonHealthlakeFullAccessIAM AWS 托管策略添加到组织中的用户或角色。如果您不熟悉创建 IAM 用户,请参阅 IA M 用户指南中的创建 I AWS AM 用户和 IAM 策略概述。
-
向 IAM 用户或角色授予访问 AWS Lake Formation 的访问权限。
-
向组织中的用户或角色添加以下 IAM AWS 托管策略:
AWSLakeFormationDataAdmin注意
该
AWSLakeFormationDataAdmin政策允许访问所有 AWS Lake Formation 资源。建议您始终使用完成任务所需的最低权限。有关更多信息,请参阅《IAM 用户指南》中的 IAM 最佳实操。
-
-
向用户或角色添加以下内联策略。有关更多信息,请参阅 IAM 用户指南中的内联策略。
有关该AWSLakeFormationDataAdmin政策的更多信息,请参阅 Lake Formation 开发者指南中的 La AWS ke Formation 角色和 IAM 权限参考。
在 Lake Formation 中添加用户或角色作为数据湖管理员(IAM 管理员)
注意
如果您要集成,则必须执行此步骤SQL 索引和查询。
接下来,IAM 管理员必须将上一步中创建的用户或角色添加为 Lake Formation 中的数据湖管理员。
将 IAM 用户或角色添加为数据湖管理员
-
打开 AWS Lake Formation 控制台:https://console.aws.amazon.com/lakeformation/
注意
如果这是你第一次访问 Lake Formation,则会出现一个 “欢迎来到 Lake Form ation” 对话框,要求你定义 Lake Formation 管理员。
-
将新用户或角色分配为 AWS Lake Formation 数据湖管理员。
-
选项 1:如果你收到了 “欢迎来到 Lake Formation” 对话框。
-
选择添加其他 AWS 用户或角色。
-
选择向下箭头 (▼)。
-
选择你想同时成为 Lake Formation 管理员的管理员。 HealthLake
-
选择开始。
-
-
选项 2:使用导航窗格 (☰)。
-
选择导航窗格 (☰)。
-
在 “权限” 下,选择 “管理角色和任务”。
-
在数据湖管理员部分中,选择选择管理员。
-
在 “管理数据湖管理员” 对话框中,选择向下箭头 (▼)。
-
接下来,选择或搜索您也想成为 Lake Formation HealthLake 管理员的管理员用户或角色。
-
选择保存。
-
-
-
将默认安全设置更改为由 Lake Formation 管理。 HealthLake 数据存储资源需要由 Lake Formation 管理,而不是 IAM 管理。要进行更新,请参阅 La AWS ke Formation 开发者指南中的更改默认权限模型。
创建 S3 存储桶
要将 FHIR R4 数据导入 AWS HealthLake,建议使用两个 Amazon S3 存储桶。Amazon S3 输入存储桶保存要导入和从该存储桶 HealthLake 读取的 FHIR 数据。Amazon S3 输出存储桶存储导入任务的处理结果并向该存储桶 HealthLake 写入(日志)。
注意
根据 AWS Identity and Access Management (IAM) 政策,您的 Amazon S3 存储桶名称必须是唯一的。有关更多信息,请参阅《Amazon Simple Storage Service 用户指南》中的存储桶命名规则。
出于本指南的目的,我们在本节后面设置导入权限时指定以下 Amazon S3 输入和输出存储桶。
-
输入存储桶:
arn:aws:s3:::amzn-s3-demo-source-bucket -
输出桶:
arn:aws:s3:::amzn-s3-demo-logging-bucket
有关更多信息,请参阅《Amazon S3 用户指南》中的创建存储桶。
创建数据存储
HealthLake 数据存储是驻留在单个 AWS 区域内的 FHIR R4 数据的存储库。一个 AWS 账户可以有零个或多个数据存储。 HealthLake 支持两种数据存储授权策略。
重要提示
在创建 HealthLake 数据存储之前,请查看 AWS 组织中可能限制 HealthLake 资源创建或管理的服务控制策略 (SCPs)。 SCPs 即使您的 IAM 权限设置正确,也可能阻止成功创建 HealthLake 数据存储。
创建 HealthLake 数据存储时会生成 A。datastoreID在本节稍后设置导入权限datastoreID时,必须使用。
要创建 HealthLake 数据存储,请参阅创建 HealthLake 数据存储。
为导入任务设置权限
在将文件导入数据存储之前,必须授予访问您在 Amazon S3 中的输入和输出存储桶的 HealthLake 权限。要授予 HealthLake 访问权限,您需要为创建一个 IAM 服务角色 HealthLake,向该角色添加信任策略以授予 HealthLake 代入角色权限,并向角色附加权限策略以授予其访问您的 Amazon S3 存储桶的权限。
创建导入任务时,您可以为指定该角色的 Amazon 资源名称 (ARN)。DataAccessRoleArn有关 IAM 角色和信任策略的更多信息,请参阅 IAM 角色。
设置权限后,您就可以通过导入任务将文件导入数据存储了。有关更多信息,请参阅 启动 FHIR 导入任务。
设置导入权限
-
如果还没有,请为输出日志文件创建一个目标 Amazon S3 存储桶。Amazon S3 存储桶必须与服务位于同一 AWS 区域,并且必须为所有选项开启阻止公共访问。要了解更多信息,请参阅使用 Amazon S3 阻止公共访问。还必须使用亚马逊拥有或客户拥有的 KMS 密钥进行加密。要了解有关使用 KMS 密钥的更多信息,请参阅 Amazon 密钥管理服务。
-
使用以下信任策略为其创建数据访问服务角色, HealthLake 并向该 HealthLake 服务授予代入该角色的权限。 HealthLake 使用它来写入输出 Amazon S3 存储桶。
-
向数据访问角色添加权限策略,使其能够访问 Amazon S3 存储桶。
amzn-s3-demo-bucket替换为存储桶的名称。
为导出任务设置权限
在从数据存储中导出文件之前,您必须授予访问您在 Amazon S3 中的输出存储桶的 HealthLake 权限。要授予 HealthLake 访问权限,您需要为创建一个 IAM 服务角色HealthLake,向该角色添加信任策略以授予 HealthLake 代入角色权限,并向角色附加权限策略以授予其访问您的 Amazon S3 存储桶的权限。
如果您已经为创建了角色 HealthLake,则可以重复使用该角色,并向其授予本主题中列出的导出 Amazon S3 存储桶的额外权限。要了解有关 IAM 角色和信任策略的更多信息,请参阅 IAM 策略和权限。
重要提示
HealthLake 支持本机 SDK 导出请求和 FHIR R4 操作$export。根据您决定使用的导出 API,必须提供单独的 IAM 操作。这允许您分别处理allow和deny权限。如果您想限制 HealthLake 软件开发工具包和 FHIR REST API 的导出,则必须对单独的 IAM 操作应用拒绝权限。如果您授予用户完全访问权限,则无需更改 IAM 用户的权限 HealthLake。
使用 AWS CLI 和 AWS SDKs:
以下本机 HealthLake 操作可用于使用 AWS CLI 和从数据存储中导出数据 AWS SDKs:
-
StartFHIRExportJob -
DescribeFHIRExportJob -
ListFHIRExportJobs
使用 FHIR APIs:
以下 IAM 操作可用于从数据存储中导出 HealthLake 数据以及使用 FHIR $export 操作取消(删除)导出任务:
POST:
-
StartFHIRExportJobWithPost
GET:
-
StartFHIRExportJobWithGet -
DescribeFHIRExportJobWithGet -
GetExportedFile
DELETE:
-
CancelFHIRExportJobWithDelete
设置权限的用户或角色必须具有创建角色、创建策略和将策略附加到角色的权限。以下 IAM 策略授予这些权限。
设置导出权限
-
如果还没有,请为要从数据存储中导出的数据创建一个目标 Amazon S3 存储桶。Amazon S3 存储桶必须与服务位于同一 AWS 区域,并且必须为所有选项开启阻止公共访问。要了解更多信息,请参阅使用 Amazon S3 阻止公共访问。还必须使用亚马逊拥有或客户拥有的 KMS 密钥进行加密。要了解有关使用 KMS 密钥的更多信息,请参阅 Amazon 密钥管理服务。
-
如果您尚未创建数据访问服务角色,请使用以下信任策略为 HealthLake 该 HealthLake 服务授予代入该角色的权限。 HealthLake使用它来写入输出 Amazon S3 存储桶。如果您已经在中创建了一个存储桶为导入任务设置权限,则可以在下一步中重复使用该存储桶并向其授予访问您的 Amazon S3 存储桶的权限。
-
向数据访问角色添加权限策略,使其能够访问您的输出 Amazon S3 存储桶。
amzn-s3-demo-bucket替换为存储桶的名称。
安装 AWS CLI
AWS CLI 是描述和列出 HealthLake 导入和导出任务属性所必需的。您也可以使用索取此信息 HealthLake SDKs。
要设置 AWS CLI
-
下载并配置 AWS CLI。有关说明,请参阅AWS Command Line Interface 用户指南中的以下主题。
-
在 AWS CLI
config文件中,为管理员添加已命名的配置文件。运行 AWS CLI 命令时使用此配置文件。根据最低权限的安全原则,我们建议您创建一个单独的 IAM 角色,该角色具有特定于正在执行的任务的权限。有关已命名配置文件的更多信息,请参阅《AWS Command Line Interface 用户指南》中的配置和凭证文件设置。[default] aws_access_key_id =default access key IDaws_secret_access_key =default secret access keyregion =region -
请使用以下
help命令验证设置:aws healthlake help如果配置 AWS CLI 正确,您将看到的简要说明 AWS HealthLake 和可用命令的列表。