Crie e configure uma ligação ao Google Drive

A página descreve como criar e configurar uma ligação do Google Drive nos Integration Connectors. Para mais informações sobre o conetor do Google Drive, consulte o artigo Vista geral do conetor do Google Drive.

Antes de começar

No seu projeto Google Cloud, realize as seguintes tarefas:

  • Certifique-se de que a conetividade de rede está configurada. Para obter informações sobre padrões de rede, consulte o artigo Conetividade de rede.
  • Conceda a função IAM roles/connectors.admin ao utilizador que está a configurar o conetor.
  • Conceda a função de IAM roles/secretmanager.viewer e roles/secretmanager.secretAccessor à conta de serviço que quer usar para o conector.
  • Ative os seguintes serviços:
    • secretmanager.googleapis.com (API Secret Manager)
    • connectors.googleapis.com (API Connectors)

    Para saber como ativar serviços, consulte o artigo Ativar serviços. Se estes serviços ou autorizações não tiverem sido ativados anteriormente para o seu projeto, é-lhe pedido que os ative quando configurar o conector.

Crie uma ligação ao Google Drive

Para criar uma associação do Google Drive, faça o seguinte:

  1. Na Google Cloud consola, aceda à página Integration Connectors > Ligações.

    Aceda a Ligações

  2. Clique em Criar associação.

    É apresentada a página Criar associação.

  3. Na secção Localização:
    1. Clique em Região e, de seguida, selecione uma localização para a sua ligação.

      Para ver a lista de todas as regiões suportadas, consulte o artigo Localizações.

    2. Clicar em Seguinte.
  4. Na secção Detalhes da ligação, faculte os seguintes detalhes:
    1. Conector: selecione Google Drive.
    2. Versão do conetor: selecione a versão do conetor que quer usar.

      A versão do conector que selecionar depende da versão da API Google Drive que quer usar. Para mais informações, consulte o artigo Versões de ligação do Google Drive.

    3. Nome da associação: introduza um nome para a associação.
    4. Descrição: (opcional) introduza uma descrição para a associação.
    5. Opcionalmente, ative o Registo na nuvem e, em seguida, selecione um nível de registo. Por predefinição, o nível do registo está definido como Error.
    6. Conta de serviço: selecione a conta de serviço que quer usar para a associação. Certifique-se de que a conta de serviço tem as autorizações e as funções do IAM relevantes necessárias.
    7. Suporta todos os discos: selecione esta caixa de verificação para ativar o acesso a discos partilhados. Esta opção só está disponível para o Google Drive v2.
    8. Definições do nó de ligação: (opcional) configure as definições do nó de ligação.
      • Número mínimo de nós: introduza o número mínimo de nós de ligação.
      • Número máximo de nós: introduza o número máximo de nós de ligação.

      Um nó é uma unidade (ou uma réplica) de uma ligação que processa transações. São necessários mais nós para processar mais transações para uma ligação e, inversamente, são necessários menos nós para processar menos transações. Para compreender como os nós afetam os preços dos conectores, consulte o artigo Preços dos nós de ligação. Se não introduzir valores, por predefinição, os nós mínimos são definidos como 2 (para uma melhor disponibilidade) e os nós máximos são definidos como 50.

    9. Clicar em Seguinte.
  5. Na secção Autenticação, selecione e configure o tipo de autenticação para a associação:

    Conta de serviço

    Selecione esta opção se a sua aplicação for executada numa máquina virtual do Google Cloud e dever usar a conta de serviço anexada da VM para autenticação.

    Para usar este tipo de autenticação, tem de ter uma conta de serviço com as autorizações e funções do IAM relevantes necessárias para a autenticação.

    Para ver informações sobre como criar uma conta de serviço, consulte o artigo Criar e gerir contas de serviço. Para obter informações sobre como conceder funções a uma conta de serviço, consulte o artigo Conceder, alterar e revogar o acesso a recursos.

    Exemplo de detalhes de ligação para o tipo de autenticação de conta de serviço

    Nome do campo Detalhes
    Localização us-central1
    Conetor Google Drive
    Versão do conetor 2
    Nome da ligação googledrive-ws-gcpaccount
    Ative o Cloud Logging Sim
    Conta de serviço 123456789012-compute@developer.gserviceaccount.com
    Número mínimo de nós 2
    Número máximo de nós 50
    Autenticação Autenticação da conta de serviço

    OAuth 2.0 – Portador de JWT

    Para configurar o tipo de autenticação de portador JWT do OAuth 2.0, faça o seguinte:

    1. Crie uma chave JSON de conta de serviço e transfira o ficheiro de chave JSON. Este ficheiro de chave é usado como o certificado JWT para a ligação.
    2. Crie um segredo para armazenar o ficheiro de chave JSON ou o certificado JWT.
    3. Faculte os detalhes do segredo quando criar a ligação nos Integration Connectors:
      • Certificado JWT: escolha o segredo que contém o certificado JWT.
      • Versão do Secret: selecione a versão do Secret para o Secret selecionado.
      • Assunto do JWT: (opcional) introduza o assunto do JWT a usar para a ligação. Este valor é usado como o campo sub no token JWT.

    Detalhes de ligação de exemplo para o tipo de autenticação de portador JWT do OAuth 2.0

    Nome do campo Detalhes
    Localização us-central1
    Conetor Google Drive
    Versão do conetor 2
    Nome da ligação googledrivejwt
    Ative o Cloud Logging Sim
    Conta de serviço 123456789012-compute@developer.gserviceaccount.com
    Número mínimo de nós 2
    Número máximo de nós 50
    Autenticação OAuth 2.0 – Portador de JWT
    Certificado JWT
    {
      "type": "service_account",
      "project_id": "sm****-****-******",
      "private_key_id": "0b***************************",
      "private_key": "-----BEGIN PRIVATE KEY-----\nO********************************************=\n-----END PRIVATE KEY-----\n",
      "client_email": "go**********************************8",
      "client_id": "10**********************",
      "auth_uri": "https:***********************",
      "token_uri": "https:************************",
      "auth_provider_x509_cert_url": "https:*********************",
      "client_x509_cert_url": "https:****************************************************",
      "universe_domain": "go********"
    }
    Versão do Secret 2

    Código de autorização OAuth 2.0

    Use este método se a sua aplicação exigir a interação do utilizador final através de um início de sessão baseado no navegador.

    Para configurar o tipo de autenticação do código de autorização do Oauth 2.0, faça o seguinte:

    1. Crie credenciais do OAuth 2.0 para a sua aplicação Web. Este processo cria um ID do cliente e o ficheiro JSON do segredo do cliente.
    2. Identifique os âmbitos de acesso que quer conceder à sua aplicação.
    3. Crie um segredo para armazenar as credenciais do OAuth 2.0 (client_secret.json).
    4. Faculte o ID do cliente, os âmbitos e os detalhes secretos quando criar a ligação nos Integration Connectors:
      • ID de cliente: introduza o ID de cliente criado para a sua aplicação Web.
      • Âmbitos: introduza uma lista de âmbitos desejados separada por vírgulas.
      • Segredo do cliente: escolha o segredo que contém as credenciais do OAuth 2.0.
      • Versão do Secret: selecione a versão do Secret para o Secret selecionado.

    Exemplo de detalhes de ligação para o tipo de autenticação de código de autorização Oauth 2.0

    Nome do campo Detalhes
    Localização europe-west1
    Conetor Google Drive
    Versão do conetor 2
    Nome da ligação googledrive-wsconn-code
    Ative o Cloud Logging Sim
    Conta de serviço 123456789012-compute@developer.gserviceaccount.com
    Número mínimo de nós 2
    Número máximo de nós 50
    Autenticação OAuth 2.0 – Código de autorização
    ID do cliente CLIENT_ID
    Âmbitos https://www.googleapis.com/auth/drive, https://www.googleapis.com/auth/drive.readonly, https://www.googleapis.com/auth/drive.file, https://www.googleapis.com/auth/drive.appdata, https://www.googleapis.com/auth/drive.appfolder, https://www.googleapis.com/auth/drive.install, https://www.googleapis.com/auth/drive.metadata, https://www.googleapis.com/auth/drive.metadata.readonly, https://www.googleapis.com/auth/drive.activity, https://www.googleapis.com/auth/drive.activity.readonly, https://www.googleapis.com/auth/drive.apps.readonly, https://www.googleapis.com/auth/drive.scripts e https://www.googleapis.com/auth/drive.meet.readonly
    Segredo do cliente CLIENT_SECRET
    Versão do Secret 2
  6. Ativar substituição de autenticação: (opcional) selecione esta caixa de verificação para permitir que a ligação aceite uma autenticação diferente de forma dinâmica durante a execução.
  7. Clicar em Seguinte.
  8. Na secção Rever, reveja os detalhes de ligação e autenticação. Pode sempre clicar em qualquer uma das secções anteriores para fazer alterações, se necessário.
  9. Clique em Criar.

    O Integration Connectors começa a criar a associação para a configuração fornecida. Este processo demora alguns minutos a ser concluído. Depois de criar a associação, é feito o redirecionamento para a página Associações.

Use a ligação do Google Drive numa integração

Depois de criar a associação, esta fica disponível no Apigee Integration e no Application Integration. Pode usar a ligação numa integração através da tarefa Conectores.

  • Para compreender como criar e usar a tarefa Connectors no Apigee Integration, consulte o artigo Tarefa Connectors.
  • Para compreender como criar e usar a tarefa Connectors na integração de aplicações, consulte o artigo Tarefa Connectors.

Para ver a lista de entidades e operações suportadas, consulte o artigo Entidades e operações suportadas. Para obter informações sobre as ações específicas do conetor suportadas, consulte o artigo Ações suportadas.

Exemplos de utilização na integração de aplicações

Os exemplos seguintes demonstram como usar a tarefa Connectors na integração de aplicações para realizar operações através da sua ligação configurada ao Google Drive.

Exemplo: listar todos os ficheiros

  1. Na caixa de diálogo Configure connector task, clique em Entities.
  2. Selecione Files na lista Entity.
  3. Selecione a operação List e, de seguida, clique em Concluído.
  4. Na secção Entrada de tarefas da tarefa Conetores, pode definir o filterClause de acordo com o requisito do cliente.
  5. O valor de filterClause deve ser sempre transmitido entre aspas simples (') neste formato.

    Pode usar o filterClause para filtrar um determinado conjunto de registos com base em quaisquer colunas.

Exemplo: obter detalhes de um ficheiro

  1. Na caixa de diálogo Configure connector task, clique em Entities.
  2. Selecione Files na lista Entity.
  3. Selecione a operação Get e, de seguida, clique em Concluído.
  4. Defina o entityId como "1wsHFAusizqFe5O2", que é a chave a ser transmitida. Para definir o entityId, na secção Mapeador de dados do Mapeamento de dados, clique em Abrir editor de mapeamento de dados e, de seguida, introduza "1wsHFAusizqFe5O2" no campo Valor de entrada e escolha o entityId como variável local.
  5. O valor de entityId tem de ser transmitido diretamente, como "1wsHFAusizqFe5O2". Aqui, "1wsHFAusizqFe5O2" é o valor da chave principal exclusivo, que é transmitido.

Exemplo: elimine um ficheiro

  1. Na caixa de diálogo Configure connector task, clique em Entities.
  2. Selecione Files na lista Entity.
  3. Selecione a operação Delete e, de seguida, clique em Concluído.
  4. Defina o entityId como "1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L", que é a chave a ser transmitida. Para definir o entityId, na secção Mapeador de dados do Mapeamento de dados, clique em Abrir editor de mapeamento de dados e, de seguida, introduza "1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L" no campo Valor de entrada e escolha o entityId como variável local.
  5. Se a entidade tiver duas chaves empresariais ou primárias compostas, em vez de especificar o entityId, também pode definir o filterClause como id='1nLrFkDM8nOehXwW8XEpc2UZDBrq_ku-L'.

Exemplo: criar um ficheiro

  1. Na caixa de diálogo Configure connector task, clique em Entities.
  2. Selecione Files na lista Entity.
  3. Selecione a operação Create e, de seguida, clique em Concluído.
  4. Na secção Mapeador de dados da tarefa Mapeamento de dados, clique em Open Data Mapping Editor e, de seguida, introduza um valor semelhante ao seguinte no campo Input Value e escolha entityId/connectorInputPayload como variável local.
  5.   { "FileData": " ",
      "Name": "creategcpshareddrivedocxfile.docx", 
      "MIMEType": "application/vnd.google-apps.document",
      "Encoding": "BASE64"}
    

    Se a integração for bem-sucedida, o parâmetro de resposta connectorOutputPayload da tarefa do conector tem um valor semelhante ao seguinte:

    { "Id": "1C48uLda6lyeakx2hOUdwnib-qtFOAhlpR_Ja2AmPvTU"}
    

Exemplo: crie um disco partilhado

  1. Na caixa de diálogo Configure connector task, clique em Entities.
  2. Selecione Drives na lista Entity.
  3. Selecione a operação Create e, de seguida, clique em Concluído.
  4. Na secção Mapeador de dados da tarefa Mapeamento de dados, clique em Open Data Mapping Editor e, de seguida, introduza um valor semelhante ao seguinte no campo Input Value e escolha entityId/connectorInputPayload como variável local.
  5.   {"Name": "SharedDrive7"}
    

    Se a integração for bem-sucedida, o parâmetro de resposta connectorOutputPayload da tarefa do conector tem um valor semelhante ao seguinte:

      {"Id": "0AN6y5wEvVrmPUk9PVA"}
    

Exemplo: crie uma autorização para um ficheiro, uma pasta ou um disco partilhado

  1. Na caixa de diálogo Configure connector task, clique em Entities.
  2. Selecione Permissions na lista Entity.
  3. Selecione a operação Create e, de seguida, clique em Concluído.
  4. Na secção Mapeador de dados da tarefa Mapeamento de dados, clique em Open Data Mapping Editor e, de seguida, introduza um valor semelhante ao seguinte no campo Input Value e escolha entityId/connectorInputPayload como variável local.
  5.   {"ResourceId": "1PErCmc9MmnYzcslo49DeIIN1-ACs3W4L",
      "Role": "COMMENTER",
      "Type": "USER",
      "EmailAddress": "charlie@altostrat.com"}
    

    Se a integração for bem-sucedida, o parâmetro de resposta connectorOutputPayload da tarefa do conector tem um valor semelhante ao seguinte:

      { "PermissionId": "10596783046483894074",
      "ResourceId": "1PErCmc9MmnYzcslo49DeIIN1-ACs3W4L"}
    

Exemplo: atualizar os detalhes de um ficheiro

  1. Na caixa de diálogo Configure connector task, clique em Entities.
  2. Selecione Files na lista Entity.
  3. Selecione a operação Update e, de seguida, clique em Concluído.
  4. Na secção Mapeador de dados da tarefa Mapeamento de dados, clique em Open Data Mapping Editor e, de seguida, introduza um valor semelhante ao seguinte no campo Input Value e escolha entityId/connectorInputPayload/filterClause como variável local.
      {"Name": "New Updated file"}
    
  5. Defina o entityId do ficheiro. Para definir o entityId, clique em Open Data Mapping Editor e, de seguida, introduza um valor semelhante ao seguinte no campo Input Value e escolha entityId/connectorInputPayload/filterClause como variável local.

    Em vez de especificar o entityId, também pode definir o filterClause como 1IY5YhQN-LRgR3IxKlheqXM83sJP3DMFm.

  6. A execução deste exemplo devolve uma resposta semelhante à seguinte na connectorOutputPayloadvariável de saída da tarefa do conetor:

    {"Id": "1IY5YhQN-LRgR3IxKlheqXM83sJP3DMFm">}

Exemplo: atualizar uma autorização para um ficheiro, uma pasta ou um disco partilhado

  1. Na caixa de diálogo Configure connector task, clique em Entities.
  2. Selecione Permissions na lista Entity.
  3. Selecione a operação Update e, de seguida, clique em Concluído.
  4. Na secção Mapeador de dados da tarefa Mapeamento de dados, clique em Open Data Mapping Editor e, de seguida, introduza um valor semelhante ao seguinte no campo Input Value e escolha entityId/connectorInputPayload/filterClause como variável local.
  5. (PermissionId='10596783046483894074' and ResourceId='0AKfRSSy6kZbfUk9PVA')
    { "Role": "READER"}
    
  6. Defina o entityId da autorização. Para definir o entityId, clique em Open Data Mapping Editor e, de seguida, introduza um valor semelhante ao seguinte no campo Input Value e escolha entityId/connectorInputPayload/filterClause como variável local.

    Em vez de especificar o entityId, também pode definir o filterClause como PermissionId='10596783046483894074' and ResourceId='0AKfRSSy6kZbfUk9PVA'.

    A execução deste exemplo devolve uma resposta semelhante à seguinte na connectorOutputPayloadvariável de saída da tarefa do conetor:

      {"PermissionId": "10596783046483894074",
      "ResourceId": "0AKfRSSy6kZbfUk9PVA"}