Os agentes do Kit de Desenvolvimento de Agente (ADK, na sigla em inglês) interagem com serviços externos fora do Cloud de Confiance by S3NS. As identidades de agente e Identity and Access Management (IAM) permitem que você faça a autenticação com Cloud de Confiance by S3NS serviços. No entanto, eles não podem comprovar a identidade para plataformas externas que não oferecem suporte à federação de identidade do Google.
Os agentes do ADK exigem acesso a várias credenciais para interagir com entidades externas, como serviços do MCP, ferramentas do ADK e APIs. Confira alguns exemplos comuns:
- Chaves de API para plataformas de processamento de pagamentos
- Combinações de nome de usuário e senha para bancos de dados legados locais
- Chaves privadas para conexões TLS mútuas (mTLS)
SecretManagerClient no pacote google.adk.integrations.secret_manager.secret_client. Esse módulo oferece uma interface padrão para que os agentes recuperem secrets do Secret Manager no ambiente de execução.
Este documento explica como gerenciar secrets para serviços externos no ADK usando o Secret Manager.
Vantagens de usar o Secret Manager com o ADK
O gerenciamento manual de secrets pode gerar riscos de segurança e aumentar o trabalho dos desenvolvedores. O Secret Manager pode ajudar a resolver esses problemas das seguintes maneiras:
- Se você incorporar secrets no código do agente, vai criar um risco de segurança significativo. Essa prática pode levar a acessos não autorizados a sistemas de produção. O uso do Secret Manager remove dados sensíveis do código-fonte. Isso ajuda a tornar o aplicativo mais seguro.
- Se você incorporar secrets estáticos usando variáveis de ambiente, a rotação de credenciais se torna complicada. Para aplicar atualizações, é necessário reiniciar os contêineres de implantação. O Secret Manager recupera credenciais de forma dinâmica no ambiente de execução, o que permite atualizações sem tempo de inatividade do sistema.
- Se você escrever um
SecretManagerServiceClientcódigo boilerplate personalizado para cada ferramenta, vai aumentar o trabalho dos desenvolvedores e o risco de erros. A integração padronizada do ADK oferece uma abordagem limpa e reutilizável para recuperar credenciais.
Antes de começar
Antes de integrar o Secret Manager ao ADK, faça o seguinte:
- Configure um agente usando o ADK. Esse recurso exige a versão 1.29 ou mais recente do ADK para Python.
- Conceda o
Secret Manager Secret Accessorpapel do IAM à identidade do agente. Esse papel permite que o agente recupere secrets no ambiente de execução. - Crie um secret e adicione uma versão dele, como uma chave de API, no Secret Manager.
Como um agente do ADK recupera secrets no ambiente de execução
O módulo secret_client.SecretManagerClient recupera credenciais
na lógica do código do agente Python no ambiente de execução. A lógica de orquestração do agente envia comandos ao modelo de linguagem grande (LLM) para decidir qual ferramenta executar, mas o sistema não envia o secret ao LLM.
O agente executa as etapas a seguir durante a fase de execução:
- Antes que um agente do ADK invoque uma ferramenta de terceiros, ele inicializa o
SecretManagerClientmódulo e chama aget_secret()função. - O agente do ADK usa a identidade do agente para fazer a autenticação com Secret Manager.
- O módulo
SecretManagerClientretorna o secret de texto simples ao agente do ADK. - O agente do ADK usa o secret para fazer uma chamada autenticada para a ferramenta de terceiros.
Recuperar secrets em um agente do ADK no ambiente de execução
O exemplo de código a seguir mostra como usar o módulo SecretManagerClient para recuperar um secret com segurança em um agente do ADK. O agente recupera o secret internamente para evitar a exposição de credenciais sensíveis à janela de contexto ou ao histórico de conversas do LLM.
Python
Antes de executar exemplos de código, defina a variável de ambiente GOOGLE_CLOUD_UNIVERSE_DOMAIN como s3nsapis.fr.
Para executar esse código, primeiro configure um ambiente de desenvolvimento do Python e instale o SDK do Python do Secret Manager. No Compute Engine ou no GKE, você precisa fazer a autenticação com o escopo do cloud-platform.
A seguir
- Conheça o Kit de Desenvolvimento de Agente.