View a markdown version of this page

設定 - AWS HealthLake

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

設定

在本章中,您可以使用 AWS 管理主控台 來設定開始使用 AWS HealthLake 資料轉換和執行資料轉換任務所需的許可。

註冊 AWS 帳戶

若要開始使用 AWS,您需要 AWS 帳戶。如需建立 AWS 帳戶的資訊,請參閱《AWS 帳戶管理參考指南》中的 帳戶入門AWS

設定 IAM 使用者或角色以使用 HealthLake 資料轉換

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "healthlake:CreateDataTransformationProfile", "healthlake:GetDataTransformationProfile", "healthlake:UpdateDataTransformationProfile", "healthlake:PublishDataTransformationProfile", "healthlake:ListDataTransformationProfileVersions", "healthlake:UpdateProfileWithAgent", "healthlake:TransformData", "healthlake:ValidateSource", "healthlake:StartDataTransformationJob", "healthlake:DescribeDataTransformationJob", "healthlake:DeleteDataTransformationProfile", "healthlake:ListDataTransformationProfiles", "healthlake:ListDataTransformationJobs" ], "Resource": "*" } ] }

對於生產,將資源範圍限定為特定設定檔和任務 ARNs而不是 *。

設定執行資料轉換任務的許可

在執行大量資料轉換任務之前,您必須授予 HealthLake 存取來源和輸出 Amazon S3 儲存貯體的許可。若要授予 HealthLake 存取權,您可以建立 IAM 服務角色、新增允許 HealthLake 擔任該角色的信任政策,以及連接許可政策,以授予對來源資料的讀取存取權和對輸出位置的寫入存取權。

當您啟動資料轉換任務時,您可以為 DataAccessRoleArn 參數指定此角色的 Amazon Resource Name (ARN)。如需 IAM 角色和信任政策的詳細資訊,請參閱 IAM 角色

如果您已為 HealthLake 匯入或匯出任務建立資料存取角色,則可以重複使用它:為您的來源和輸出 Amazon S3 儲存貯體新增下方步驟 3 中列出的許可。

注意

此角色用於獨立轉換任務 (StartDataTransformationJob) 和複合convert-and-ingest(StartFHIRImportJob 搭配 ProfileId)。

設定資料轉換任務許可

  1. 如果您尚未建立來源和輸出 Amazon S3 儲存貯體,請建立來源和輸出。Amazon S3 儲存貯體必須與 服務位於相同的 AWS 區域,且所有選項都必須開啟封鎖公開存取。若要進一步了解,請參閱使用 Amazon S3 封鎖公開存取。必須使用客戶受管 AWS KMS 金鑰來加密任務輸出。若要進一步了解如何使用 AWS KMS 金鑰,請參閱 Amazon Key Management Service

  2. 為 HealthLake 建立資料存取服務角色,並授予 HealthLake 服務使用下列信任政策擔任該角色的許可。

    注意

    將 123456789012 取代為 AWS 您的帳戶 ID。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "healthlake.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" } } } ] }
  3. 將許可政策新增至資料存取角色,以授予對來源儲存貯體的讀取存取權、對輸出儲存貯體的寫入存取權,以及加密和解密資料所需的 AWS KMS 許可。將儲存貯體名稱和 AWS KMS 金鑰 ARN 取代為您自己的值。

    { "Version": "2012-10-17", "Statement": [ { "Sid": "ReadSourceData", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-source-bucket", "arn:aws:s3:::amzn-s3-demo-source-bucket/*" ] }, { "Sid": "WriteOutputData", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-output-bucket", "arn:aws:s3:::amzn-s3-demo-output-bucket/*" ] }, { "Sid": "KMSPermissions", "Effect": "Allow", "Action": [ "kms:Decrypt", "kms:GenerateDataKey", "kms:DescribeKey" ], "Resource": "arn:aws:kms:us-west-2:123456789012:key/your-kms-key-id" } ] }

許可說明:

  • 來源儲存貯體上的 s3:GetObject 和 s3:ListBucket: 允許 HealthLake 讀取您的輸入檔案。

  • 輸出儲存貯體上的 s3:PutObject:允許 HealthLake 寫入轉換後的 FHIR 檔案、錯誤報告、資訊清單和偏離報告。

  • 輸出儲存貯體上的 s3:GetObject 和 s3:ListBucket: 允許 HealthLake 在多步驟處理期間讀取中繼轉換結果。

  • kms:Decrypt:如果您的來源儲存貯體使用客戶受管 AWS KMS 金鑰,則允許 HealthLake 解密來源檔案。

  • kms:GenerateDataKey:允許 HealthLake 使用您在 OutputDataConfig.S3Configuration.KmsKeyId 中指定的 AWS KMS 金鑰來加密輸出檔案。 OutputDataConfig.S3Configuration.KmsKeyId.

  • kms:DescribeKey:允許 HealthLake 驗證 AWS KMS 金鑰是否有效且可存取。

重要

如果您的來源和輸出是相同的儲存貯體,您可以將 Amazon S3 陳述式合併為一個。如果他們使用不同的 AWS KMS 金鑰,請為每個金鑰 ARN 新增個別的 AWS KMS 陳述式。

提示

對於生產,請盡可能縮小資源值的範圍:指定任務使用的確切 Amazon S3 字首,而不是授予整個儲存貯體的存取權。

如需詳細資料存放區設定,請參閱設定 AWS HealthLake