使用 ARNs、存取點別名或虛擬託管式 URIs 參考一般用途儲存貯體的存取點 - Amazon Simple Storage Service

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

使用 ARNs、存取點別名或虛擬託管式 URIs 參考一般用途儲存貯體的存取點

為一般用途儲存貯體建立存取點之後,您可以使用這些端點來執行許多操作。參考一般用途儲存貯體的存取點時,您可以使用 Amazon Resource Name (ARNs)、存取點別名或虛擬託管樣式的 URI。

一般用途儲存貯體 ARNs存取點

存取點具有 Amazon Resource Name (ARN)。一般用途儲存貯ARNs 的存取點類似於儲存貯體 ARNs,但會明確輸入和編碼存取點的 AWS 區域 和存取點擁有者的 AWS 帳戶 ID。如需 ARN 的詳細資訊,請參閱《AWS 一般參考》中的 Amazon Resource Name (ARN)

存取點 ARNs使用以下格式:

arn:aws:s3:region:account-id:accesspoint/resource
  • arn:aws:s3:us-west-2:123456789012:accesspoint/test 代表區域 us-west-2 中由帳戶 123456789012 所擁有名為 test 的存取點。

  • arn:aws:s3:us-west-2:123456789012:accesspoint/* 代表區域 us-west-2 中帳戶 123456789012 下的所有存取點。

透過存取點存取之物件的 ARNs 使用以下格式:

arn:aws:s3:region:account-id:accesspoint/access-point-name/object/resource
  • arn:aws:s3:us-west-2:123456789012:accesspoint/test/object/unit-01 代表透過區域 us-west-2 中由帳戶 123456789012 所擁有名為 test 之存取點存取的物件 unit-01

  • arn:aws:s3:us-west-2:123456789012:accesspoint/test/object/* 代表區域 us-west-2 之帳戶 123456789012 中名為 test 之存取點的所有物件。

  • arn:aws:s3:us-west-2:123456789012:accesspoint/test/object/unit-01/finance/* 代表區域 us-west-2 帳戶 123456789012 中名為 test 的存取點之具有字首 unit-01/finance/ 的所有物件。

一般用途儲存貯體別名的存取點

當您為一般用途儲存貯體建立存取點時,Amazon S3 會自動產生可用於資料存取的別名,而非 Amazon S3 儲存貯體名稱。您可以針對存取點資料平面操作中使用此存取點別名,而不是 Amazon Resource Name (ARN)。如需這些操作的清單,請參閱 一般用途儲存貯體相容性的存取點

存取點別名是在與 Amazon S3 儲存貯體相同的命名空間內建立的。此別名會自動產生且無法變更。存取點別名符合有效 Amazon S3 儲存貯體名稱的所有要求,並由下列部分組成:

access point prefix-metadata-s3alias

注意

存取點別名會保留該 -s3alias 尾碼,且該尾碼不能用於儲存貯體或存取點名稱。如需 Amazon S3 儲存貯體命名規則的詳細資訊,請參閱一般用途儲存貯體命名規則

一般用途儲存貯體別名使用案例和限制的存取點

為一般用途儲存貯體採用存取點時,您可以使用存取點別名名稱,而不需要大量的程式碼變更。

當您為一般用途儲存貯體建立存取點時,Amazon S3 會自動產生存取點別名名稱,如下列範例所示。若要執行此命令,請以您自己的資訊取代 user input placeholders

aws s3control create-access-point --bucket amzn-s3-demo-bucket1 --name my-access-point --account-id 111122223333 { "AccessPointArn": "arn:aws:s3:region:111122223333:accesspoint/my-access-point", "Alias": "my-access-point-aqfqprnstn7aefdfbarligizwgyfouse1a-s3alias" }

您可以在任何資料平面操作中使用此存取點別名,而不是 Amazon S3 儲存貯體名稱。如需這些操作的清單,請參閱 一般用途儲存貯體相容性的存取點

下列 get-object命令 AWS CLI 範例使用儲存貯體的存取點別名來傳回指定物件的相關資訊。若要執行此命令,請以您自己的資訊取代 user input placeholders

aws s3api get-object --bucket my-access-point-aqfqprnstn7aefdfbarligizwgyfouse1a-s3alias --key dir/my_data.rtf my_data.rtf { "AcceptRanges": "bytes", "LastModified": "2020-01-08T22:16:28+00:00", "ContentLength": 910, "ETag": "\"00751974dc146b76404bb7290f8f51bb\"", "VersionId": "null", "ContentType": "text/rtf", "Metadata": {} }

存取點別名限制

  • 客戶無法設定別名。

  • 存取點上的別名無法刪除、修改或停用。

  • 您可以在某些資料平面操作中使用此存取點別名,而不是 Amazon S3 儲存貯體名稱。如需這些操作的清單,請參閱 一般用途儲存貯體與 S3 操作的相容性存取點.

  • Amazon S3 控制平面操作無法使用存取點別名。如需 Amazon S3 控制平面操作的清單,請參閱 Amazon Simple Storage Service API 參考中的 Amazon S3 控制

  • 您無法在 Amazon S3 主控台中使用 S3 存取點別名作為移動操作的來源或目的地。

  • 別名無法在 AWS Identity and Access Management (IAM) 政策中使用。

  • 別名不能用作 S3 伺服器存取日誌的記錄目的地。

  • 別名不能用作 AWS CloudTrail 日誌的記錄目的地。

  • Amazon SageMaker GroundTruth 不支援存取點別名。

虛擬託管樣式的 URI

一般用途儲存貯體的存取點僅支援virtual-host-style定址。在虛擬託管樣式的 URI 中,存取點名稱 AWS 帳戶和 AWS 區域 是 URL 中網域名稱的一部分。如需虛擬託管的詳細資訊,請參閱 一般用途儲存貯體的虛擬託管

存取點的虛擬託管樣式 URI 使用以下格式:

https://access-point-name-account-id.s3-accesspoint.region.amazonaws.com
注意
  • 如果您的存取點名稱包含破折號 (-) 字元,請在 URL 中加入破折號,並在帳戶 ID 之前插入另一個破折號。例如,若要使用區域 finance-docs 中由 123456789012 帳戶所擁有名為 us-west-2 的存取點,則適當的 URL 是 https://finance-docs-123456789012.s3-accesspoint.us-west-2.amazonaws.com

  • S3 存取點不支援透過 HTTP 存取。存取點僅支援透過 HTTPS 的安全存取。