選取您的 Cookie 偏好設定

我們使用提供自身網站和服務所需的基本 Cookie 和類似工具。我們使用效能 Cookie 收集匿名統計資料,以便了解客戶如何使用我們的網站並進行改進。基本 Cookie 無法停用,但可以按一下「自訂」或「拒絕」以拒絕效能 Cookie。

如果您同意,AWS 與經核准的第三方也會使用 Cookie 提供實用的網站功能、記住您的偏好設定,並顯示相關內容,包括相關廣告。若要接受或拒絕所有非必要 Cookie,請按一下「接受」或「拒絕」。若要進行更詳細的選擇,請按一下「自訂」。

設定對 Amazon S3 儲存貯體的存取權 - Amazon Aurora

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

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

設定對 Amazon S3 儲存貯體的存取權

如果要將資料匯出至 Amazon S3,請為 PostgreSQL DB 叢集提供許可,以便存取用來放置檔案的 Amazon S3 儲存貯體。

若要執行此操作,請使用下列程序。

透過 IAM 角色授與 PostgreSQL 資料庫叢集的 Amazon S3 存取權
  1. 建立 IAM 政策。

    此政策可提供儲存貯體及物件許可,讓 PostgreSQL 資料庫叢集能夠存取 Amazon S3。

    在建立此原則的過程中,請採取下列步驟:

    1. 在政策中納入下列必要動作,以允許從 PostgreSQL 資料庫叢集叢集傳輸檔案至 Amazon S3 儲存貯體:

      • s3:PutObject

      • s3:AbortMultipartUpload

    2. 包含用於識別 Amazon S3 儲存貯體和物件的 Amazon Resource Name (ARN)。存取 Amazon S3 的 ARN 格式為︰arn:aws:s3:::amzn-s3-demo-bucket/*

    如需如何建立 Aurora PostgreSQL IAM 政策的詳細資訊,請參閱建立並使用 IAM 政策進行 IAM 資料庫存取。另請參閱《IAM 使用者指南》中的教學:建立和連接您的第一個客戶受管原則

    下列 AWS CLI 命令會建立名為 rds-s3-export-policy的 IAM 政策,並包含這些選項。它授予名為 amzn-s3-demo-bucket 的儲存貯體存取權。

    警告

    建議您在設有可存取特定儲存貯體之端點原則的私有 VPC 中設定資料庫。如需詳細資訊,請參閱《Amazon VPC 使用者指南》中的對 Amazon S3 使用端點政策

    強烈建議您不要建立具有全資源存取權的政策。這個存取權可能會對資料安全構成威脅。如果您建立的原則能為 S3:PutObject 提供使用 "Resource":"*" 存取所有資源的存取權,則具有匯出許可的使用者可將資料匯出至您帳戶中的所有儲存貯體。此外,使用者可以將資料匯出至您 AWS 區域內可公開寫入的所有儲存貯體

    政策建立後,請記下政策的 Amazon Resource Name (ARN)。在後續步驟中將政策附加至 IAM 角色時,您會需要此 ARN。

    aws iam create-policy --policy-name rds-s3-export-policy --policy-document '{ "Version": "2012-10-17", "Statement": [ { "Sid": "s3export", "Action": [ "s3:PutObject*", "s3:ListBucket", "s3:GetObject*", "s3:DeleteObject*", "s3:GetBucketLocation", "s3:AbortMultipartUpload" ], "Effect": "Allow", "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*" ] } ] }'
  2. 建立 IAM 角色。

    您會執行此動作,使得 Aurora PostgreSQL 可以代表您擔任此 IAM 角色,以存取您的 Amazon S3 儲存貯體。如需更多詳細資訊,請參閱《IAM 使用者指南》中的建立角色以將許可委派給 IAM 使用者

    建議您在資源型政策中使用 aws:SourceArnaws:SourceAccount 全域條件內容金鑰,將服務的許可限定於特定資源。這是防止混淆代理人問題最有效的方式。

    如果同時使用這兩個全域條件內容索引鍵,且 aws:SourceArn 值包含帳戶 ID,則在相同政策陳述式中使用 aws:SourceAccount 值和 aws:SourceArn 值中的帳戶時,必須使用相同的帳戶 ID。

    • 如果您想要跨服務存取單一資源,請使用 aws:SourceArn

    • 如果您想要允許該帳戶中的任何資源與跨服務使用相關聯,請使用 aws:SourceAccount

    在政策中,請務必搭配資源的完整 ARN 來使用 aws:SourceArn 全域條件內容金鑰。下列範例示範如何使用 AWS CLI 命令來建立名為 的角色rds-s3-export-role

    範例

    對於 Linux、 macOS或 Unix:

    aws iam create-role \ --role-name rds-s3-export-role \ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333", "aws:SourceArn": "arn:aws:rds:us-east-1:111122223333:cluster:dbname" } } } ] }'

    在 Windows 中:

    aws iam create-role ^ --role-name rds-s3-export-role ^ --assume-role-policy-document '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "rds.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "111122223333", "aws:SourceArn": "arn:aws:rds:us-east-1:111122223333:cluster:dbname" } } } ] }'
  3. 將您建立的 IAM 政策附加至您建立的 IAM 角色。

    下列 AWS CLI 命令會將先前建立的政策連接至名為 rds-s3-export-role. Replace 的角色,your-policy-arn取代為您在先前步驟中記下的政策 ARN。

    aws iam attach-role-policy --policy-arn your-policy-arn --role-name rds-s3-export-role
  4. 將 IAM 角色新增至資料庫叢集。您可以使用 AWS Management Console 或 來執行此操作 AWS CLI,如下所述。

使用主控台為 PostgreSQL 資料庫叢集新增 IAM 角色
  1. 登入 AWS Management Console ,並在 https://console.aws.amazon.com/rds/:// 開啟 Amazon RDS 主控台。

  2. 選擇 PostgreSQL 資料庫叢集名稱以顯示其詳細資訊。

  3. Connectivity & security (連線能力與安全性) 標籤上的 Manage IAM roles (管理 IAM 角色) 區段中,選擇要在 Add IAM roles to this instance (新增 IAM 角色到此執行個體) 下新增的角色。

  4. 請在 Feature (功能) 下,選擇 s3Export

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

主控台

使用主控台為 PostgreSQL 資料庫叢集新增 IAM 角色
  1. 登入 AWS Management Console ,並在 https://console.aws.amazon.com/rds/:// 開啟 Amazon RDS 主控台。

  2. 選擇 PostgreSQL 資料庫叢集名稱以顯示其詳細資訊。

  3. Connectivity & security (連線能力與安全性) 標籤上的 Manage IAM roles (管理 IAM 角色) 區段中,選擇要在 Add IAM roles to this instance (新增 IAM 角色到此執行個體) 下新增的角色。

  4. 請在 Feature (功能) 下,選擇 s3Export

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

使用 CLI 為 PostgreSQL 資料庫叢集新增 IAM 角色
  • 使用下列命令將角色新增至名為 my-db-cluster 的 PostgreSQL 資料庫叢集。將 your-role-arn 替換為您前個步驟記下的角色 ARN。使用 s3Export 作為 --feature-name 選項的值。

    範例

    對於 Linux、 macOS或 Unix:

    aws rds add-role-to-db-cluster \ --db-cluster-identifier my-db-cluster \ --feature-name s3Export \ --role-arn your-role-arn \ --region your-region

    在 Windows 中:

    aws rds add-role-to-db-cluster ^ --db-cluster-identifier my-db-cluster ^ --feature-name s3Export ^ --role-arn your-role-arn ^ --region your-region

使用 CLI 為 PostgreSQL 資料庫叢集新增 IAM 角色
  • 使用下列命令將角色新增至名為 my-db-cluster 的 PostgreSQL 資料庫叢集。將 your-role-arn 替換為您前個步驟記下的角色 ARN。使用 s3Export 作為 --feature-name 選項的值。

    範例

    對於 Linux、 macOS或 Unix:

    aws rds add-role-to-db-cluster \ --db-cluster-identifier my-db-cluster \ --feature-name s3Export \ --role-arn your-role-arn \ --region your-region

    在 Windows 中:

    aws rds add-role-to-db-cluster ^ --db-cluster-identifier my-db-cluster ^ --feature-name s3Export ^ --role-arn your-role-arn ^ --region your-region
隱私權網站條款Cookie 偏好設定
© 2025, Amazon Web Services, Inc.或其附屬公司。保留所有權利。