View a markdown version of this page

使用自訂提供者新增 OAuth 用戶端 - Amazon Bedrock AgentCore

使用自訂提供者新增 OAuth 用戶端

自訂提供者可讓您連線到內建提供者選項以外的任何 OAuth2-compatible資源伺服器。您可以透過讓系統自動擷取組態詳細資訊,或手動提供伺服器資訊來設定自訂提供者。

使用自訂提供者新增 OAuth 用戶端

  1. 開啟 AgentCore Identity 主控台。

  2. 傳出身分驗證區段中,選擇新增 OAuth 用戶端/API 金鑰,然後選取新增 OAuth 用戶端

  3. 對於名稱,您可以使用自動產生的名稱或輸入自己的描述性名稱,協助您在帳戶中識別此 OAuth 用戶端。僅使用英數字元、連字號和底線,長度上限為 50 個字元。

  4. 針對提供者,選擇自訂提供者

  5. 提供者組態區段中,根據您的提供者需求,選擇下列其中一個選項:

    1. 探索 URL (建議) – 選擇此選項可讓 AgentCore Identity 自動從您的提供者擷取組態詳細資訊。您提供提供者發佈其 OpenID Connect 組態的探索 URL,而 AgentCore Identity 會處理端點探索程序。這是建議的可用方法,因為它可減少手動組態。

      1. 針對用戶端身分驗證方法,選擇使用身分提供者字符端點進行身分驗證的用戶端身分驗證方法。如需詳細資訊,請參閱用戶端身分驗證方法

      2. 針對探索 URL,輸入提供者發佈其 OpenID Connect 組態的 URL。探索 URLs必須以 .well-known/openid-configuration 結尾。例如,https:// example.com /.well-known/openid-configuration。

      3. 針對用戶端 ID,輸入向身分提供者註冊應用程式時收到的唯一識別符。

      4. 針對用戶端秘密選取方法,選擇下列其中一個選項:

        1. 提供用戶端秘密 – 直接輸入用戶端秘密值。

          1. 針對用戶端秘密,輸入與 AgentCore Identity 安全存放以進行身分驗證之用戶端 ID 相關聯的機密金鑰。

        2. 透過 Secrets Manager 提供用戶端秘密 – 參考存放在 AWS Secrets Manager 中的秘密,而不是直接輸入值。

          1. 針對 Secrets Manager,輸入或選取包含用戶端秘密之 Secrets Manager 秘密的 ARN。

          2. 對於 JSON 金鑰,請在 Secrets Manager 秘密中輸入 JSON 金鑰,其中包含 OAuth 用戶端的用戶端秘密值。

    2. 手動組態 – 選擇此選項可在您的提供者不支援自動探索時直接指定伺服器資訊。您將個別定義每個端點 URL,讓您完全控制組態詳細資訊。

      1. 針對用戶端身分驗證方法,選擇使用身分提供者字符端點進行身分驗證的用戶端身分驗證方法。如需詳細資訊,請參閱用戶端身分驗證方法

      2. 針對發行者,輸入可識別您授權伺服器的基本 URL。此值會出現在已發行權杖的iss宣告中,並有助於驗證權杖真實性。

      3. 針對授權端點,輸入將引導使用者授予應用程式許可的 URL。這是 OAuth 授權流程的進入點。

      4. 針對權杖端點,輸入代理程式交換存取權杖授權碼的 URL。此端點會處理登入資料交換程序。

      5. (選用) 在回應類型區段中,選擇新增回應類型並選擇提供者應傳回的字符格式,以設定 OAuth 用戶端接收身分驗證回應的方式。常見類型包括code用於授權碼流程或token用於隱含流程。

      6. 針對用戶端 ID,輸入向身分提供者註冊應用程式時收到的唯一識別符。

      7. 針對用戶端秘密選取方法,選擇下列其中一個選項:

        1. 提供用戶端秘密 – 直接輸入用戶端秘密值。

          1. 針對用戶端秘密,輸入與 AgentCore Identity 安全存放以進行身分驗證之用戶端 ID 相關聯的機密金鑰。

        2. 透過 Secrets Manager 提供用戶端秘密 – 參考存放在 AWS Secrets Manager 中的秘密,而不是直接輸入值。

          1. 針對 Secrets Manager,輸入或選取包含用戶端秘密之 Secrets Manager 秘密的 ARN。

          2. 對於 JSON 金鑰,請在 Secrets Manager 秘密中輸入 JSON 金鑰,其中包含 OAuth 用戶端的用戶端秘密值。

  6. (選用) 展開其他組態以設定on-behalf-of權杖交換。選擇下列其中一種授予類型模式:

    1. :不支援On-behalf-of權杖交換

    2. JWT 授權:使用 RFC 7523 語法on-behalf-of權杖交換。傳入身分用作取得存取權杖的授權授予

    3. 權杖交換:使用 RFC 8693 語法執行on-behalf-of。這是擷取委派關係的最新標準。您可以使用下列模式自訂演員字符:

      1. :請求中不會提供演員字符

      2. AWS IAM ID 權杖 JWT:使用 IAM AWS 發行的已簽署 JWT 進行驗證,該 JWT 代表呼叫 AWS 身分做為演員權杖

      3. 機器對機器 (M2M):使用machine-to-machine(M2M) 存取字符作為演員字符進行驗證

        1. (選用) 提供 Actor 權杖範圍,以在驗證時用作範圍參數

  7. (選用) 展開其他組態以設定私有端點,以連線至 VPC 內託管的身分提供者。選擇下列其中一種模式:

    1. 受管 VPC:AgentCore 會代表您建立和管理 VPC 資源。這是帳戶內 VPC 連線的更簡單選項。

      1. 針對 VPC,選取您的 VPC 識別符。

      2. 針對子網路,選取一個或多個具有 IdP 網路存取權的子網路。

      3. 針對 IP 地址類型,選擇 IPV4IPV6

      4. (選用) 對於安全群組,選取允許流量傳送到 IdP 的安全群組。

    2. 自我管理 Lattice:您可以自行建立和管理 VPC Lattice 資源閘道和資源組態。此選項支援透過 RAM AWS 進行跨帳戶連線,並提供完整的控管可見性。

      1. 針對資源組態 ARN,選取 VPC Lattice 資源組態的 ARN。

      2. (選用) 對於網域覆寫,輸入應透過私有端點路由的其他網域。當您的身分提供者端點 (例如字符或授權端點) 託管在與資源組態中設定的主要 IdP 網域不同的網域時,請使用此選項。

  8. 選擇新增 OAuth 用戶端

如需受管與自我管理 Lattice 模式的詳細比較,請參閱支援的 VPC 輸出模式

完成任一組態後,AgentCore Identity 會安全地存放您的 OAuth 設定,並提供 ARN 供您在代理程式程式碼中參考,啟用字符請求,而無需在您的應用程式中嵌入敏感憑證。您可以在 OAuth 用戶端的屬性頁面中找到此 ARN (在傳出身分驗證區段中選擇用戶端名稱)。