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:
- Fonte HTTP do Design Studio
- Destino HTTP do Design Studio
- Conexão HTTP do Cloud Studio
- Atividade HTTP do Cloud Studio
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:
- Baixe e adicione o plugin
- Associe o plugin a um grupo de agentes
- Defina variáveis globais para o plugin
- Execute o plugin em um Jitterbit Script
- 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:
- 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.
- 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.
- 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:
- Criando um script (Design Studio)
- Variáveis globais (Design Studio)
- Tipos de Script e criação (Cloud Studio)
- Variáveis globais (Cloud Studio)
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:
<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:
<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:
- Fonte HTTP do Design Studio
- Destino HTTP do Design Studio
- Conexão HTTP do Cloud Studio
- Atividade HTTP do Cloud Studio
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:
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.