Okta
O Okta pode ser configurado como um provedor de identidade para acessar o AgentCore Gateway e o Runtime, ou um provedor de credenciais de AgentCore identidade para acesso a recursos de saída. Isso permite que seus agentes autentiquem e autorizem usuários agentes com o Okta como provedor de identidade e servidor de autorização, ou que seus agentes obtenham credenciais para acessar recursos autorizados pelo Okta.
Entrada
Para adicionar o Okta como provedor de identidade e servidor de autorização para acessar o AgentCore Gateway e o Runtime, você deve:
-
Configure uma URL de descoberta do seu locatário Okta. Isso ajuda o AgentCore Identity a obter os metadados relacionados ao seu servidor de autorização OAuth e às chaves de verificação de token.
-
Insira
audreivindicações válidas para o token. Isso ajuda a validar os tokens provenientes do seu IdP e permite o acesso a tokens que contêm reivindicações esperadas.
Para configurar o Okta para autenticação de entrada
-
Abra o console do desenvolvedor Okta.
-
Na barra de navegação esquerda, escolha Aplicativos.
-
Selecione Create App Integration (Criar integração de aplicações).
-
Escolha OIDC - OpenID Connect como método de login para seu aplicativo.
-
Escolha Aplicativo Web como seu tipo de aplicativo.
-
Forneça um nome para seu aplicativo.
-
Selecione Código de autorização Credenciais do and/or cliente de acordo com suas necessidades.
-
Para Sign-in redirecionar URIs, adicione o endpoint do aplicativo que receberá o token Okta.
-
Ajuste a seção Tarefas conforme necessário, dependendo de suas necessidades.
-
Escolha Salvar.
-
Crie uma API Okta para representar seu aplicativo:
-
Na barra de navegação esquerda, escolha Segurança.
-
Vá para API e escolha Adicionar servidor de autorização.
-
Siga o fluxo para criar um servidor de autorização dedicado ao seu inquilino Okta.
-
Depois que o servidor de autorização for criado, escolha a guia Políticas de acesso na página de visão geral para configurar uma política de acesso apropriada.
-
Defina os escopos personalizados necessários para o servidor de autorização necessário para seu aplicativo.
-
-
Crie o URL de descoberta para seu inquilino do Okta:
https://your-tenant.okta.com/oauth2/your-authorization-server -
Configure a autenticação de entrada com os seguintes valores:
-
URL de descoberta: o URL construído na etapa anterior
-
Públicos permitidos: o valor do público que você forneceu ao criar a API na etapa 11
-
Para obter mais detalhes, consulte a documentação do Okta
Adicione uma declaração client_id às reivindicações do token de acesso
Por padrão, o Okta não inclui client_id como reivindicação padrão em seus tokens. Para preencher a declaração no token, você precisa personalizar as declarações por meio do servidor de autorização que você usa para emitir tokens.
Para adicionar a reivindicação client_id aos tokens de acesso
-
Na barra de navegação esquerda, escolha Segurança. Acesse a API e escolha o servidor de autorização que você pretende usar para seu aplicativo.
-
Na página de detalhes do servidor de autorização, escolha a guia Reivindicações e escolha Adicionar reclamação.
-
Nomeie a nova declaração client_id e defina o valor como app.clientID.
-
Defina Incluir no tipo de token como Token de acesso.
-
Escolha Salvar.
Para obter mais detalhes, consulte a documentação do Okta
Saída
nota
AgentCore A identidade emite uma URL exclusiva de retorno de chamada do OAuth2 para cada provedor de credenciais que você cria. O URL de retorno de chamada exclusivo permite a vinculação de sessão, o que protege a troca do código de autorização do OAuth2 contra repetições e CSRF-style ataques entre provedores, garantindo que uma resposta de autorização só possa ser resgatada contra o provedor de credenciais específico que a iniciou. Como o URL é exclusivo por provedor, você não o saberá até depois de ligarCreateOauth2CredentialProvider. Crie seu aplicativo Okta OIDC primeiro e, em seguida, retorne ao console do desenvolvedor Okta para registrar o URL de retorno de chamada depois AgentCore que o Identity o emitir.
Etapa 1: Criar o aplicativo Okta OIDC
Siga o procedimento na seção Entrada para criar seu aplicativo Okta OIDC e servidor de autorização. Quando solicitado a inserir URIs de Sign-in redirecionamento nas configurações do aplicativo, deixe o campo vazio por enquanto — você adicionará o URL de retorno de chamada exclusivo na Etapa 3.
Etapa 2: criar o provedor de credenciais de AgentCore identidade
Para configurar o Okta como um provedor de recursos de saída no AgentCore Identity, use o seguinte:
{ "name": "Okta", "credentialProviderVendor": "OktaOauth2", "oauth2ProviderConfigInput" : { "includedOauth2ProviderConfig": { "clientId": "your-client-id", "clientSecret": "your-client-secret", "authorizationEndpoint": "https://your-tenant.okta.com/oauth2/your-authorization-server/v1/authorize", "tokenEndpoint": "https://your-tenant.okta.com/oauth2/your-authorization-server/v1/token", "issuer": "https://your-tenant.okta.com/oauth2/your-authorization-server" } } }
Para usar o Okta OAuth 2.0 em nome da troca de tokens
{ "name": "Okta", "credentialProviderVendor": "CustomOauth2", "oauth2ProviderConfigInput": { "customOauth2ProviderConfig": { "clientAuthenticationMethod": "CLIENT_SECRET_BASIC", "clientId": "your-client-id", "clientSecret": "your-client-secret", "oauthDiscovery": { "authorizationServerMetadata": { "authorizationEndpoint": "https://your-tenant.okta.com/oauth2/your-authorization-server/v1/authorize", "tokenEndpoint": "https://your-tenant.okta.com/oauth2/your-authorization-server/v1/token", "issuer": "https://your-tenant.okta.com/oauth2/your-authorization-server" } }, "onBehalfOfTokenExchangeConfig": { "grantType": "TOKEN_EXCHANGE", "tokenExchangeGrantTypeConfig": { "actorTokenContent": "NONE" } } } } }
A CreateOauth2CredentialProviderresposta inclui um callbackUrl campo. Esse URL é exclusivo desse provedor de credenciais e se parece com:https://bedrock-agentcore.us-east-1.amazonaws.com/identities/oauth2/callback/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX. Salve esse valor para a próxima etapa.
Etapa 3: registre o URL de retorno de chamada exclusivo com o Okta
Retorne ao console do desenvolvedor do Okta e adicione o URL de retorno de chamada exclusivo aos URIs de Sign-in redirecionamento do seu aplicativo.
-
Faça login no console do desenvolvedor Okta e abra o aplicativo OIDC que você criou na Etapa 1.
-
Abra a guia Geral e edite as configurações de LOGIN.
-
Adicione o
callbackUrlvalor retornado porCreateOauth2CredentialProviderpara Sign-in redirecionar URIs. -
Escolha Salvar.