全部產品
Search
文件中心

Function Compute:為自訂網域名配置Bearer認證鑒權

更新時間:Sep 29, 2025

Bearer認證是通過在HTTP要求標頭攜帶令牌Token進行身分識別驗證的機制,適用於 API 或微服務等需安全訪問的情境。為函數綁定自訂網域名後,可以通過配置Bearer認證配置Token資訊,用戶端在發起訪問時,需在要求標頭添加有效Token資訊,僅當訪問請求中攜帶的Token與自訂網域名配置的Token匹配時,用戶端才能正常訪問函數。

注意事項

  • 配置Bearer認證時,請在生產環境中使用HTTPS協議,HTTP協議僅用於開發測試,因使用HTTP協議導致的Token泄露,FC不承擔安全責任。

  • Function Compute僅負責儲存和驗證您配置的Token資訊,Token的產生與生命週期管理需由使用者自行負責。建議定期輪換Token,特別是在發現其已泄露或可能存在安全風險的情況下,以確保系統的安全性。

使用限制

  • 不同自訂網域名或同一個自訂網域名綁定的Token必須唯一,且儘可能不要使用常見的排列組合作為Token的值,以免Token資料過於簡單導致的安全問題。

  • 每個Token的值長度需要在32字元到128字元之間,並且只允許包含標準 Base64 字元 ‘A-Z’, ‘a-z’, ‘0-9’, ‘+’, ‘/’,‘=’,‘-’, ‘~’, ‘.’ 。不能以數字、中劃線開頭。

  • 每個自訂網域名允許配置的Token數量在1到20之間。

前提條件

建立函數,並為其綁定自訂網域名

操作步驟

步驟一:配置Bearer認證

  1. 登入Function Compute控制台,在左側導覽列,選擇函數管理 > 網域名稱管理

  2. 在頂部功能表列,選擇地區,然後在網域名稱列表,找到目標網域名稱,單擊操作列的編輯

  3. 在編輯自訂網域名頁面,展開認證設定認證方式選擇Bearer認證,填寫認證Token,然後單擊儲存。

    認證Token的格式要求參見以下樣本:

    {
        "tokens": [
            {
                "tokenName": "tokenName-7jd",
                "enable": true,
                "tokenData": "token-dfi34ij25gd1ed6ec80g35****"
            },
            {
                "enable": true,
                "tokenData": "token-8g7f2a2c9fc23hid82593****",
                "tokenName": "tokenName-20i"
            }
        ]
    }
    • 以上樣本為配置多個Token,如果只需配置一個Token,保留其中一個即可。

    • 請確保每個Token認證中Token的唯一性。

    • 如果需要禁用某個Token,只需要將對應的enable欄位設定為false

步驟二:操作驗證

本文以Curl工具為例,攜帶Authorization: Bearer <token>發起HTTP請求,命令格式如下:

curl --data 您的資料 -X 訪問方式 -H "Authorization: Bearer <token>" https://<your-custom-domain>

樣本如下:

curl  -X  POST  -H "Authorization: Bearer token-dfi34ij25gd1ed6ec80g35****"  example.com

常見問題

為什麼開啟Bearer認證後,訪問網域名稱提示Authorization header is expected but missing

該提示表示用戶端通過自訂網域名訪問函數時未攜帶Authorization頭,請在請求中添加Authorization: Bearer <token>

為什麼開啟Bearer認證後,訪問網域名稱提示access denied due to invalid bearer token

該提示表示用戶端通過自訂網域名訪問函數時未攜帶有效Token資訊,請檢查Token是否正確,Token資料來自於步驟一:配置Bearer認證時,配置的認證TokentokenData欄位的值。

開啟Bearer認證後,是否會產生額外的費用?

不會。Function Compute預設提供的網關相關的功能計費都是在函數調用次數中進行收費,所以不管您是否開啟Bearer認證,都不會產生額外的費用。