Okta 的 Auth0
Auth0 可設定為用於存取 AgentCore Gateway 和執行期的身分提供者,或用於傳出資源存取的 AgentCore Identity 憑證提供者。這可讓您的代理程式以身分提供者和授權伺服器身分Auth0和授權代理程式使用者,或您的代理程式取得登入資料以存取 Auth0 授權的資源。
傳入
若要新增 Auth0 做為存取 AgentCore Gateway 和 Runtime 的身分提供者和授權伺服器,您必須:
-
從 IDP 目錄設定探索 URL。這有助於 AgentCore Identity 取得與您的 OAuth 授權伺服器和權杖驗證金鑰相關的中繼資料。
-
輸入字符的有效
aud宣告。這有助於驗證來自您 IDP 的字符,並允許存取包含預期宣告的字符。
使用下列程序來設定 Auth0 並取得閘道身分驗證的必要組態值。
設定傳入身分驗證的 Auth0
-
在 Auth0 中建立 API:
-
登入您的 Auth0 儀表板。
-
開啟 APIs然後選擇建立 API。
-
輸入 API 的名稱和識別符 (例如 "gateway-api")。
-
選取簽署演算法 (建議使用 RS256)。
-
選擇建立。
-
-
設定 API 範圍:
-
在 API 設定中,前往範圍索引標籤。
-
新增範圍,例如 "invoke:gateway" 和 "read:gateway"。
-
-
建立應用程式:
-
開啟應用程式,然後選擇建立應用程式。
-
選取機器對機器應用程式。
-
選取您在步驟 1 中建立的 API。
-
為您建立的範圍授權應用程式。
-
選擇建立。
-
-
從應用程式設定記錄用戶端 ID 和用戶端秘密。您需要這些值才能在 AgentCore Identity 中設定 Auth0 供應商。
-
建構 Auth0 租用戶的探索 URL:
https://your-domain/.well-known/openid-configuration其中
您的網域是您的 Auth0 租用戶網域 (例如 "dev-example.us.auth0.com")。 -
使用下列值設定傳入身分驗證:
-
探索 URL :在上一個步驟中建構的 URL
-
允許對象 :您在步驟 1 中建立的 API 識別符
-
傳出
注意
AgentCore Identity 會為您建立的每個登入資料提供者發出唯一的 OAuth2 回呼 URL。唯一的回呼 URL 可啟用工作階段繫結,透過確保授權回應只能針對啟動它的特定憑證提供者進行兌換,以保護 OAuth2 授權碼交換免受跨供應商重播和 CSRF 型攻擊。由於每個提供者的 URL 都是唯一的,因此在呼叫 之前,您都不會知道它CreateOauth2CredentialProvider。首先建立您的 Auth0 應用程式,然後返回 Auth0 儀表板,在 AgentCore Identity 發出回呼 URL 後註冊回呼 URL。
步驟 1:建立 Auth0 應用程式
使用下列程序來設定 Auth0 OAuth2 應用程式,並取得 AgentCore Identity 的必要用戶端憑證。在 AgentCore Identity 發出唯一的回呼 URL 之後,您將在步驟 3 中註冊重新導向 URI。
設定 Auth0 OAuth2 應用程式
-
登入您的 Auth0 儀表板。
-
開啟應用程式,然後選擇建立應用程式。
-
輸入應用程式的名稱,然後選取一般 Web 應用程式做為應用程式類型。
-
選擇建立。
-
在應用程式的設定索引標籤上,暫時將允許的回呼 URLs保留空白 - 您將在步驟 3 中新增唯一的回呼 URL。
-
設定應用程式所需的任何連線、範圍和許可。
-
從應用程式設定記錄用戶端 ID 和用戶端秘密。您需要這些值才能在 AgentCore Identity 中設定 Auth0 供應商。
-
請記下您的 Auth0 租用戶網域 (例如
dev-example.us.auth0.com)。您將使用此項目來建構步驟 2 中的授權、字符和發行者端點。
如需詳細資訊,請參閱 Auth0 有關建立應用程式的文件
步驟 2:建立 AgentCore Identity 登入資料提供者
若要將 Auth0 設定為傳出資源提供者,請使用下列項目:
{ "name": "NAME", "credentialProviderVendor": "Auth0Oauth2", "oauth2ProviderConfigInput" : { "includedOauth2ProviderConfig": { "clientId": "your-client-id", "clientSecret": "your-client-secret", "authorizationEndpoint": "https://your-auth0-tenant.auth0.com/authorize", "tokenEndpoint": "https://your-auth0-tenant.auth0.com/oauth/token", "issuer": "https://your-auth0-tenant.auth0.com" } } }
CreateOauth2CredentialProvider 回應包含 callbackUrl 欄位。此 URL 對此登入資料提供者是唯一的,如下所示:https://bedrock-agentcore.us-east-1.amazonaws.com/identities/oauth2/callback/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX。儲存此值以供下一個步驟使用。
步驟 3:向 Auth0 註冊唯一的回呼 URL
返回 Auth0 儀表板,並將唯一的回呼 URL 新增至應用程式的允許回呼。
-
登入您的 Auth0 儀表板,並開啟您在步驟 1 中建立的應用程式。
-
在設定索引標籤上,將 傳回
callbackUrl的值貼CreateOauth2CredentialProvider到允許的回呼 URLs -
選擇 Save Changes (儲存變更)。