將 Amazon RDS for Db2 資料庫執行個體與 Amazon S3 整合 - Amazon Relational Database Service

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

將 Amazon RDS for Db2 資料庫執行個體與 Amazon S3 整合

您可以在 Amazon RDS for Db2 資料庫執行個體與具有 Amazon RDS預存程序的 Amazon Simple Storage Service (Amazon S3) 儲存貯體之間傳輸檔案。如需詳細資訊,請參閱Amazon RDS for Db2 預存程序參考

注意

資料庫執行個體與 Amazon S3 儲存貯體必須在相同的 AWS 區域中。

若要讓 RDS for Db2 與 Amazon S3 整合,您的資料庫執行個體必須能夠存取RDS您的 for Db2 所在的 Amazon S3 儲存貯體。如果您目前沒有 S3 儲存貯體,請建立儲存貯體

步驟 1:建立 IAM 政策

在此步驟中,您會建立具有將檔案從 Amazon S3 儲存貯體傳輸至資料庫執行個體所需許可的 AWS Identity and Access Management (IAM) RDS 政策。此步驟假設您已建立 S3 儲存貯體。如需詳細資訊,請參閱《Amazon S3 使用者指南》中的建立儲存貯體。

在您建立政策之前,請記住下列資訊:

  • 儲存貯體的 Amazon Resource Name (ARN)

  • 如果您的儲存貯體使用 ,ARN則為 AWS Key Management Service (AWS KMS) 金鑰 SSE-KMS 或 SSE-S3 加密。

建立包含下列許可IAM的政策:

"kms:GenerateDataKey", "kms:Decrypt", "s3:PutObject", "s3:GetObject", "s3:AbortMultipartUpload", "s3:ListBucket", "s3:DeleteObject", "s3:GetObjectVersion", "s3:ListMultipartUploadParts"

您可以使用 AWS Management Console 或 AWS Command Line Interface () 建立IAM政策AWS CLI。

建立IAM政策以允許 Amazon 存取您的 Amazon S3 儲存貯RDS體
  1. 登入 AWS Management Console 並在 開啟IAM主控台https://console.aws.amazon.com/iam/

  2. 在導覽窗格中,選擇政策

  3. 選擇建立政策,然後選擇 JSON

  4. 依服務新增動作。若要將檔案從 Amazon S3 儲存貯體傳輸到 Amazon RDS,您必須選取儲存貯體許可和物件許可。

  5. 展開 Resources (資源)。您必須指定儲存貯體和物件資源。

  6. 選擇 Next (下一步)

  7. 針對政策名稱,輸入此政策的名稱。

  8. (選用) 針對描述,輸入此政策的描述。

  9. 選擇 建立政策

建立IAM政策以允許 Amazon 存取您的 Amazon S3 儲存貯RDS體
  1. 執行 create-policy 命令。在下列範例中,s3_bucket_nameiam_policy_name和 取代為IAM政策的名稱,以及您的 RDS for Db2 資料庫所在的 Amazon S3 儲存貯體名稱。

    用於 Linux, macOS、 或 Unix:

    aws iam create-policy \ --policy-name iam_policy_name \ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt", "s3:PutObject", "s3:GetObject", "s3:AbortMultipartUpload", "s3:ListBucket", "s3:DeleteObject", "s3:GetObjectVersion", "s3:ListMultipartUploadParts" ], "Resource": [ "arn:aws:s3:::s3_bucket_name/*", "arn:aws:s3:::s3_bucket_name" ] } ] }'

    用於 Windows:

    aws iam create-policy ^ --policy-name iam_policy_name ^ --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:PutObject", "s3:GetObject", "s3:AbortMultipartUpload", "s3:ListBucket", "s3:DeleteObject", "s3:GetObjectVersion", "s3:ListMultipartUploadParts" ], "Resource": [ "arn:aws:s3:::s3_bucket_name/*", "arn:aws:s3:::s3_bucket_name" ] } ] }'
  2. 建立政策後,請注意政策ARN的 。您需要 ARN的 步驟 2:建立IAM角色並連接您的IAM政策

如需建立IAM政策的相關資訊,請參閱IAM《 使用者指南》中的建立IAM政策

步驟 2:建立IAM角色並連接您的IAM政策

此步驟假設您已在 中建立IAM政策步驟 1:建立 IAM 政策。在此步驟中,您會為RDS適用於 Db2 資料庫執行個體的 建立IAM角色,然後將IAM政策連接至角色。

您可以使用 AWS Management Console 或 為資料庫執行個體建立 IAM角色 AWS CLI。

建立角色並將IAM政策連接至該IAM角色
  1. 登入 AWS Management Console 並在 開啟IAM主控台https://console.aws.amazon.com/iam/

  2. 在導覽窗格中,選擇 Roles (角色)。

  3. 選擇 Create Role (建立角色)。

  4. 針對信任的實體類型,選取 AWS 服務

  5. 針對服務或使用案例,選取 RDS,然後選取 RDS 將角色新增至資料庫

  6. 選擇 Next (下一步)

  7. 針對許可政策,搜尋並選取您建立IAM的政策名稱。

  8. 選擇 Next (下一步)

  9. Role name (角色名稱) 中,輸入角色名稱。

  10. (選用) 在 Description (說明) 中,輸入新角色的說明。

  11. 選擇建立角色

建立角色並將IAM政策連接至該IAM角色
  1. 執行 create-role 命令。在下列範例中,iam_role_name將 取代為IAM角色的名稱。

    用於 Linux, macOS、 或 Unix:

    aws iam create-role \ --role-name iam_role_name \ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'

    用於 Windows:

    aws iam create-role ^ --role-name iam_role_name ^ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }'
  2. 建立角色之後,請注意角色ARN的 。您需要 ARN的 步驟 3:將您的IAM角色新增至RDS適用於 Db2 資料庫執行個體的

  3. 執行 attach-role-policy 命令。在下列範例中,iam_policy_arn將 取代為您在 中建立ARNIAM的政策的 步驟 1:建立 IAM 政策iam_role_name 將 取代IAM為您剛建立的角色名稱。

    用於 Linux, macOS、 或 Unix:

    aws iam attach-role-policy \ --policy-arn iam_policy_arn \ --role-name iam_role_name

    用於 Windows:

    aws iam attach-role-policy ^ --policy-arn iam_policy_arn ^ --role-name iam_role_name

如需詳細資訊,請參閱IAM《 使用者指南》中的建立角色以將許可委派給IAM使用者

步驟 3:將您的IAM角色新增至RDS適用於 Db2 資料庫執行個體的

在此步驟中,您將IAM角色新增至RDS適用於 Db2 資料庫執行個體的 。請注意以下要求:

  • 您必須能夠存取已連接必要 Amazon S3 許可政策IAM的角色。

  • 您一次只能將一個IAM角色與 RDS for Db2 資料庫執行個體建立關聯。

  • 您的 RDS for Db2 資料庫執行個體必須處於可用狀態。

您可以使用 AWS Management Console 或 將IAM角色新增至資料庫執行個體 AWS CLI。

將IAM角色新增至RDS適用於 Db2 資料庫執行個體的
  1. 登入 AWS Management Console 並在 開啟 Amazon RDS主控台https://console.aws.amazon.com/rds/

  2. 在導覽窗格中,選擇 Databases (資料庫)。

  3. 選擇適用於 Db2 資料庫執行個體名稱RDS的 。

  4. 連線與安全索引標籤上,向下捲動至頁面底部的管理IAM角色區段。

  5. 對於新增IAM角色到此執行個體,請選擇您在 中建立的角色步驟 2:建立IAM角色並連接您的IAM政策

  6. 針對功能,選擇 S3_INTEGRATION

  7. 選擇 Add role (新增角色)

    S3_INTEGRATION 功能已新增至資料庫執行個體IAM的角色。

若要將IAM角色新增至RDS適用於 Db2 資料庫執行個體的 ,請執行 add-role-to-db-instance 命令。在下列範例中,iam_role_arndb_instance_name和 取代為資料庫執行個體的名稱IAM,以及您在 中建立ARN的角色步驟 2:建立IAM角色並連接您的IAM政策

用於 Linux, macOS、 或 Unix:

aws rds add-role-to-db-instance \ --db-instance-identifier db_instance_name \ --feature-name S3_INTEGRATION \ --role-arn iam_role_arn \

用於 Windows:

aws rds add-role-to-db-instance ^ --db-instance-identifier db_instance_name ^ --feature-name S3_INTEGRATION ^ --role-arn iam_role_arn ^

若要確認角色已成功新增至RDS您的 for Db2 資料庫執行個體,請執行 describe-db-instances 命令。在下列範例中,將 取代db_instance_name為資料庫執行個體的名稱。

用於 Linux, macOS、 或 Unix:

aws rds describe-db-instances \ --filters "Name=db-instance-id,Values=db_instance_name" \ --query 'DBInstances[].AssociatedRoles'

用於 Windows:

aws rds describe-db-instances ^ --filters "Name=db-instance-id,Values=db_instance_name" ^ --query 'DBInstances[].AssociatedRoles'

此命令會產生類似下列範例的輸出:

[ [ { "RoleArn": "arn:aws:iam::0123456789012:role/rds-db2-s3-role", "FeatureName": "S3_INTEGRATION", "Status": "ACTIVE" } ] ]