跳至主要內容

自架授權

自架授權是一組經簽署的金鑰,可於你的 Logto OSS 實例上解鎖 Logto 自架方案 的付費功能。沒有授權時,Logto OSS 的行為與以往完全相同。

備註:

授權僅適用於自架 Logto OSS。在 Logto Cloud 上,功能屬於你的 租戶方案 一部分,且不提供授權端點。

授權可解鎖的功能​

自架 Pro 授權可於你的實例解鎖以下功能:

功能無授權時有授權時
隱藏 Logto 品牌標示一律顯示「Powered by Logto」。你可以選擇隱藏。
自帶 UI 與自訂 CSP 來源不可用。可將自訂登入 UI 上傳至 自有儲存空間。
Console 成員與邀請不可用。可邀請成員加入 Console,並於 租戶設定 > 成員 管理其角色。
Console 強制 MFA僅可選擇 MFA。可要求每位 Console 成員設定 MFA,於 租戶設定 > 設定 中啟用。
SAML 應用程式最多 3 個 SAML 應用程式。SAML 應用程式數量無上限。

未列於此表的功能不受授權影響。

取得授權​

請透過 自架方案頁面申請授權。Logto 會提供你兩組相同授權的金鑰:

  • 正式環境金鑰:用於訂閱所涵蓋的正式部署。除非訂單另有說明,每份訂閱僅涵蓋一個正式部署。
  • 非正式環境金鑰:用於支援同一正式部署的開發、測試與預備環境。這些部署不得處理正式流量。

兩組金鑰解鎖相同功能與配額。擁有兩組金鑰不代表可執行兩個正式部署。你的使用權限受 自架訂閱條款 與訂單約束。

你安裝的金鑰會告知 Logto 部署類型。Logto 不會技術性驗證,請安裝符合部署類型的金鑰。

安裝授權​

你可以在 Console 或透過 Management API 安裝授權。無論哪種方式,Logto 都會於你的實例上驗證授權簽章,並拒絕無效、遭竄改或已過期的金鑰。

於 Console 安裝​

  1. 前往 Console > 租戶設定 > 授權。
  2. 貼上你的授權金鑰並點擊 安裝授權。

安裝後,頁面會顯示授權詳細資訊。若需切換金鑰(例如從非正式環境金鑰切換至正式環境金鑰,或換用新發行的金鑰),請點擊 更換授權。

使用 Management API 安裝​

將金鑰傳送至 PUT /api/systems/license,並附上 Logto Management API 的存取權杖:

curl -X PUT 'https://your-logto-endpoint/api/systems/license' \
-H 'Authorization: Bearer <access_token>' \
-H 'Content-Type: application/json' \
-d '{ "license": "<your_license_key>" }'

成功請求會回傳 204 No Content。請求失敗時:

  • 若金鑰未經 Logto 簽署或已被修改,回傳 400 與 license.invalid_key。
  • 若金鑰已過期,回傳 400 與 license.expired_key。請取得新金鑰並重新安裝。
  • 若你的 Logto 執行於 Logto Cloud,回傳 501。

如需查詢已安裝的授權,請發送 GET /api/systems/license。回應內容包含授權方案、環境、權益、到期日與刷新狀態,不會回傳金鑰本身,且未安裝授權時回傳 404。完整請求與回應格式請參閱 Management API 參考文件。

多實例部署​

授權儲存在你的 Logto 資料庫中,因此共用同一資料庫的所有 Logto 實例僅需安裝一次授權。

刷新與寬限期​

Logto 於本地驗證授權簽章,因此登入應用程式時不需連線至 Logto,且刷新失敗不會阻擋登入流量。

為同步續約與取消資訊,你的實例會與 Logto Cloud 檢查:

  • 每週檢查:距離上次成功刷新超過 7 天時,Logto 會於處理請求時於背景刷新授權。若刷新失敗,稍後會重試,每小時最多一次。新安裝的授權會立即刷新。
  • 30 天寬限期:若刷新失敗(例如無法連線網際網路),功能會於上次成功刷新後 30 天內持續運作。之後,實例將恢復 OSS 預設狀態。
  • 被拒絕的刷新:若 Logto 拒絕刷新授權(如訂閱已取消),授權頁面會顯示原因。寬限期仍自上次成功刷新起算。

刷新為你的實例對 https://cloud.logto.io 發出的 HTTPS 請求。若實例位於防火牆後,請允許此目的地。

實例傳送的資訊​

刷新請求僅包含:

  • 你的授權金鑰(以 licenseId 識別授權)。
  • deploymentId:首次安裝授權時產生的隨機識別碼,儲存在資料庫中,所有共用該資料庫的實例皆使用同一識別碼,且更換授權時不會變更。
  • Logto 版本。

Logto 不會收集使用者數、主機名稱、網域或設定。這些資料僅供參考(如續約時),不會於產品中顯示或評估。行為為開源,詳見 LicenseReader.ts。

授權到期​

授權涵蓋一年期,到期日 為該期間結束日。

  • 續約時,你的實例無需任何操作。續約後的下次刷新會自動以新金鑰取代,並延長一年。頁面顯示的日期可能會在續約後短暫過期,功能期間仍可用。
  • 未續約時,期間結束後刷新會被拒絕。功能於 30 天寬限期結束前持續運作,之後實例恢復 OSS 預設狀態,如同未安裝授權。授權頁面會顯示說明與發生日期。
  • 若已超過寬限期,請安裝新金鑰以再次解鎖功能。如需新金鑰,請聯繫 Logto 取得授權時所用的管道。

功能關閉時會發生什麼事​

恢復 OSS 預設狀態不會刪除你以授權建立的任何資料:

  • 隱藏 Logto 品牌標示:會再次顯示「Powered by Logto」。你的設定會被保留,日後安裝授權時自動套用。
  • SAML 應用程式:超過 3 個的應用程式會保留,但無法新增新應用程式,直到數量低於限制。
  • 強制 MFA:你隨時可以關閉。無授權時無法再次啟用。
  • 自帶 UI、自訂 CSP 與 Console 邀請:無法進行需該功能的新變更,既有資料會保留。

設定自帶 UI 的儲存空間​

於 Logto Cloud 上,自帶 UI 資產由 Logto 託管。於自架實例,資產儲存在你設定的物件儲存空間。Logto 會解壓縮你的上傳並將檔案存放於該處,並自該處提供服務。

請以與 檔案儲存供應商 相同的 JSON 結構設定 experienceBlobsProvider 系統設定,例如 S3 相容儲存空間:

pnpm logto db system set experienceBlobsProvider '{"provider":"S3Storage","accessKeyId":"my-access-key-id","accessSecretKey":"my-secret-access-key","bucket":"logto-sie","endpoint":"https://s3.us-east-2.amazonaws.com"}'

更改設定後請重啟 Logto。接著依照 自帶 UI 指引於 Console 上傳資產。

Console 成員邀請郵件​

Console 邀請郵件會透過預設租戶的電子郵件連接器發送。請先 設定電子郵件連接器 再邀請成員。