

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

# 使用 Amazon S3 Object Lambda 存取點
<a name="olap-use"></a>

**注意**  
自 2025 年 11 月 7 日起，S3 Object Lambda 僅適用於目前正在使用該服務的現有客戶，以及選取 AWS 合作夥伴網路 (APN) 合作夥伴。對於類似於 S3 Object Lambda 的功能，請在此處進一步了解 - [Amazon S3 Object Lambda 可用性變更](https://docs.aws.amazon.com/AmazonS3/latest/userguide/amazons3-ol-change.html)。

透過 Amazon S3 Object Lambda 存取點發出請求，與透過其他存取點發出請求的運作方式相同。如需如何透過存取點發出請求的詳細資訊，請參閱 [將 Amazon S3 Access Points 用於一般用途儲存貯體](using-access-points.md)。您可以使用 Amazon S3 主控台、 AWS Command Line Interface (AWS CLI)、 AWS SDKs或 Amazon S3 REST API，透過 Object Lambda 存取點提出請求。

**重要**  
Object Lambda 存取點的 Amazon Resource Name (ARN) 使用 `s3-object-lambda` 的服務名稱。因此，Object Lambda 存取點 ARN 以 `arn:aws::s3-object-lambda` 為開頭 (而不是 `arn:aws::s3`)，其會與其他存取點一起使用。

## 如何為 Object Lambda 存取點尋找 ARN
<a name="olap-find-arn"></a>

若要將 Object Lambda 存取點與 AWS CLI AWS SDKs搭配使用，您需要知道 Object Lambda 存取點的 Amazon Resource Name (ARN)。下列範例示範如何使用 Amazon S3 主控台或 AWS CLI，來尋找 Object Lambda 存取點的 ARN。

### 使用 S3 主控台
<a name="olap-use-arn-console"></a>

**使用主控台為 Object Lambda 存取點尋找 ARN**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 開啟 Amazon S3 主控台。

1. 在左側的導覽窗格中，選擇 **Object Lambda Access Points** (Object Lambda 存取點)。

1. 選擇要複製 ARN 的 Object Lambda 存取點旁的選項按鈕。

1. 選擇 **Copy ARN** (複製 ARN)。

### 使用 AWS CLI
<a name="olap-use-arn-cli"></a>

**使用 尋找 Object Lambda 存取點的 ARN AWS CLI**

1. 若要擷取與 AWS 帳戶相關聯的 Object Lambda 存取點的清單，請執行以下命令。執行 命令之前，請將帳戶 ID 取代{{`111122223333`}}為您的 AWS 帳戶 ID。

   ```
   aws s3control list-access-points-for-object-lambda --account-id {{111122223333}}
   ```

1. 檢閱命令輸出，尋找要使用的 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 存取點使用儲存貯體樣式別名
<a name="ol-access-points-alias"></a>

在您建立 Object Lambda 存取點時，Amazon S3 會自動為您的 Object Lambda 存取點產生唯一的別名。您可以針對存取點資料平面操作在請求中使用此別名，而不是使用 Amazon S3 儲存貯體名稱或 Object Lambda 存取點 Amazon Resource Name (ARN)。如需這些操作的清單，請參閱 [存取點相容性](access-points-service-api-support.md)。

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 儲存貯體命名規則的詳細資訊，請參閱[一般用途儲存貯體命名規則](bucketnamingrules.md)。

下列範例顯示了名稱為 `{{my-object-lambda-access-point}}` 之 Object Lambda 存取點的 ARN 和 Object Lambda 存取點別名。
+ **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 存取點尋找別名
<a name="olap-find-alias"></a>

#### 使用 S3 主控台
<a name="olap-use-alias-console"></a>

**使用主控台為 Object Lambda 存取點尋找別名**

1. 登入 AWS 管理主控台 ，並在 https：//[https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/) 開啟 Amazon S3 主控台。

1. 在左側的導覽窗格中，選擇 **Object Lambda Access Points** (Object Lambda 存取點)。

1. 針對您要使用的 Object Lambda 存取點，請複製 **Object Lambda 存取點別名**值。

#### 使用 AWS CLI
<a name="olap-use-alias-cli"></a>

建立 Object Lambda 存取點時，Amazon S3 會自動產生 Object Lambda 存取點別名，如下列範例命令所示。若要執行此命令，請以您自己的資訊取代 `{{user input placeholders}}`。如需有關如何使用 建立 Object Lambda 存取點的資訊 AWS CLI，請參閱 [使用 建立 Object Lambda 存取點 AWS CLI](olap-create.md#olap-create-cli-specific)。

```
aws s3control create-access-point-for-object-lambda --account-id {{111122223333}} --name {{my-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 參考》**中的 [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ObjectLambdaAccessPointAlias.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_ObjectLambdaAccessPointAlias.html) 和 [https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPointForObjectLambda.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateAccessPointForObjectLambda.html)。

### 如何使用 Object Lambda 存取點別名
<a name="use-olap-alias"></a>

您可以針對 [存取點相容性](access-points-service-api-support.md) 所列操作，使用 Object Lambda 存取點別名，而非 Amazon S3 儲存貯體名稱。

下列 `get-bucket-location`命令 AWS CLI 範例會使用儲存貯體的存取點別名，傳回 AWS 區域 儲存貯體所在的 。若要執行此命令，請以您自己的資訊取代 `{{user input placeholders}}`。

```
aws s3api get-bucket-location --bucket {{my-object-lambda-acc}}-{{w7i37nq6xuzgax3jw3oqtifiusw2a}}--ol-s3
            
{
    "LocationConstraint": "us-west-2"
}
```

若請求中的 Object Lambda 存取點別名無效，則會傳回 `InvalidAccessPointAliasError` 錯誤碼。如需有關 `InvalidAccessPointAliasError` 的詳細資訊，請參閱《Amazon Simple Storage Service API 參考》**中的[錯誤代碼清單](https://docs.aws.amazon.com/AmazonS3/latest/API/ErrorResponses.html#ErrorCodeList)。

Object Lambda 存取點別名的限制與存取點別名的限制相同。如需存取點別名限制的詳細資訊，請參閱 [存取點別名限制](access-points-naming.md#use-ap-alias-limitations)。