View a markdown version of this page

Configurar a autenticação da conta de serviço para o Google Drive - Amazon Bedrock

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á.

Configurar a autenticação da conta de serviço para o Google Drive

A autenticação da conta de serviço (SERVICE_ACCOUNT) é o método recomendado para uma fonte de dados do Google Drive. Uma conta de serviço do Google Cloud é autenticada com uma chave privada e, em seguida, se faz passar por um usuário administrador do Google Workspace para rastrear o conteúdo do Drive para qualquer usuário em seu domínio. Esse é o único método que oferece suporte ao controle de acesso (ACLs) em nível de documento.

Acesso administrativo necessário

Essa configuração exige que um administrador do Google Workspace ative as APIs, crie a conta de serviço, configure a delegação em todo o domínio e crie um usuário administrador delegado. O AWS lado requer acesso de administrador AWS Secrets Manager ao IAM.

Etapa 1: criar um projeto do Google Cloud

  1. Abra o console do Google Cloud.

  2. No seletor de projetos na parte superior da página, escolha Novo projeto.

  3. Insira o nome do projeto e escolha Criar.

  4. Depois que o projeto for criado, mude para ele a partir do seletor de projetos.

Etapa 2: habilitar as APIs necessárias

  1. No menu de navegação do console do Google Cloud, escolha APIs e serviços e, em seguida, Biblioteca.

  2. Pesquise e ative cada uma das seguintes APIs:

    • API do Google Drive

    • API de atividades do Google Drive

    • API do SDK administrativo

Etapa 3: criar a conta de serviço

  1. No menu de navegação, escolha APIs e serviços e, em seguida, Credenciais.

  2. Escolha Criar credenciais e, em seguida, Conta de serviço.

  3. Insira um nome (por exemplo,bedrock-google-drive-connector) e uma descrição opcional e escolha Concluído.

  4. Na página Credenciais, escolha a conta de serviço que você acabou de criar.

  5. Na guia Detalhes, copie a ID exclusiva. Você usa isso na Etapa 5 para conceder delegação em todo o domínio.

Etapa 4: gerar uma chave privada

  1. Na página de detalhes da conta de serviço, escolha a guia Chaves.

  2. Escolha Adicionar chave e, em seguida, Criar nova chave.

  3. Selecione JSON e escolha Criar. Seu navegador baixa um arquivo JSON contendo a conta de serviço client_email e. private_key Armazene o arquivo com segurança.

nota

Se você receber um erro informando que a criação da chave da conta de serviço está desativada por uma política da organização, você deve substituir a iam.disableServiceAccountKeyCreation restrição do seu projeto. Para obter detalhes, consulte Restringir o uso da conta de serviço na documentação do Google Cloud.

Etapa 5: Configurar a delegação em todo o domínio

Domain-wide A delegação permite que a conta de serviço atue em nome dos usuários no seu Google Workspace.

  1. Faça login no Google Workspace Admin Console como administrador do Google Workspace.

  2. No painel de navegação, escolha Segurança, Controle de acesso e dados, controles de API.

  3. Escolha Gerenciar delegação em todo o domínio e, em seguida, Adicionar novo.

  4. Em ID do cliente, insira a ID exclusiva da conta de serviço na Etapa 3.

  5. Para escopos do OAuth, insira os seguintes valores separados por vírgula:

    https://www.googleapis.com/auth/drive.readonly, https://www.googleapis.com/auth/drive.metadata.readonly, https://www.googleapis.com/auth/admin.directory.user.readonly, https://www.googleapis.com/auth/admin.directory.group.readonly, https://www.googleapis.com/auth/cloud-platform, https://www.googleapis.com/auth/forms.body.readonly
  6. Escolha Authorize.

Etapa 6: criar um usuário administrador delegado

A conta de serviço se faz passar por um usuário administrador do Google Workspace ao rastrear conteúdo. Recomendamos criar um usuário administrador dedicado para essa finalidade com as funções mínimas necessárias.

  1. No Google Workspace Admin Console, escolha Diretório e, em seguida, Usuários.

  2. Escolha Adicionar novo usuário, insira um nome, sobrenome e endereço de e-mail principal e escolha Adicionar novo usuário.

  3. Na lista de usuários, abra o usuário que você criou.

  4. Expanda a seção Funções e privilégios de administrador e atribua as seguintes funções:

    • Leitor de grupos

    • Administrador de gerenciamento de usuários

    • Administrador de armazenamento

  5. Escolha Salvar. Registre o endereço de e-mail desse usuário; você o armazena no segredo comoadminAccountEmail.

Etapa 7: Criar o segredo do Secrets Manager

Armazene as credenciais em um AWS Secrets Manager segredo com os seguintes pares de valores-chave. Copie clientEmail e privateKey do arquivo de chave JSON que você baixou na Etapa 4 (use os private_key valores client_email e).

{ "adminAccountEmail": "admin@your-domain.com", "clientEmail": "your-service-account@your-project.iam.gserviceaccount.com", "privateKey": "your-private-key-from-the-json-key-file" }

Crie o segredo com o AWS Command Line Interface:

aws secretsmanager create-secret \ --name bedrock-google-drive-sa-creds \ --secret-string file://secret.json

Registre o ARN secreto da resposta. Você o usa como fonte de dadossecretArn.

nota

O privateKey valor contém sequências de \n escape literais do arquivo de chave JSON. Mantenha-os como estão ao copiar o valor para o segredo.

Próximas etapas

Depois de armazenar o segredo, crie a fonte de dados com authType definido comoSERVICE_ACCOUNT. Consulte Conectar uma fonte de dados do Google Drive. Para filtrar os resultados da consulta por permissões do usuário, consulteDocument-level controles de acesso.