Ir para o conteúdo

OAuth - Google - Service Account

Introdução

O plugin Jitterbit OAuth - Google - Service Account é usado para autenticar com a implementação do Google do OAuth 2 para contas de serviço do Google. Um guia passo a passo para configurar uma conta de serviço do Google está disponível na documentação do Google Usando OAuth 2.0 para aplicativos de servidor para servidor.

Após o plugin ser executado em um Jitterbit Script, o token de autenticação é retornado na variável global google.oauth.token.auth e o número de segundos de expiração é retornado na variável global google.oauth.token.expireSeconds.

Essas variáveis globais podem então ser usadas em outras partes do projeto. Por exemplo, google.oauth.token.auth pode ser usado em um URL ou cabeçalho HTTP para fornecer os detalhes de autenticação ao Google. A variável google.oauth.token.expireSeconds pode ser usado para armazenar em cache o token de autorização até que o número de segundos de expiração seja atingido.

Importante

Os plugins fornecidos pelo Jitterbit estão obsoletos. Veja Deprecation and support em Plugins.

Uso

Embora este plugin possa ser executado em qualquer Jitterbit Script, as variáveis globais que ele retorna são suportadas na configuração destes endpoints:

A saída do plug-in não é compatível com Cloud Studio Connector Builder. Em vez disso, no Cloud Studio você pode usar o Google Docs, Google Drive ou Google Sheets, conectores que já fornecem um meio de autenticação com o serviço do Google durante a configuração do endpoint.

Passos

Esta página detalha as etapas para usar o plugin OAuth - Google - Service Account:

  1. Baixe e adicione o plugin
  2. Associe o plugin a um grupo de agentes
  3. Defina variáveis globais para o plugin
  4. Execute o plugin em um Jitterbit Script
  5. Conclua a configuração da operação

Baixe e Adicione o Plugin

O plugin Jitterbit OAuth - Google - Service Account deve ser baixado no link fornecido abaixo e adicionado à organização (veja Adicionar novos plugins em Personalizações > Plug-ins).

Associe o Plugin a um Grupo de Agentes

Se estiver usando um grupo de agentes de nuvem, você pode pular esta etapa, pois o plug-in Jitterbit OAuth - Google - Conta de serviço já está associado aos grupos de agentes de nuvem do Jitterbit por padrão.

Se estiver usando um grupo de agentes privados, você deverá associar este plugin fornecido pelo Jitterbit ao seu grupo de agentes privados. Isso disponibilizará o plug-in para todos os agentes privados do grupo de agentes privados. Para associar o plugin:

  1. Faça login no portal Harmony e vá para o Management Console. Em seguida, use o menu no canto superior esquerdo para navegar até Personalizações > Plug-ins.
  2. Na tabela, localize a linha "Jitterbit OAuth - Google - Conta de serviço". Na extrema direita, use o menu suspenso Ação para selecionar Grupo de Agentes Associados.
  3. No pop-up, selecione seu grupo de agentes privados e clique em Salvar.

Dica

A documentação detalhada sobre a associação de plugins está disponível em Personalizações > Plug-ins.

Definir Variáveis Globais para o Plugin

Para que este plugin seja funcional, as variáveis globais exigidas como entrada pelo plugin devem ser definidas.

Essas variáveis globais podem ser definidas no mesmo script que executa o plugin (abordado a seguir em Executar o plugin em um Jitterbit Script), ou podem ser definidas em um script separado localizado anteriormente na cadeia de operação (para que as variáveis sejam inicializadas antes da execução do plugin).

Dica

Para obter mais informações, consulte estas páginas:

Um modelo de script é fornecido abaixo, seguido de documentação sobre cada uma das variáveis globais de entrada que podem ser usadas com o plugin:

Setting Input Variables
<trans>
// Input variables
$google.oauth.privateKey = "-----BEGIN PRIVATE KEY-----\nABCDEfg...HIJKLMN\n-----END PRIVATE KEY-----\n";
$google.oauth.clientEmail = "example@example-123456.iam.gserviceaccount.com";
$google.oauth.accountScopes = "https://www.googleapis.com/auth/bigquery";
$google.oauth.serviceAccountUser = '';
</trans>
Nome Tipo Obrigatório Descrição
google.oauth.privateKey String Obrigatório A chave privada RSA que é fornecida via JSON no campo "private_key" do Google.
google.oauth.clientEmail Corda Obrigatório O email do cliente fornecido via JSON no campo “client_email” do Google.
google.oauth.accountScopes String Opcional Os escopos OAuth separados por espaços para usar com o fluxo da conta de serviço. Defina como uma string vazia para nenhum.
google.oauth.serviceAccountUser Corda Opcional O endereço email do usuário que o aplicativo está tentando representar no fluxo da conta de serviço. Defina como uma string vazia para nenhum.

Dica

Para obter detalhes adicionais, consulte a documentação do Google >Usando OAuth 2.0 para aplicativos de servidor para servidor e Escopos do OAuth 2.0 para APIs do Google.

Execute o Plugin em um Jitterbit Script

Este plugin pode ser executado a partir de um Jitterbit Script de qualquer tipo de script chamando a função Jitterbit Script RunPlugin().

As variáveis globais necessárias como entrada para o plugin podem ser especificadas dentro do mesmo script em que o plugin é executado. Por exemplo, o conteúdo do script usado para o modelo em Definir variáveis globais para o plugin poderia ser incluído em um único script que também executa o plugin.

Após a execução do plugin, o token de autenticação é retornado na variável global google.oauth.token.auth e o número de segundos de expiração é retornado na variável global google.oauth.token.expireSeconds.

Cada uma dessas partes do script é fornecida neste modelo:

Setting Input Variables and Executing the Plugin
<trans>
// Input variables
$google.oauth.privateKey = "-----BEGIN PRIVATE KEY-----\nABCDEfg...HIJKLMN\n-----END PRIVATE KEY-----\n";
$google.oauth.clientEmail = "example@example-123456.iam.gserviceaccount.com";
$google.oauth.accountScopes = "https://www.googleapis.com/auth/bigquery";
$google.oauth.serviceAccountUser = '';

// Output variables
$google.oauth.token.auth = '';
$google.oauth.token.expireSeconds = '';

// Executing the plugin
RunPlugin("<TAG>plugin:http://www.jitterbit.com/plugins/pipeline/user/OAuthGoogleServiceAccount</TAG>");
</trans>
Nome Descrição
google.oauth.token.auth O token de autenticação do Google.
google.oauth.expireSeconds O número de segundos até que o token de autenticação do Google expire.

Dica

Documentação detalhada sobre a execução de plugins a partir de um script está disponível em Plugins (Design Studio) ou Plugins chamados em um script (Cloud Studio).

Conclua a Configuração da Operação

As variáveis globais retornadas pelo script do plugin podem então ser usadas em outras partes do projeto para autenticação com o Google. Essas variáveis globais são oficialmente suportadas na configuração destes endpoints:

Em uma configuração típica no Design Studio, a variável global google.oauth.token.auth pode ser usado em um URL ou cabeçalho HTTP para fornecer os detalhes de autenticação ao Google.

Isso pode ser concatenado com o hospedar do Google no campo URL de uma fonte HTTP ou alvo HTTP.

Como alternativa, pode ser inserido na fonte ou no destino HTTP Advanced HTTP Properties na área Request Headers:

request headers

Da mesma forma, no Cloud Studio, a variável global google.oauth.token.auth pode ser usado em uma conexão HTTP dentro do campo Request Headers. Alternativamente, ele pode ser especificado como um Request Parameter ou um Request Header em uma atividade HTTP.