使用 Amazon S3 Object Lambda 存取點
注意
從 2025 年 11 月 7 日開始,S3 Object Lambda 僅適用於目前正在使用該服務的現有客戶,以及特定 AWS 合作夥伴網路 (APN) 合作夥伴。如果您想要使用服務,請在 2025 年 11 月 7 日之前註冊。對於類似於 S3 Object Lambda 的功能,請在此處進一步了解 - Amazon S3 Object Lambda 可用性變更。
透過 Amazon S3 Object Lambda 存取點發出請求,與透過其他存取點發出請求的運作方式相同。如需如何透過存取點發出請求的詳細資訊,請參閱 將 Amazon S3 Access Points 用於一般用途儲存貯體。您可以透過 Object Lambda 存取點發出請求,方法是使用 Amazon S3 主控台、AWS Command Line Interface (AWS CLI)、AWS SDK 或 Amazon S3 REST API。
重要
Object Lambda 存取點的 Amazon Resource Name (ARN) 使用 s3-object-lambda 的服務名稱。因此,Object Lambda 存取點 ARN 以 arn:aws::s3-object-lambda 為開頭 (而不是 arn:aws::s3),其會與其他存取點一起使用。
如何為 Object Lambda 存取點尋找 ARN
若要將 Object Lambda 存取點與 AWS CLI 或者 AWS SDK 搭配使用,就必須知道 Object Lambda 存取點的 Amazon Resource Name (ARN)。下列範例示範如何使用 Amazon S3 主控台或 AWS CLI,來尋找 Object Lambda 存取點的 ARN。
使用主控台為 Object Lambda 存取點尋找 ARN
登入 AWS 管理主控台,並開啟位於 https://console.aws.amazon.com/s3/
的 Amazon S3 主控台。 -
在左側的導覽窗格中,選擇 Object Lambda Access Points (Object Lambda 存取點)。
-
選擇要複製 ARN 的 Object Lambda 存取點旁的選項按鈕。
-
選擇 Copy ARN (複製 ARN)。
使用 AWS CLI 為 Object Lambda 存取點尋找 ARN
-
若要擷取與 AWS 帳戶 相關聯的 Object Lambda 存取點的清單,請執行以下命令。執行命令之前,請將帳戶 ID
取代為 AWS 帳戶 ID。111122223333aws s3control list-access-points-for-object-lambda --account-id111122223333 -
檢閱命令輸出,尋找要使用的 Object Lambda 存取點 ARN。先前命令的輸出看起來應與下列範例類似。
{ "ObjectLambdaAccessPointList": [ { "Name": "my-object-lambda-ap", "ObjectLambdaAccessPointArn": "arn:aws:s3-object-lambda:us-east-1:111122223333:accesspoint/my-object-lambda-ap" }, ... ] }
如何針對您的 S3 儲存貯體 Object Lambda 存取點使用儲存貯體樣式別名
在您建立 Object Lambda 存取點時,Amazon S3 會自動為您的 Object Lambda 存取點產生唯一的別名。您可以針對存取點資料平面操作在請求中使用此別名,而不是使用 Amazon S3 儲存貯體名稱或 Object Lambda 存取點 Amazon Resource Name (ARN)。如需這些操作的清單,請參閱 存取點相容性。
Object Lambda 存取點別名是在與 Amazon S3 儲存貯體相同的命名空間內建立的。此別名會自動產生且無法變更。針對現有的 Object Lambda 存取點,系統會自動指派別名以供使用。Object Lambda 存取點別名符合有效 Amazon S3 儲存貯體名稱的所有要求,並由下列部分組成:
Object Lambda Access Point
name prefix-metadata--ol-s3
注意
Object Lambda 存取點別名會保留該 --ol-s3 尾碼,且該尾碼不能用於儲存貯體或 Object Lambda 存取點名稱。如需 Amazon S3 儲存貯體命名規則的詳細資訊,請參閱一般用途儲存貯體命名規則。
下列範例顯示了名稱為 之 Object Lambda 存取點的 ARN 和 Object Lambda 存取點別名。my-object-lambda-access-point
-
ARN –
arn:aws:s3-object-lambda:region:account-id:accesspoint/my-object-lambda-access-point -
Object Lambda 存取點別名 –
my-object-lambda-acc-1a4n8yjrb3kda96f67zwrwiiuse1a--ol-s3
使用 Object Lambda 存取點時,您可以使用 Object Lambda 存取點別名,而不需要大量變更程式碼。
刪除 Object Lambda 存取點時,Object Lambda 存取點別名會變成非作用中且未佈建狀態。
如何為 Object Lambda 存取點尋找別名
使用主控台為 Object Lambda 存取點尋找別名
登入 AWS 管理主控台,並開啟位於 https://console.aws.amazon.com/s3/
的 Amazon S3 主控台。 -
在左側的導覽窗格中,選擇 Object Lambda Access Points (Object Lambda 存取點)。
-
針對您要使用的 Object Lambda 存取點,請複製 Object Lambda 存取點別名值。
建立 Object Lambda 存取點時,Amazon S3 會自動產生 Object Lambda 存取點別名,如下列範例命令所示。若要執行此命令,請以您自己的資訊取代 。如需詳細了解如何使用 AWS CLI 建立 Object Lambda 存取點,請參閱 使用 AWS CLI 建立 Object Lambda 存取點。user input
placeholders
aws s3control create-access-point-for-object-lambda --account-id111122223333--namemy-object-lambda-access-point--configuration file://my-olap-configuration.json{ "ObjectLambdaAccessPointArn": "arn:aws:s3:region:111122223333:accesspoint/my-access-point", "Alias": { "Value": "my-object-lambda-acc-1a4n8yjrb3kda96f67zwrwiiuse1a--ol-s3", "Status": "READY" } }
產生的 Object Lambda 存取點別名會有兩個欄位:
-
Value欄位是 Object Lambda 存取點的別名。 -
Status欄位是 Object Lambda 存取點別名的狀態。若狀態為PROVISIONING,表示 Amazon S3 正在佈建 Object Lambda 存取點別名,且別名尚不可供使用。若狀態為READY,則表示 Object Lambda 存取點別名已成功佈建並可供使用。
如需詳細了解 REST API 中的 ObjectLambdaAccessPointAlias 資料類型,請參閱《Amazon Simple Storage Service API 參考》中的 ObjectLambdaAccessPointAlias 和 CreateAccessPointForObjectLambda。
如何使用 Object Lambda 存取點別名
您可以針對 存取點相容性 所列操作,使用 Object Lambda 存取點別名,而非 Amazon S3 儲存貯體名稱。
get-bucket-location 命令的下列 AWS CLI 範例使用儲存貯體的存取點別名來傳回儲存貯體所在的 AWS 區域。若要執行此命令,請以您自己的資訊取代 。user input
placeholders
aws s3api get-bucket-location --bucketmy-object-lambda-acc-w7i37nq6xuzgax3jw3oqtifiusw2a--ol-s3{ "LocationConstraint": "us-west-2" }
若請求中的 Object Lambda 存取點別名無效,則會傳回 InvalidAccessPointAliasError 錯誤碼。如需有關 InvalidAccessPointAliasError 的詳細資訊,請參閱《Amazon Simple Storage Service API 參考》中的錯誤代碼清單。
Object Lambda 存取點別名的限制與存取點別名的限制相同。如需存取點別名限制的詳細資訊,請參閱 存取點別名限制。