Concluir desafios de MFA para usuários de automação
O Salesforce exige autenticação multifator (MFA) para todos os logins na IU, incluindo logins de usuários de automação. Para casos de uso de automação, como Automação de processo robótico (RPA), você pode concluir programaticamente a MFA usando aplicativos autenticadores de terceiros que geram senhas de uso único por tempo limitado (TOTPs).
Edições obrigatórias
| Disponível em: Salesforce Classic e Lightning Experience |
| Disponível em: Todas as edições |
Quando você conecta um aplicativo autenticador de terceiros a uma conta de usuário, o Salesforce compartilha uma chave secreta que pode gerar TOTPs. Com essa chave, você pode escrever um script que use TOTPs para concluir a MFA sem nenhuma interação humana.
Veja como conectar um aplicativo autenticador de terceiros e obter uma chave que possa gerar TOTPs. Obter a chave é um processo manual que você conclui uma vez.
- Faça login na conta de usuário de automação.
- Vá para as configurações pessoais do usuário e clique em Detalhes avançados do usuário.
-
Localize o "Registro do aplicativo: Configuração de "Autenticador de senha de uso único" e clique em Conectar.
-
Na tela para conectar um aplicativo autenticador, clique em Não consigo ler o código QR.
O Salesforce direciona você para uma página para conectar o aplicativo usando uma chave. -
Antes de conectar o aplicativo autenticador, copie a chave e armazene-a com segurança. Trate essa chave como um segredo e certifique-se de seguir as práticas recomendadas do Salesforce para armazenamento de dados confidenciais.
- Siga as instruções na tela para conectar o aplicativo ao Salesforce.
Para concluir desafios de TOTP programaticamente, escreva um script que use a chave para gerar TOTPs. Inclua um método para recuperar TOTPs gerados automaticamente e concluir logins na IU. Aqui está um exemplo de JavaScript que usa a biblioteca otplib de código aberto do npm. Neste exemplo, a chave secreta é armazenada na variável AUTOMATION_TOTP_SECRET. Essa amostra de código é apenas para demonstração. Certifique-se de escrever e testar seu próprio código personalizado.
// This example assumes the otplib package has been installed ($ npm i otplib)
const { authenticator } = require('otplib');
// Store the Base32 secret securely (environment variable, secrets manager, etc.)
// This should be the "Key" shown in the UI after clicking "I Can't Scan the QR Code"
const TOTP_SECRET = process.env.AUTOMATION_TOTP_SECRET;
function getTotpCode() {
if (!TOTP_SECRET) {
throw new Error('Missing AUTOMATION_TOTP_SECRET');
}
// otplib's authenticator expects a Base32 secret by default;
// 30s step, 6 digits, SHA1 are the common defaults
return authenticator.generate(TOTP_SECRET);
}
// Example usage in an auth flow:
async function completeMfaChallenge({ enterCode }) {
const code = getTotpCode();
await enterCode(code); // customer supplies their UI interaction
}
module.exports = { getTotpCode, completeMfaChallenge };

