Guia de conexão JWT OAuth do Salesforce para Jitterbit App Builder
Nota
Este guia de conexão é o processo recomendado para autenticação de Conta de Serviço entre o App Builder e o Salesforce. Consulte o artigo Provedor de segurança - Salesforce / OpenID Connect se você estiver procurando configurar a autenticação de Conta em nível de usuário.
Pré-requisitos
- Você deve ter uma conta do Salesforce com pelo menos 1 licença de usuário ativo do Salesforce e um ambiente sandbox para se conectar.
Limitações
- Você pode ter apenas uma conexão JWT do Salesforce por instância do App Builder.
Criando um certificado
O Salesforce aceita apenas JWTs assinados com RSA SHA256, portanto, você precisa de um Certificado x509 e sua chave privada associada.
-
Baixe e instale o OpenSSL
-
O OpenSSL é uma ferramenta completa para criptografia e comunicação segura. Você pode baixá-lo gratuitamente: https://www.openssl.org/
-
Você também pode instalar o Git, pois ele tem o OpenSSL instalado por baixo: https://git-scm.com/
-
-
Após a instalação do OpenSSL, prossiga para criar um Certificado e Chave X509
-
Abra um terminal ou linha de comando, execute o OpenSSL e, em seguida, execute o seguinte comando para criar um arquivo de certificado e chave:
req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout myKey.key -out myCertificate.crt -
Você será solicitado a preencher detalhes como País, Nome Comum ou Endereço de Email. Você não precisa preencher todas as informações, mas o Nome Comum é obrigatório.

-
-
Após executar o comando acima, você deve encontrar dois arquivos criados

Nota
Certifique-se de anotar ou copiar os arquivos de Certificado e Chave para um local que seja facilmente acessível
Configuração no Salesforce
Agora que temos nosso Certificado, precisamos criar um aplicativo conectado no Salesforce.
Criar um aplicativo OAuth personalizado
- Faça login no Salesforce.com ou no seu ambiente sandbox do Salesforce
- Na página inicial, vá para Ferramentas de Plataforma > Aplicativos > Gerenciador de Aplicativos
- Clique no botão Novo Aplicativo Conectado e insira o seguinte:
- Nome do Aplicativo Conectado - O nome deve conter o nome do sistema e da integração, como Integração do App Builder para identificá-lo facilmente, mas isso pode ser o que você desejar
- Nome da API - Deixe o Salesforce preencher isso com base no nome do Aplicativo Conectado
- Email de Contato - Qualquer email que você desejar
- Habilitar Configurações de OAuth - Marque esta caixa de seleção, e então as seguintes configurações aparecerão
- URL de Retorno -
sfdc://oauth/jwt/success - Usar assinaturas digitais - Marque esta caixa de seleção, e então faça o upload do arquivo myCertificate.crt que criamos anteriormente
- Escopos de OAuth Selecionados - Escolha "Gerenciar dados do usuário via APIs (api)", "Acesso total (full)" e "Realizar solicitações a qualquer momento (refresh_token, offline_access)"
- Clique em Salvar e depois clique em Continuar
- Agora que o aplicativo conectado foi criado, precisamos anotar o ID do Cliente e o Segredo do Cliente para este aplicativo
- Na página principal do aplicativo conectado, clique no botão intitulado "Gerenciar detalhes do Consumidor". Isso deve abrir uma nova página após completar um prompt de segurança, que contém o ID do Cliente e o Segredo do Cliente para o aplicativo. Anote isso, pois precisaremos mais tarde.
- Em seguida, precisamos ajustar as configurações do aplicativo conectado para pré-aprovar nosso usuário
- Na página do aplicativo conectado, clique no botão "Gerenciar" na parte superior da tela, depois na próxima página, clique no botão "Editar Políticas"
- Na seção Políticas de OAuth, mude o menu suspenso Usuários Permitidos de "Todos os usuários podem se autorizar" para "Usuários aprovados pelo administrador são pré-autorizados"
- Clique em Salvar
- Assim que a página for atualizada, você deve ver uma seção "Perfis" perto da parte inferior. Clique no botão "Gerenciar Perfis".
- Adicione o perfil com o qual você está se conectando, neste exemplo estamos usando o perfil Administrador do Sistema
- Clique em Salvar
- Isso completa a seção de configuração do Salesforce
Configuração no servidor do aplicativo
Agora que criamos o aplicativo no Salesforce e enviamos nosso Certificado para ele, precisamos colocar o arquivo de Chave no servidor do aplicativo onde o App Builder está sendo executado, para permitir que o App Builder acesse-o.
-
No servidor da aplicação ou do App Builder, crie ou use uma pasta existente para colocar o certificado e o arquivo de chave que geramos anteriormente. Este exemplo mostra uma pasta criada chamada JWT.

-
Clique com o botão direito na pasta onde esses arquivos estão localizados e clique em Propriedades, depois na aba Segurança. Certifique-se de que esta pasta tenha controle total para o pool de aplicativos em que o App Builder está implantado.

-
Isso completa a configuração no servidor da aplicação.
Configuração no App Builder
Criar a fonte de dados Salesforce ADO.NET no App Builder
Agora que criamos o aplicativo no Salesforce e enviamos nosso certificado para ele, podemos prosseguir para criar a fonte de dados Salesforce no App Builder.
- Vá para o IDE do App Builder e clique em Servidores de Dados
- Clique no botão + Servidor para adicionar uma nova fonte de dados
- Atribua um Nome do Servidor
- Defina o Tipo como Salesforce ADO.NET
-
Clique em Salvar. Certifique-se de marcar a caixa de seleção Sandbox se você estiver se conectando a uma instância sandbox.

-
Após a fonte de dados ser salva, clique no ícone de pasta de Configurações Avançadas
-
Em seguida, clique em Editar e expanda a seção Avançado

-
Configure as seguintes configurações:
- AuthScheme - OAuthJWT
- OAuthJWTCertType - PEMKEY_FILE
- OAuthJWTCert - Localização do arquivo de chave que criamos anteriormente, deve estar em uma pasta em algum lugar. Por exemplo: C:\JWT\myKey.key
- OAuthJWTIssuer - Este é o valor do ID do Cliente que obtivemos do Salesforce anteriormente.
- OAuthJWTSubject - Este deve ser seu email do Salesforce, ou o email do usuário do Salesforce que estamos autenticando.
Nota
Insira cada configuração no campo Avançado em uma única linha, sem espaços, e separando cada configuração com um ponto e vírgula
(;). Aqui está um exemplo:
-
Agora que tudo está configurado, role para baixo e teste a conexão. Se tudo foi configurado corretamente, você receberá uma mensagem de Sucesso.
- Agora você pode importar tabelas e acessar dados do Salesforce.