Saltar para o conteúdo principal

Google Cloud — Discovery

Conecte seu projeto do Google Cloud (ou uma organização ou pasta inteira) para que a SecureAI possa inventariar agentes, endpoints e modelos da Vertex AI, juntamente com as contas de serviço, chaves, vinculações do IAM, registros de auditoria, uso e custo que os cercam.
Este cartão apenas lê o projeto e nunca envia um prompt. Se você quer executar o tráfego de LLM da SecureAI na sua própria conta do Google Cloud, consulte Google Vertex AI — Inferência na sua conta.

O que a SecureAI importa

  • Vertex AI: agentes (Agent Engine), endpoints de serving, jobs de batch e de tuning em execução, e modelos — o Model Registry mais cada modelo de publisher em uso (Gemini, Claude, modelos abertos).
  • Agent Builder / Gemini Enterprise e Dialogflow CX (opcional): os engines do Agent Builder (Discovery Engine) com seus data stores, consultados nos locais global, us e eu; e os agentes do Dialogflow CX, consultados em global e nos locais da Vertex AI que você configurar.
  • Uso por modelo dos últimos 30 dias: solicitações (e quantas falharam), tokens de entrada e de saída, e tokens de cache de prompts.
  • Uso por credencial dos últimos 30 dias (Cloud Monitoring): total de solicitações e solicitações às APIs de IA (Vertex AI, Gemini API, Agent Builder, Dialogflow) de cada conta de serviço e de cada chave de API. O tráfego de clientes OAuth (pessoas e ferramentas como o console ou o gcloud) é somado à parte. Também fornece o último uso dessas contas e chaves.
  • Uso por modelo e identidade (opcional): qual conta de serviço ou pessoa chamou qual modelo da Vertex AI, obtido dos registros de auditoria de acesso a dados (Data Access) se você os tiver ativados. Consulte Uso por modelo e identidade.
  • Vertex AI usada fora da SecureAI: as identidades que chamaram a Vertex AI ou o Gemini diretamente, sem passar pela conexão de inferência da SecureAI. Consulte Vertex AI usada fora da SecureAI.
  • Custo dos últimos 30 dias: o gasto real deste projeto com IA, obtido da sua exportação de faturamento para o BigQuery, ou uma estimativa pelo preço de tabela.
  • NHIs: contas de serviço, chaves de conta de serviço gerenciadas pelo usuário, chaves de API, pools e provedores de Workload Identity Federation, e clientes OAuth — com seu último uso (do Policy Analyzer e do uso por credencial) e seu risco de privilégio. Revogáveis e restauráveis no Inventário de NHIs, manualmente ou com políticas automáticas.
  • Vinculações de papéis do IAM no projeto.
  • Registros de auditoria do Cloud dos serviços de IA e de identidade (Vertex AI, IAM, IAM Credentials, STS, API Keys, Resource Manager): os 200 eventos mais recentes dos últimos 30 dias.
Por padrão, o conector lê um projeto. Com o campo Organization or folder, ele lê todos os projetos ativos de uma organização ou pasta: consulte Modo organização ou pasta.

Pré-requisitos

APIs ativadas

A SecureAI lê cada superfície com a API do Google correspondente. Ative-as no projeto (APIs e serviços → Biblioteca, ou com gcloud services enable): Uma API desativada não faz a sincronização falhar: ela aparece como uma lacuna, API disabled in the project — enable it, com o nome do serviço. Agent Builder e Dialogflow são a exceção: se a API deles estiver desativada, a SecureAI entende que o projeto não usa esse produto e não a marca como lacuna.

Papéis

Uma conta de serviço com a qual a SecureAI atua. Conceda a ela estes papéis no projeto (IAM e administrador → IAM → Conceder acesso): Para o custo real, seus dados do Cloud Billing precisam estar exportados para o BigQuery, e a conta de serviço precisa de roles/bigquery.dataViewer no dataset da exportação e de roles/bigquery.jobUser no projeto que executa a consulta. Para revogar e restaurar a partir da SecureAI (opcional), você precisa do papel de cada ação que quer permitir. Se sua implantação oferece acesso sem chave, conceda-os a uma conta de serviço separada, só para revogação, e mantenha a conta de leitura com papéis somente de leitura; caso contrário, conceda-os à conta de serviço do conector:
Você não precisa de roles/billing.viewer: é um papel de conta de faturamento, não pode ser concedido em um projeto e o conector não o usa.
Nada é ignorado em silêncio: o que a SecureAI não consegue ler aparece com o papel que resolve o problema — ao conectar, após cada sincronização e no painel do GCP.

Credenciais

Onde obtê-los

Opção A — chave JSON
  1. No console do Google Cloud, acesse IAM e administrador → Contas de serviço → Criar conta de serviço (por exemplo, secureai-discovery).
  2. Acesse IAM e administrador → IAM → Conceder acesso, insira o e-mail da conta de serviço como principal e adicione os papéis de Pré-requisitos.
  3. De volta em Contas de serviço, abra a conta → Chaves → Adicionar chave → Criar nova chave → JSON e baixe o arquivo.
  4. Cole o JSON inteiro em Service Account JSON e depois exclua o arquivo baixado.
O mesmo com gcloud:
Se você usa o Agent Builder ou o Dialogflow CX, as APIs deles já estão ativadas no projeto; não é preciso ativá-las para a SecureAI.
Se o Google responder que a criação de chaves de conta de serviço está desativada, sua organização aplica a política iam.disableServiceAccountKeyCreation — o padrão nas organizações criadas desde 2024. Use a opção B ou peça ao administrador da sua organização uma exceção para este projeto.
Opção B — sem chave (personificação)
  1. Crie a conta de serviço e conceda os papéis a ela (passos 1 e 2 acima).
  2. No formulário de conexão da SecureAI, o texto de ajuda do campo Service account to impersonate (keyless — instead of the JSON) indica qual conta da SecureAI deve ser autorizada. No Google Cloud, abra sua conta de serviço → Permissões → Conceder acesso, insira essa conta como principal e atribua a ela roles/iam.serviceAccountTokenCreator. Com gcloud:
  3. Insira o e-mail da sua conta de serviço no campo e deixe o JSON vazio.
Se o campo não aparecer, sua implantação não oferece acesso sem chave — use a opção A.

Conta de serviço separada para revogação

Se sua implantação oferece acesso sem chave, você pode manter a leitura e a revogação separadas. Isso é recomendado em vez de dar os papéis de revogação à conta de serviço que lê:
  1. Crie uma segunda conta de serviço (por exemplo, secureai-revoke) e conceda a ela apenas os papéis de revogação de Pré-requisitos.
  2. Nessa conta, conceda roles/iam.serviceAccountTokenCreator à conta da SecureAI indicada no texto de ajuda do campo Service account for revocation (optional — separate from reading).
  3. Insira o e-mail dela nesse campo.
A SecureAI solicita um token de 1 hora a essa conta somente enquanto revoga ou restaura uma identidade; a sincronização nunca a usa. A conta de serviço de leitura mantém papéis somente de leitura. A SecureAI também se recusa a revogar a conta de revogação a partir do inventário.

Modo organização ou pasta

Para inventariar vários projetos com um único conector, preencha Organization or folder com organizations/<número> ou folders/<número> (por exemplo, organizations/123456789012).
  • A SecureAI encontra os projetos ativos com o Cloud Asset Inventory e lê cada um como se fosse um conector de projeto único. O Google Cloud Project ID continua sendo o projeto de cota e de faturamento.
  • Conceda à conta de serviço, na organização ou pasta: roles/cloudasset.viewer, roles/iam.securityReviewer e roles/aiplatform.viewer, mais roles/monitoring.viewer e roles/logging.viewer para uso e auditoria.
  • Ative cloudasset.googleapis.com no projeto da conta de serviço.
Para uma pasta, use gcloud resource-manager folders add-iam-policy-binding <número> em vez de gcloud organizations add-iam-policy-binding. Para que uma sincronização termine em um tempo razoável, cada uma tem limites. O projeto de cota vem primeiro, depois os projetos com recursos da Vertex AI: O que ficar fora de um limite aparece como uma lacuna parcial, com quanto foi lido. Um projeto que não pode ser lido também é listado como lacuna, e nada dele é retirado nem eliminado. Ao conectar, o teste neste modo apenas enumera a primeira página de projetos e verifica o projeto de cota: ler cada projeto é tarefa da sincronização.

Conectar

  1. Admin → Integrations → Cloud → Google Cloud — Descoberta → Conectar Integração.
  2. Insira o ID do projeto, o local (ou vários em More Vertex AI Locations) e a chave JSON ou a conta de serviço a personificar. Se você os usa, adicione a conta de serviço para revogação, a organização ou pasta e os campos de faturamento.
  3. Clique em Conectar. Antes de salvar, a SecureAI verifica as credenciais com uma leitura real do projeto — leva alguns segundos. Se não conseguir ler o projeto, ela mostra o motivo e não salva nada; o que você inseriu permanece no formulário. As mensagens possíveis estão em Solução de problemas.
  4. Se salvar, mas faltarem papéis, um aviso os lista. Conceda-os e sincronize novamente.
  5. Sincronize agora com o botão de atualizar do cartão. Depois disso, a SecureAI sincroniza automaticamente a cada 6 horas.
Para alterar as credenciais mais tarde, use Conectar novamente. Os campos deixados vazios mantêm o valor armazenado; inserir uma chave JSON substitui uma personificação armazenada, e vice-versa.

Verifique

  • Sensores Cloud lista os agentes descobertos. Clique no cartão do Google Cloud para abrir o painel do GCP: uso e custo (solicitações, falhas, tokens, cache, custo e sua origem), modelos e implantações, identidade e acesso (contas de serviço e chaves com seu último uso, vinculações do IAM) e auditoria.
  • Se o painel disser Discovery could not read everything, revise cada linha (consulte Solução de problemas) e sincronize novamente.
  • O Inventário de NHIs mostra as contas de serviço e as chaves.
Se uma sincronização falhar (por exemplo, porque a chave foi excluída ou os papéis foram removidos), o cartão mostra o erro e a SecureAI tenta novamente com espera progressiva, mantendo o último inventário. Uma leitura parcial nunca desativa agentes nem remove identidades.

Uso por modelo e identidade

O Cloud Monitoring informa quantas solicitações cada credencial fez, mas não a qual modelo. Para saber qual identidade chamou qual modelo, a SecureAI lê os registros de auditoria de acesso a dados (Data Access) da Vertex AI. É opcional e depende de você:
  • A SecureAI só os lê se os registros DATA_READ ou DATA_WRITE estiverem ativados para aiplatform.googleapis.com (ou para todos os serviços). A SecureAI detecta isso na política do IAM; ela nunca os ativa.
  • Ativá-los tem um custo de ingestão do Cloud Logging, pelas tarifas do Google. Você os ativa em IAM e administrador → Registros de auditoria → Vertex AI API → Leitura de dados.
  • A conta de serviço precisa de roles/logging.privateLogViewer.
  • Por projeto e por sincronização, a SecureAI lê até 5.000 entradas ou durante 20 segundos, o que ocorrer primeiro.
  • Se estiverem desativados, o painel mostra uma lacuna opcional explicando como ativá-los. Se você os ativou na organização ou pasta, mas conecta um único projeto, a SecureAI não consegue ver isso pela política do projeto e mostra a lacuna mesmo assim.

Risco de privilégio

Com a política do IAM lida, a SecureAI marca uma conta de serviço como privilegiada quando ela tem algum destes papéis:
  • Proprietário (roles/owner) ou Editor (roles/editor);
  • qualquer papel de administrador (roles/<serviço>.admin ou terminado em Admin);
  • roles/iam.serviceAccountTokenCreator ou roles/iam.serviceAccountUser, que permitem a quem os tem atuar como outras contas de serviço.
Uma chave gerenciada pelo usuário de uma conta de serviço privilegiada herda a marcação: quem tem a chave tem esse privilégio. Chaves de API sem restrições (sem destino de API e sem restrição de aplicativo) também são marcadas. No Inventário de NHIs, elas aparecem entre os fatores de risco como Privileged (admin role or impersonation) e API key without restrictions. Se a política do IAM não puder ser lida, a SecureAI não marca nada, em vez de tratar uma conta como não privilegiada.

Vertex AI usada fora da SecureAI

No painel do GCP, a guia Identity & Access inclui Vertex AI used outside SecureAI: as identidades que chamaram a Vertex AI ou o Gemini diretamente nos últimos 30 dias, sem passar pela conexão de inferência da Vertex AI. Esses prompts não passaram por DLP, políticas nem recibos assinados.
  • Com os registros de auditoria de acesso a dados (Data Access) ativados (consulte Uso por modelo e identidade), cada linha diz quais modelos foram chamados e quantas vezes, e só são contadas chamadas de inferência.
  • Sem eles, o número vem do Cloud Monitoring por credencial (conta de serviço ou chave de API) e inclui toda chamada a uma API de IA (Vertex AI, Gemini API, Agent Builder, Dialogflow), não só inferência.
  • A conta de serviço da conexão de inferência e a do conector nunca são contadas. As pessoas não são listadas uma a uma: as chamadas delas ficam em uma única linha agregada (People (Google accounts), ou People and tools (OAuth): console, gcloud, apps).
  • Se a SecureAI não conseguiu ler a conexão de inferência nessa sincronização, ela não classifica nada, indica isso como lacuna opcional e mantém o resultado da sincronização anterior.
  • Gera a constatação do Insights Google Vertex AI / Gemini is being used outside SecureAI: moderada, e crítica se quem chama é uma chave de API (uma credencial de longa duração). É mapeada para OWASP LLM02, ISO/IEC 42001 A.4.2 e A.6.2.6, e NIST AI RMF MAP-1.1 e GOVERN-6.1.

Custo

  • Com a tabela de exportação de faturamento: o gasto real deste projeto com serviços de IA (Vertex AI, Gemini API, Agent Builder, Dialogflow, …), descontados os créditos, na moeda da sua conta de faturamento. Quando os créditos cobrem o uso, o valor líquido pode ser zero; nesse caso o painel mostra ao lado o valor antes dos créditos. O Google atualiza a exportação com um atraso de várias horas.
  • Sem ela: uma estimativa — tokens do Cloud Monitoring × preço de tabela, incluindo Claude e os tokens de cache de prompts. Não reflete descontos nem contratos de uso comprometido.

Revogação e restauração

As identidades do GCP são revogáveis no Inventário de NHIs (cadeado) quando o conector, ou a conta de serviço para revogação, tem o papel daquela ação (consulte Pré-requisitos). O que cada uma faz no Google: Para desfazer uma revogação, abra o menu da identidade no Inventário de NHIs e escolha Restore (Undo the revocation at Google Cloud). A identidade é ativada novamente no Google Cloud e, na SecureAI, é desbloqueada e permanece In remediation até que você a revise.
  • Só pode ser restaurado o que a SecureAI revogou no Google Cloud, manualmente ou por uma política automática. Não é oferecido para um bloqueio apenas no gateway da SecureAI, nem para uma identidade que sua equipe desativou diretamente no Google Cloud.
  • Uma chave de conta de serviço excluída não pode ser restaurada: a SecureAI recusa sem chamar o Google.
  • Restaurar usa os mesmos papéis que revogar.
Proteções:
  • A conta de serviço que o conector usa, e as chaves dela, não podem ser revogadas a partir da SecureAI — isso interromperia a descoberta. O mesmo vale para a conta de serviço para revogação. Faça a rotação delas no Google Cloud.
  • Também não podem ser revogadas a conta de serviço com que a conexão de inferência da Vertex AI se autentica, nem a chave com que ela assina: isso interromperia todas as chamadas governadas. Com a opção sem chave (personificação), só a conta de serviço fica protegida: as chaves dela podem ser revogadas, porque a SecureAI não assina com nenhuma delas. Se a SecureAI não conseguir verificar qual identidade a conexão de inferência usa, ela não revoga nenhuma conta de serviço nem chave de conta de serviço (as chaves de API não são afetadas).
  • As contas de serviço padrão do Google (a padrão do Compute Engine, App Engine, Cloud Build, agentes de serviço) pedem uma segunda confirmação: desativar uma delas interrompe cada VM, aplicativo ou build que é executado com ela.
  • Se faltar ao conector o papel de uma ação, o erro indica qual é.

Políticas automáticas de NHI

As políticas automáticas de NHI (Inventário de NHIs → Automatic policies) alertam sobre identidades do Google Cloud ou as revogam por regra, sem revisá-las uma a uma. Elas são avaliadas ao final de cada sincronização bem-sucedida do conector, apenas sobre as identidades dele. Cada regra tem três modos: Off, Alert e Revoke. Todas começam desativadas. As proteções:
  • O Simulation mode (dryRun) vem ativado por padrão: com ele, nenhuma regra em Revoke corta nada; apenas lista o que faria. Desativá-lo é a única coisa que habilita cortes reais. Simulate with this configuration mostra o efeito antes de você salvar.
  • Revocation cap per run: 5 por padrão (de 1 a 50). Se, em uma execução, as regras em Revoke corresponderem a mais identidades do que o limite, nada é cortado e um alerta é enviado.
  • Exclusions: nenhuma regra age sobre uma identidade cujo proprietário, nome ou recurso corresponda a um padrão; * é o único curinga.
  • Só são avaliadas listagens de chaves completas.
  • Uma credencial que a SecureAI usa (a do conector, a da conta de revogação ou a da inferência da Vertex AI) nunca é cortada. As chaves das contas de serviço padrão do Google nunca são cortadas automaticamente: a regra apenas alerta, e uma pessoa decide.
No Google Cloud, revogar uma chave de conta de serviço a exclui (ela não pode ser restaurada), e revogar uma chave de API a exclui com 30 dias para restaurá-la. Cada ação é auditada e notificada.

Solução de problemas

Ao conectar

Se o teste falhar, Conectar mostra uma destas mensagens e não salva nada:

Lacunas do painel

Quando o painel do GCP diz Discovery could not read everything, cada linha indica a superfície e o que está faltando. As linhas marcadas como optional apenas enriquecem o inventário.

Relacionado