全部產品
Search
文件中心

API Gateway:配置OIDC認證鑒權

更新時間:Jul 01, 2026

通過OIDC協議與企業的認證鑒權系統整合,可以實現對內部服務的統一認證和授權管理,避免了重複的對接工作,同時簡化了認證流程。雲原生API Gateway提供了統一認證鑒權,加強了系統的安全性,並提供了更加靈活的安全性原則配置。整合OIDC協議還能實現單點登入,您只需一次登入即可訪問多個服務。

前提條件

已建立統一的認證鑒權服務,且支援標準的OIDC(OpenID Connect)協議。

背景資訊

網關作為外界訪問內部服務的一個控制點,需要對外部的請求進行認證鑒權,確保內部服務的安全性。企業內一般會自建一套統一的認證鑒權體系,雲原生API Gateway支援通過OIDC協議與自建的認證鑒權體系打通,支援對接入的內部服務做統一認證鑒權,避免每個服務都需要對接認證鑒權體系。

基於OIDC認證

OIDC(OpenID Connect)是一種安全認證機制,第三方應用串連到身份認證供應商(Identify Provider)擷取使用者資訊,並把這些資訊以安全可靠的方式返回給第三方應用。OIDC對OAuth2.0協議進行了擴充,通過擴充的ID Token欄位,提供使用者基礎身份資訊,ID Token使用JWT(JSON Web Token)格式進行封裝,提供自包含性、防篡改機制,可以安全地傳遞給第三方應用程式並容易被驗證。

假設有以下四個角色:

  • 用戶端:直接為使用者提供服務。

  • 認證服務:OpenID提供方,通常是指OpenID證明伺服器,為第三方頒發用於認證的ID Token。

  • 商務服務:提供商務服務。

  • 使用者:指資源持有人。

商務程序如下:

  1. 用戶端發送認證請求給認證服務。

  2. 使用者在認證頁面進行授權確認(通過使用者名稱和密碼登入)。

  3. 認證服務對認證請求進行驗證,並返回Code給用戶端。

  4. 用戶端向商務服務請求回調介面,請求中攜帶Code。

  5. 商務服務請求認證服務頒發Token,請求中攜帶Code、Client ID、Client Secret。

  6. 認證服務驗證合法性,並返回ID Token。

  7. 認證成功,商務服務返回ID Token給用戶端。

  8. 用戶端向業務請求,請求中攜帶ID Token。

  9. 商務服務驗證ID Token是否合法,然後返回業務應答。

雲原生API GatewayOIDC認證流程

在上述OIDC認證流程中,如果有不同的商務服務,例如使用者服務、訂單服務等,則每個商務服務都需要實現認證鑒權邏輯,包括校正請求是否合法、對接認證服務等。通過雲原生API Gateway的OIDC認證功能,可以實現在網關統一認證鑒權。

商務程序如下:

  1. 用戶端向網關申請認證。

  2. 網關向認證服務申請認證。

  3. 認證服務返回 Code 給網關。

  4. 網關返回 Code 給用戶端。

  5. 用戶端攜帶 Code 回調網關。

  6. 網關向認證服務交換 Token。

  7. 認證服務返回 ID Token 給網關。

  8. 網關向用戶端返回認證成功響應,並設定 Cookie。

  9. 用戶端攜帶 Cookie 發起業務請求,網關驗證 Token。

  10. 網關攜帶 ID Token 轉寄業務請求給商務服務。

  11. 商務服務應答經網關返回用戶端。

在整個認證鑒權過程中,雲原生API Gateway會驗證請求是否合法。如果請求不合法,雲原生API Gateway會重新導向到使用者登入頁面,並能代理請求認證服務實現使用者登入認證,實現商務服務對認證服務無感知。

建立認證鑒權規則

  1. 登入雲原生API Gateway控制台

  2. 在左側導覽列,選擇实例,並在頂部功能表列選擇地區。

  3. 實例頁面,單擊目標網關執行個體名稱。

  4. 在左側導覽列,單擊安全管理 > 全局认证鉴权

  5. 在頁面左上方,單擊创建鉴权配置網關鑒權相關參數,然後單擊确定

    雲原生API GatewayOIDC認證鑒權參數說明如下。

    參數

    描述

    开启

    是否開啟雲原生API Gateway鑒權。

    鉴权名称

    自訂雲原生API Gateway鑒權的名稱。

    鉴权类型

    選擇OIDC認證方式。

    域名

    鑒權規則生效的網域名稱。

    Issuer

    設定認證服務的Issuer,即簽發人。

    重定向URL

    輸入授權成功後的重新導向地址,需要與OIDC中配置的重新導向地址保持一致。

    重要

    格式為http(s)://yourdomain/path(地址中的path必須為 /oauth2/callback

    Client ID

    輸入服務註冊的應用ID。

    Client Secret

    輸入服務註冊的應用Secret。

    Cookie Domain

    輸入Cookie的網域名稱,認證通過後會將Cookie發送到指定的網域名稱,保持登入狀態。例如:設定Cookie-domain=a.example.com,則Cookie會發送到網域名稱a.example.com;設定Cookie-domain=.example.com,則Cookie會發送到example.com的所有子網域名稱。

    Cookie Secret

    用於在建立Cookie時添加數位簽章,確保其不會被非法篡改。

    Scope

    輸入授權範圍,多個域值用英文分號(;)分隔。

    授权

    授權模式支援白名单模式黑名单模式

    • 白名單模式:白名單中的hosts+paths不需要校正即可訪問,其餘的都需要校正。

    • 黑名單模式:黑名單中的hosts+paths需要校正,其餘可直接存取。

    單擊规则条件,佈建要求網域名稱和路徑。

    • 域名:請求訪問的網域名稱,即hosts。

    • 路径(Path):請求訪問的介面路徑,即paths。

查看鑒權詳情

  1. 登入雲原生API Gateway控制台

  2. 在左側導覽列,選擇实例,並在頂部功能表列選擇地區。

  3. 實例頁面,單擊目標網關執行個體名稱。

  4. 在左側導覽列單擊安全管理 > 全局认证鉴权

  5. 全局认证鉴权頁面,單擊鑒權規則名稱或操作列的详情,可查看當前认证配置授权信息的管理。

    認證配置詳情頁麵包含三個地區:基本資料顯示名稱和來源;認證配置顯示IssuerClient-IDCookie-Domain重新導向URLClient-SecretScope等欄位;授權資訊顯示當前授權模式(白名單模式或黑名單模式),多行規則條件之間為"或"關係,每行規則條件內的多個匹配項之間為"與"關係。

您可在授权信息地區單擊创建授权信息,在對話方塊中輸入请求域名请求Path,並選擇匹配方式,單擊确定新增授權規則。

結果驗證

返回全局认证鉴权頁面查看鑒權資訊,如果已包含建立網關鑒權資訊,則說明網關認證鑒權建立成功。

相關操作

您還可以執行以下其他動作,管理網關的認證鑒權:

  • 開啟鑒權:在全局认证鉴权頁面,單擊目標鑒權規則操作列的开启,使認證鑒權資訊生效。

  • 關閉鑒權:在全局认证鉴权頁面,單擊目標鑒權規則操作列的关闭,關閉網關認證鑒權資訊。

  • 編輯鑒權:在全局认证鉴权頁面,單擊目標鑒權規則操作列的编辑,可編輯網關認證鑒權資訊。

  • 刪除鑒權:在全局认证鉴权頁面,單擊目標鑒權規則操作列的删除,可刪除網關認證鑒權資訊。

說明

只有在認證鑒權資訊關閉的狀態下才可執行刪除操作。

相關文檔

如果您想瞭解其他認證鑒權機制,請參見全域認證鑒權