View a markdown version of this page

存取 Amazon S3 的私有子網路的範例政策 - Amazon EMR

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

存取 Amazon S3 的私有子網路的範例政策

在私有子網路中啟動 Amazon EMR 叢集時,您必須提供通往 Amazon S3 的路由。根據預設,Amazon S3 的閘道端點允許存取所有儲存貯體。您可以建立 VPC 端點政策來限制對特定儲存貯體的存取;如果您這麼做,則需要新增政策陳述式,以允許存取 Amazon EMR 所需的特定 S3 儲存貯體。如需 Amazon S3 端點的詳細資訊,請參閱 Amazon S3 的閘道端點

您必須決定符合業務需求的政策限制。此頁面詳細說明 Amazon EMR 成功啟動叢集所需的儲存貯體,後面接著授予這些儲存貯體存取權的範例 VPC 端點政策。

必要儲存貯體

Amazon Linux AMI 儲存庫

所有 Amazon EMR 叢集都需要存取 Amazon Linux 儲存庫。特定的儲存貯體 ARNs 取決於使用的 Amazon Linux 版本,這取決於使用的 Amazon EMR 版本:

  • Amazon EMR 5.29.0 及更早版本:AL1 儲存庫arn:aws:s3:::packages.region.amazonaws.com.rproxy.govskope.caarn:aws:s3:::repo.region.amazonaws.com

  • Amazon EMR 5.30.0 到 6.15.0:AL2 儲存庫arn:aws:s3:::amazonlinux.region.amazonaws.com.rproxy.govskope.caarn:aws:s3:::amazonlinux-2-repos-region

  • Amazon EMR 7.0.0 及更新版本:AL2023 儲存庫 arn:aws:s3:::al2023-repos-region-de612dc2

Amazon EMR 儲存庫

Amazon EMR 5.22.0 及更新版本需要存取 EMR 儲存貯體 arn:aws:s3:::repo.region.emr.amazonaws.com

Amazon EMR 8.0.0 和更新版本以及 Amazon EMR Spark 8.0.0 和更新版本需要存取 EMR 執行個體資料儲存貯體arn:aws:s3:::aws157-instance-data-0-prod-regionarn:aws:s3:::aws157-instance-data-1-prod-region

在 ap-southeast-2 區域中,這些儲存貯體改為命名為 arn:aws:s3:::aws157-instance-data-bucket-0-prod-ap-southeast-2arn:aws:s3:::aws157-instance-data-bucket-1-prod-ap-southeast-2

記錄

如果您啟用叢集記錄,則需要建立叢集時指定為日誌目的地之儲存貯體的 PUT 許可,以及系統日誌儲存貯體。在 us-east-1 區域中,儲存貯體 ARN 為 arn:aws:s3:::aws157-logs-prod;對於所有其他區域,儲存貯體 ARN 為 arn:aws:s3:::aws157-logs-prod-region

持續應用程式使用者介面

使用 Amazon EMR 5.25.0 或更新版本,若要啟用對持久性應用程式使用者介面的一鍵式存取,您必須允許 Amazon EMR 存取收集應用程式日誌的系統儲存貯體 arn:aws:s3:::prod.region.appinfo.src。如需詳細資訊,請參閱在 Amazon EMR 中檢視持久性應用程式使用者介面

範例 政策

下列範例政策提供在 us-east-2 區域的私有子網路中啟動 Amazon EMR 8.0.0 叢集所需的許可,並啟用記錄和持久性應用程式使用者介面。

{ "Version":"2012-10-17", "Statement": [ { "Sid": "AmazonLinux2023AMIRepositoryAccess", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::al2023-repos-us-east-2-de612dc2/*" ] }, { "Sid": "EmrRepositoryAccess", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::repo.us-east-2.emr.amazonaws.com/*", "arn:aws:s3:::aws157-instance-data-0-prod-us-east-2/*", "arn:aws:s3:::aws157-instance-data-1-prod-us-east-2/*" ] }, { "Sid": "EnableClusterLogs", "Effect": "Allow", "Principal": "*", "Action": [ "s3:Put*" ], "Resource": [ "arn:aws:s3:::aws157-logs-prod-us-east-2/*", "arn:aws:s3:::my-logs-bucket/*" ] }, { "Sid": "EnableApplicationHistory", "Effect": "Allow", "Principal": "*", "Action": [ "s3:Put*", "s3:Get*", "s3:Create*", "s3:Abort*", "s3:List*" ], "Resource": [ "arn:aws:s3:::prod.us-east-2.appinfo.src/*" ] } ] }