View a markdown version of this page

Especifique o tipo de autorização e as credenciais para acessar o destino do gateway - Base da Amazônia AgentCore

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Especifique o tipo de autorização e as credenciais para acessar o destino do gateway

No corpo da CreateGatewayTarget solicitação, você especifica a configuração do provedor de credenciais na credentialProviderConfigurations matriz. A configuração depende do tipo de autorização de saída que você configurou. Para obter informações de referência sobre a estrutura da API para a configuração do provedor de credenciais, consulte CredentialProviderConfiguration. Para obter mais informações sobre autorização de saída, consulte Configurar autorização de saída para seu gateway.

Para saber mais sobre a configuração de um provedor de credenciais, selecione um tópico:

AgentCore Autorização da função de serviço de gateway (IAM)

Se você estiver usando a autorização do IAM por meio de uma função de serviço do AgentCore Gateway para seu destino, especifique o credentialProviderType asGATEWAY_IAM_ROLE. A configuração depende do seu tipo de alvo.

Para destinos Lambda, API Gateway, Smithy e Connector

A iamCredentialProvider configuração não é necessária porque o nome do serviço de destino já é conhecido pelo serviço AgentCore Gateway. Use somente a credentialProviderType configuração, conforme mostrado no exemplo a seguir:

{ "credentialProviderType": "GATEWAY_IAM_ROLE" }

Para servidores MCP e destinos OpenAPI

Para o servidor MCP e os destinos OpenAPI, você também deve fornecer um iamCredentialProvider com o nome do serviço usado para AWS assinatura Signature Version 4 (Sig V4). O campo service é obrigatório. O region campo é opcional e o padrão é a Região do gateway.

{ "credentialProviderType": "GATEWAY_IAM_ROLE", "credentialProvider": { "iamCredentialProvider": { "service": "execute-api", "region": "us-west-2" } } }

A tabela a seguir descreve os campos no iamCredentialProvider objeto:

Campo Obrigatório Descrição

service

Sim

O nome do AWS serviço usado para assinatura SigV4. Esse valor deve corresponder ao nome do serviço que o alvo espera ao verificar a assinatura SigV4. A seguir estão os valores comuns:

  • bedrock-agentcore— Para servidores MCP hospedados no Amazon Bedrock AgentCore, como o tempo de execução (consulte Implantar servidores MCP em AgentCore tempo de execução) ou outro gateway.

  • execute-api— Para servidores MCP ou destinos OpenAPI por trás do Amazon API Gateway.

  • lambda— Para servidores MCP por trás de URLs da função Lambda.

region

Não

A AWS região para assinatura do SigV4. Se omitido, o padrão é a Região do gateway.

Autorização OAuth

Se você estiver usando a autorização OAuth, especifique o ascredentialProviderType. OAUTH No objeto para o qual o credentialProvider campo é mapeado, mapeie um nome de oauthCredentialProvider campo para um OAuthCredentialProvider objeto e forneça os valores com base na sua configuração de autorização de saída.

A estrutura do OAuthCredentialProvider difere dependendo do tipo de padrão de autenticação que você configurou. Para saber mais sobre diferentes padrões de autenticação, consulte Padrões de autenticação compatíveis.

  • Se você configurar a autenticação máquina a máquina, também conhecida como concessão de credenciais do cliente ou OAuth bidirecional (2LO), siga a estrutura na guia Credenciais do cliente.

  • Se você configurar o acesso delegado pelo usuário, também conhecido como concessão de código de autorização ou OAuth de 3 pernas (3LO), siga a estrutura na guia Código de autorização.

  • Se você configurar a troca de tokens em nome da troca de tokens para propagar a identidade de um usuário autenticado para um serviço downstream ou obter um token de acesso com o contexto do ator, siga a estrutura na guia Troca de tokens (). On-behalf-of

Selecione um dos seguintes métodos:

exemplo
Client credentials
  1. Especifique o grantType comoCLIENT_CREDENTIALS, como no exemplo a seguir:

    { "credentialProviderType": "OAUTH", "credentialProvider": { "oauthCredentialProvider": { "providerArn": "string", "grantType": "CLIENT_CREDENTIALS", "scopes": [ "string", ... ], "customParameters": { "string": "string" } } } }
Authorization code
  1. Especifique grantType as AUTHORIZATION_CODE e inclua, no defaultReturnUrl campo, a URL para a qual redirecionar o navegador do usuário final após obter o código de autorização, como no exemplo a seguir:

    { "credentialProviderType": "OAUTH", "credentialProvider": { "oauthCredentialProvider": { "providerArn": "string", "grantType": "AUTHORIZATION_CODE", "defaultReturnUrl": "string", "scopes": [ "string", ... ], "customParameters": { "string": "string" } } } }

    Para saber mais sobre a autenticação 3LO, consulte Vinculação de sessão de URL de autorização do OAuth 2.0.

Token exchange (On-behalf-of)
  1. Especifique o grantType como TOKEN_EXCHANGE. O gateway troca o token de acesso do usuário de entrada por um token com escopo de destino por meio do provedor de credenciais. Inclua quaisquer IdP-specific parâmetros emcustomParameters. Para obter mais informações sobre como configurar o provedor de credenciais, consulte troca de On-behalf-of tokens.

    { "credentialProviderType": "OAUTH", "credentialProvider": { "oauthCredentialProvider": { "providerArn": "string", "grantType": "TOKEN_EXCHANGE", "scopes": [ "string", ... ], "customParameters": { "subject_token_type": "urn:ietf:params:oauth:token-type:access_token" } } } }
    nota

    O customParameters campo passa valores diretamente para o endpoint do token do provedor de identidade. Os parâmetros necessários variam de acordo com o provedor. Por exemplo, o Okta exige um audience parâmetro além desubject_token_type. Consulte a documentação do seu provedor de identidade e a troca de On-behalf-of tokens para obter detalhes.

Autorização de chave de API

Se você configurar a autorização da chave de API, especifique o credentialProviderType asAPI_KEY. No objeto para o qual o credentialProvider campo é mapeado, mapeie um nome de apiKeyCredentialProvider campo para um ApiKeyCredentialProvider objeto e forneça os valores com base na sua configuração de autorização de saída. O JSON a seguir mostra a estrutura:

{ "credentialProviderType": "API_KEY", "credentialProvider": { "apiKeyCredentialProvider": { "providerArn": "string", "credentialLocation": "HEADER" | "QUERY_PARAMETER", "credentialParameterName": "string", "credentialPrefix": "string" } } }

Autorização de credenciais IAM do chamador

Se você quiser que o gateway use a identidade do IAM e as permissões do chamador para assinar solicitações para o destino downstream, especifique ascredentialProviderType. CALLER_IAM_CREDENTIALS Com esse tipo de autorização, o gateway faz uma solicitação ao destino downstream em nome do chamador do gateway usando SigV4. Isso permite que o alvo downstream aplique políticas de IAM com base em quem originalmente chamou o gateway.

nota

CALLER_IAM_CREDENTIALSsó está disponível para gateways que tenham AWS_IAM ou sejam o AUTHENTICATE_ONLY tipo de autorizador.

{ "credentialProviderType": "CALLER_IAM_CREDENTIALS" }

Autorização de passagem do JWT

Se você quiser que o gateway passe o token do portador da solicitação recebida diretamente para o destino downstream sem modificação, especifique o as. credentialProviderType JWT_PASSTHROUGH O gateway valida o token de entrada e o encaminha para o destino na solicitação de saída. Isso é útil quando o serviço de destino gerencia sua própria autorização usando o token do chamador original.

nota

JWT_PASSTHROUGHsó está disponível para destinos HTTP (passagem e AgentCore tempo de execução).

{ "credentialProviderType": "JWT_PASSTHROUGH" }