Criar Credenciais para Usuários Diferentes

Estou configurando workflows para alguns usuários diferentes. Como faço para configurar credenciais para cada um deles sem precisar obter suas contas pessoais, ou eles podem criá-las por conta própria?

Oi @Bobby_Cheung

Se você está usando uma versão do n8n com Gerenciamento de Usuários habilitado (disponível no n8n Cloud e na maioria das instalações auto-hospedadas), o processo é simples:

  • Convidar Usuários: Você convida os usuários para sua instância n8n por email.
  • Credenciais Privadas: Depois que fazem login, qualquer credencial que criem é privada para eles por padrão.
  • Execução de Workflow: Quando você constrói um workflow para eles, você pode deixar o campo de credencial vazio ou defini-lo como um espaço reservado. Quando o usuário abre o workflow, ele simplesmente seleciona sua própria credencial pré-configurada no menu suspenso.

Para serviços que suportam OAuth2 (como Google, Slack, Microsoft, etc.), o usuário nunca precisa lhe dar sua senha:

  • Você configura o “App” (ID do Cliente e Segredo do Cliente) no console de desenvolvedor do serviço.
  • O usuário clica no botão “Conectar minha conta” no n8n.
  • Ele é redirecionado para a página de login do próprio serviço (por exemplo, a tela de login do Google), onde autoriza o n8n.
  • O n8n recebe um “token” para agir em seu nome, mas você nunca vê suas credenciais de login reais.

Se você criou uma “Conta de Serviço” (uma conta genérica usada pela empresa) e quer que vários usuários a usem sem conhecer a senha:

  • Você cria a credencial em sua conta de administrador.
  • Nas configurações de credencial, você pode compartilhar essa credencial específica com outros usuários ou funções específicas.
  • Os usuários podem então selecionar essa credencial compartilhada em seus workflows, mas não podem ver ou editar a chave de API ou senha real.

Depende do tipo de credencial que você está configurando.

Para serviços compartilhados (um bot do Slack, uma conexão de banco de dados, uma API interna, qualquer coisa onde uma conta serve o time inteiro): você pode criar a credencial você mesmo, abrir e clicar na aba Compartilhamento. Há um menu suspenso para compartilhar com usuários ou projetos específicos. Eles conseguirão usá-la em workflows, mas não verão a chave da API ou o segredo real. Fica bloqueado para você como proprietário.

Para contas OAuth pessoais (Gmail, Google Drive, Notion de cada pessoa, etc.): não há jeito de contornar. Cada usuário precisa se autenticar com sua própria conta. Você não consegue fazer isso por eles sem fazer login como eles. A boa notícia é que o processo é o mesmo para eles que seria para você: Credenciais → Adicionar Credencial → escolher o serviço → passar pelo fluxo OAuth. Contanto que eles tenham uma conta n8n na sua instância, conseguem fazer isso sozinhos.

Na prática: você configura as credenciais de serviços compartilhados e compartilha, seus colegas de time criam as próprias para qualquer coisa ligada às contas pessoais deles.

Uma coisa pequena mas importante saber: usuários com quem você compartilha credenciais conseguem usar a credencial em workflows mas não conseguem visualizar ou editar o segredo subjacente. Se o token deles expirar ou quebrar por algum motivo, ou você compartilha um novo ou eles precisam se autenticar novamente. Vale a pena definir essa expectativa desde o começo.