View a markdown version of this page

設定離線來源的 S3 存取許可 - AWS 資料庫遷移服務

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

設定離線來源的 S3 存取許可

當您建立離線來源資料提供者時,您會提供 IAM 角色 ARN (S3AccessRoleArn),允許 DMS 結構描述轉換從 S3 儲存貯體讀取 DDL 指令碼。DMS 會擔任此角色,以存取您指定之 S3 路徑的檔案。

設定離線來源的 S3 許可
  1. 使用允許 DMS 服務主體擔任的信任政策建立 IAM 角色。使用下列信任政策:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "dms.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
  2. 將許可政策連接至授予 S3 儲存貯體讀取存取權的角色。角色需要以下許可:

    必要的 S3 許可
    Action 用途
    s3:GetObject從儲存貯體讀取 DDL 指令碼檔案內容
    s3:ListBucket在指定的字首下列出物件,以探索資料夾和.sql檔案
    注意

    如果您的 S3 儲存貯體搭配 AWS KMS (SSE-KMS) 使用伺服器端加密,請將 KMS 金鑰的kms:Decrypt許可新增至 IAM 角色。如果您的儲存貯體使用預設 Amazon S3 受管加密 (SSE-S3) 或未加密,則不需要額外的許可。

    下列範例政策會將範圍限定為特定儲存貯體和字首的這些許可授予:

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket/prefix/*" }, { "Effect": "Allow", "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::amzn-s3-demo-bucket" } ] }

    amzn-s3-demo-bucket字首取代為您的儲存貯體名稱和 DDL 指令碼的路徑。

  3. 當您建立離線來源資料提供者時,請提供角色 ARN 做為 S3AccessRoleArn 參數,並提供 DDL 指令碼的 S3 位置做為 S3Path 參數。

注意

IAM 角色必須與 DMS 資源位於相同的 AWS 帳戶中。離線來源資料提供者不支援跨帳戶 S3 存取。