全部產品
Search
文件中心

Object Storage Service:建立對象FC存取點

更新時間:Oct 25, 2024

如果您希望在發送GetObject請求時OSS可以自動觸發Function Compute服務,並將檢索到的資料的轉換結果返回給應用程式,您需要通過對象FC存取點發送請求。通過對象FC存取點,您可以在保持Object儲存語義且無需改造用戶端的情況下,無縫接入對檔案內容修改或過濾的能力。本文介紹如何建立對象FC存取點。

前提條件

  • Bucket所屬地區必須為:華東1(杭州)、華東2(上海)、華北1(青島)、華北2(北京)、華北 3(張家口)、華北5(呼和浩特)、華南1(深圳)、西南1(成都)、中國香港、美國(矽谷)、美國(維吉尼亞)、日本(東京)、韓國(首爾)、新加坡、馬來西亞(吉隆坡)、印尼(雅加達)、德國(法蘭克福)、英國(倫敦)

  • 已在以上Bucket所屬地區建立存取點。具體操作,請參見建立存取點

  • 已在以上Bucket所屬地區建立Function Compute服務。具體操作,請參見建立服務

  • 為已建立服務關聯的預設角色(AliyunFCDefaultRole)授予oss:WriteGetObjectResponse許可權。具體的權限原則如下:

    {
      "Statement": [
        {
          "Action": "oss:WriteGetObjectResponse",
          "Effect": "Allow",
          "Resource": "*"
        }
      ],
      "Version": "1"
    }

    具體步驟,請參見為RAM角色授權

  • 在已建立的Function Compute服務中建立函數。

    支援通過Java、Python、Go SDK調用GetObject介面時觸發Function Compute,通過這幾種語言SDK部署函數代碼時,您需要建立符合運行環境要求的函數。

    • 通過Java SDK部署函數代碼時,需要建立運行環境為Java 11的函數。

    • 通過Python SDK部署函數代碼時,需要建立運行環境為Python 3.10的函數。

    • 通過Go SDK部署函數代碼時,需要建立運行環境為Go 1的函數。

    其他參數保留預設配置。具體操作,請參見建立函數

  • RAM使用者必須擁有以下許可權:oss:CreateAccessPointForObjectProcessoss:GetAccessPointForObjectProcessoss:DeleteAccessPointForObjectProcessoss:ListAccessPointsForObjectProcessoss:PutAccessPointConfigForObjectProcessoss:GetAccessPointConfigForObjectProcessoss:PutAccessPointPolicyForObjectProcessoss:GetAccessPointPolicyForObjectProcessoss:DeleteAccessPointPolicyForObjectProcess。具體操作,請參見RAM Policy常見樣本

使用限制

限制項

說明

建立方式

僅支援通過OSS控制台和API的方式建立對象FC存取點。不支援通過SDK、ossutil等方式建立對象FC存取點。

數量

  • 單個阿里雲帳號支援建立1000個對象FC存取點。

  • 單個Bucket支援建立100個對象FC存取點。

修改規則

建立對象FC存取點後,僅支援修改存取點策略,不支援修改存取點基礎資訊,例如存取點名稱、存取點別名等。

訪問方式

不支援匿名訪問。

使用OSS控制台

  1. 登入OSS管理主控台

  2. 在左側導覽列,單擊對象FC存取點列表

  3. 對象FC存取點列表頁面,單擊建立對象FC存取點

  4. 建立對象FC存取點對話方塊,按說明完成以下配置項,然後單擊確定

    配置項

    說明

    地區

    下拉選擇關聯結入點所在地區。

    對象FC存取點名稱

    為對象FC存取點命名。命名規範說明如下:

    • 命名長度不能超過63個字元。

    • 只允許包含小寫字母、數字、虛線(-),且不能以虛線開頭或結尾。

    • 名稱在當前地區必須唯一。

    支援的存取點

    選擇已建立的存取點。

    儲存桶名稱

    顯示存取點關聯的儲存空間名稱。

    OSS API

    選中GetObject

    FC函數服務

    選擇已建立的Function Compute服務。

    調用 FC 函數

    選擇已建立的函數,並選中FC 函數支援使用 Range GetObject 請求

    FC 函數版本

    選擇已建立函數對應的版本。如果置空,則預設使用LATEST版本。

  5. 完成角色授權。

    首次建立對象FC存取點時,您需要通過單擊RAM授權並按照頁面指引完成AliyunOSSObjectFcForOSSDefaultRole角色授權。為確保OSS服務帳號可以正常調用Function Compute服務,請勿禁用、修改或者刪除該角色以及該角色關聯的權限原則。

  6. 單擊完成

    • 對象FC存取點建立完成預計需要10分鐘左右。

    • 對象FC存取點建立後,對象FC存取點列表頁面將顯示OSS自動建立的對象FC存取點別名。

    • 不支援修改、刪除或者禁用對象FC存取點別名。

重要

僅當通過對象FC存取點別名訪問GetObject介面時會觸發Function Compute。當使用對象FC存取點別名訪問非GetObject介面時,後台將自動切換為OSS存取點,並遵循OSS存取點的權限原則。

使用REST API

如果您的程式自訂要求較高,您可以直接發起REST API請求。直接發起REST API請求需要手動編寫代碼計算簽名。更多資訊,請參見CreateAccessPointForObjectProcess

後續步驟

編寫請求函數