View a markdown version of this page

Especifique o tipo de autorização e as credenciais para acessar o destino do gateway - Amazon Bedrock AgentCore

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

No corpo da CreateGatewayTargetsolicitaçã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 do 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 credentialProviderType asGATEWAY_IAM_ROLE. A configuração depende do seu tipo de alvo.

Para alvos 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 destinos do servidor MCP e da OpenAPI, você também deve fornecer iamCredentialProvider um com o nome do serviço usado AWS para a assinatura do Signature Version 4 (Sig V4). O campo service é obrigatório. O region campo é opcional e usa como 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 destino 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 runtime (consulte Implantar servidores MCP no AgentCore Runtime) 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 dos 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 do OAuth, especifique o credentialProviderType como. OAUTH No objeto para o qual o credentialProvider campo é mapeado, mapeie um nome de oauthCredentialProvider campo para um OAuthCredentialProviderobjeto e forneça os valores com base na sua configuração de autorização de saída.

A estrutura do OAuthCredentialProviderdifere dependendo do tipo de padrão de autenticação que você configurou. Para saber mais sobre os 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 três pernas (3LO), siga a estrutura na guia Código de autorização.

  • Se você configurar a troca de tokens em nome de um usuário autenticado para um serviço posterior ou obter um token de acesso com o contexto do ator, siga a estrutura na guia Troca de token (). 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 o grantType como 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 alvo por meio do provedor de credenciais. Inclua todos IdP-specific os 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 os 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 requer 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 da chave de API

Se você configurar a autorização da chave de API, especifique credentialProviderType asAPI_KEY. No objeto para o qual o credentialProvider campo é mapeado, mapeie um nome de apiKeyCredentialProvider campo para um ApiKeyCredentialProviderobjeto 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 do 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 do IAM com base em quem originalmente ligou para o gateway.

nota

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

{ "credentialProviderType": "CALLER_IAM_CREDENTIALS" }

Autorização de passagem do JWT

Se você quiser que o gateway passe o token portador da solicitação recebida diretamente para o destino downstream sem modificação, especifique 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 processa sua própria autorização usando o token original do chamador.

nota

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

{ "credentialProviderType": "JWT_PASSTHROUGH" }