Pular para o conteĆŗdo principal

Criar e Editar Credenciais

As credenciais são fundamentais para conectar o n8n com sistemas externos de forma segura. Este guia aborda como criar, configurar e gerenciar credenciais de forma eficiente e segura.

Conceitos Fundamentais​

O que sĆ£o Credenciais​

Credenciais no n8n são informações de autenticação armazenadas de forma segura que permitem:

  • Conectar com APIs externas
  • Autenticar em serviƧos de terceiros
  • Acessar bancos de dados
  • Integrar com aplicaƧƵes web

Tipos de Credenciais​

1. API Keys​

{
  "type": "apiKey",
  "name": "Stripe API Key",
  "value": "sk_test_...",
  "description": "Chave da API do Stripe para processamento de pagamentos"
}

2. OAuth 2.0​

{
  "type": "oauth2",
  "name": "Google Sheets OAuth",
  "clientId": "your-client-id",
  "clientSecret": "your-client-secret",
  "scope": "https://www.googleapis.com/auth/spreadsheets"
}

3. Basic Authentication​

{
  "type": "basicAuth",
  "name": "Database Connection",
  "username": "db_user",
  "password": "secure_password"
}

4. Custom Headers​

{
  "type": "customHeaders",
  "name": "Custom API Headers",
  "headers": {
    "Authorization": "Bearer token",
    "X-API-Version": "v2",
    "Content-Type": "application/json"
  }
}

Criando Credenciais​

Passo 1: Acessar Gerenciador de Credenciais​

  1. Navegue para o menu lateral esquerdo
  2. Clique em "Credentials" ou "Credenciais"
  3. Selecione "Add Credential" ou "Adicionar Credencial"

Passo 2: Selecionar Tipo de Credencial​

Categorias DisponĆ­veis​

  • Communication: Email, Slack, Discord, WhatsApp
  • Productivity: Google Workspace, Microsoft 365, Notion
  • E-commerce: Shopify, WooCommerce, Stripe
  • Marketing: Mailchimp, HubSpot, Facebook Ads
  • Database: MySQL, PostgreSQL, MongoDB
  • Cloud: AWS, Google Cloud, Azure
  • Custom: HTTP Request, Webhook

Passo 3: Configurar Credenciais​

Exemplo: Configuração de Email (Gmail)​

{
  "name": "Gmail - Marketing",
  "description": "Conta de email para campanhas de marketing",
  "type": "gmail",
  "credentials": {
    "email": "marketing@empresa.com",
    "password": "app_password_here",
    "imap": {
      "host": "imap.gmail.com",
      "port": 993,
      "secure": true
    },
    "smtp": {
      "host": "smtp.gmail.com",
      "port": 587,
      "secure": false
    }
  }
}

Exemplo: Configuração de API (Stripe)​

{
  "name": "Stripe - Produção",
  "description": "API do Stripe para processamento de pagamentos",
  "type": "stripe",
  "credentials": {
    "apiKey": "sk_live_...",
    "webhookSecret": "whsec_...",
    "apiVersion": "2023-10-16"
  }
}

ConfiguraƧƵes AvanƧadas​

1. VariĆ”veis de Ambiente​

Configuração Segura​

# .env file
STRIPE_API_KEY=sk_live_...
GMAIL_PASSWORD=app_password_here
DATABASE_URL=postgresql://user:pass@host:port/db

Uso no n8n​

{
  "credentials": {
    "apiKey": "={{ $env.STRIPE_API_KEY }}",
    "password": "={{ $env.GMAIL_PASSWORD }}"
  }
}

2. Configuração de Proxy​

Para Ambientes Corporativos​

{
  "proxy": {
    "host": "proxy.empresa.com",
    "port": 8080,
    "auth": {
      "username": "proxy_user",
      "password": "proxy_pass"
    }
  }
}

3. Configuração de Timeout​

Para APIs Lentas​

{
  "timeout": {
    "request": 30000,
    "response": 60000,
    "retry": {
      "attempts": 3,
      "delay": 1000
    }
  }
}

Melhores PrĆ”ticas de SeguranƧa​

1. Nomenclatura Segura​

PadrĆ£o Recomendado​

# Formato: [Serviço] - [Ambiente] - [Propósito]
Nome: "Stripe - Produção - Pagamentos"
Nome: "Gmail - Marketing - Campanhas"
Nome: "Database - Desenvolvimento - Testes"

Evitar​

āŒ "API Key"
āŒ "Password"
āŒ "Token"
āŒ "Credential 1"

2. DescriƧƵes Detalhadas​

Template de Descrição​

## Propósito
Credencial para [funcionalidade especĆ­fica]

## Ambiente
- Produção/Desenvolvimento/Teste

## PermissƵes
- Escopo de acesso necessƔrio

## ResponsƔvel
- Nome e contato

## Última Atualização
- Data e motivo

3. Rotação de Credenciais​

Cronograma de Rotação​

Rotação Mensal:
  - API Keys de desenvolvimento
  - Tokens de teste

Rotação Trimestral:
  - API Keys de produção
  - Senhas de aplicação

Rotação Semestral:
  - Certificados SSL
  - Chaves de criptografia

4. Monitoramento de Uso​

Alertas de SeguranƧa​

{
  "monitoring": {
    "failedAttempts": {
      "threshold": 5,
      "action": "disable_credential"
    },
    "unusualUsage": {
      "threshold": "200%_normal",
      "action": "alert_admin"
    },
    "expiration": {
      "warningDays": 30,
      "action": "notify_owner"
    }
  }
}

Gerenciamento de Credenciais​

1. Organização por Projeto​

Estrutura Recomendada​

šŸ“ Credenciais
ā”œā”€ā”€ šŸ“ E-commerce
│   ā”œā”€ā”€ Stripe - Produção
│   ā”œā”€ā”€ Shopify - API
│   └── PayPal - Sandbox
ā”œā”€ā”€ šŸ“ Marketing
│   ā”œā”€ā”€ Gmail - Campanhas
│   ā”œā”€ā”€ Mailchimp - API
│   └── Facebook Ads
ā”œā”€ā”€ šŸ“ Database
│   ā”œā”€ā”€ PostgreSQL - Produção
│   ā”œā”€ā”€ MySQL - Desenvolvimento
│   └── MongoDB - Analytics
└── šŸ“ IntegraƧƵes
    ā”œā”€ā”€ Slack - NotificaƧƵes
    ā”œā”€ā”€ Discord - Alertas
    └── Webhook - Custom

2. Versionamento de Credenciais​

Controle de VersƵes​

Versão Atual:
  - ID: cred_001
  - Status: Ativo
  - Criado: 2024-01-15
  - Último Uso: 2024-01-20

Versão Anterior:
  - ID: cred_001_v1
  - Status: Depreciado
  - Criado: 2023-12-01
  - SubstituĆ­do: 2024-01-15

3. Backup e Recuperação​

EstratĆ©gia de Backup​

{
  "backup": {
    "frequency": "daily",
    "retention": "30_days",
    "encryption": true,
    "location": "secure_storage",
    "verification": "weekly"
  }
}

Troubleshooting​

Problemas Comuns​

1. Credenciais Expiradas​

Sintomas:

  • Erro 401 (Unauthorized)
  • Erro 403 (Forbidden)
  • Mensagens de token expirado

Solução:

  • Verificar data de expiração
  • Renovar credenciais
  • Atualizar configuraƧƵes

2. Rate Limiting​

Sintomas:

  • Erro 429 (Too Many Requests)
  • ExecuƧƵes falhando intermitentemente
  • Performance degradada

Solução:

  • Implementar delays entre requests
  • Usar mĆŗltiplas credenciais
  • Otimizar frequĆŖncia de execução

3. Configuração Incorreta​

Sintomas:

  • Erro de conexĆ£o
  • Timeout
  • Dados incorretos

Solução:

  • Validar configuraƧƵes
  • Testar conectividade
  • Verificar permissƵes

Ferramentas de Diagnóstico​

1. Teste de Conectividade​

// Script para testar credenciais
async function testCredential(credentialId) {
  try {
    const result = await n8n.testCredential(credentialId);
    console.log('Credencial vƔlida:', result);
  } catch (error) {
    console.error('Erro na credencial:', error);
  }
}

2. Validação de PermissƵes​

{
  "validation": {
    "permissions": ["read", "write", "delete"],
    "scopes": ["user:read", "user:write"],
    "resources": ["users", "orders", "products"]
  }
}

ConfiguraƧƵes EspecĆ­ficas por ServiƧo​

1. Google Services​

Gmail​

{
  "type": "gmail",
  "credentials": {
    "email": "user@gmail.com",
    "password": "app_password",
    "imap": {
      "host": "imap.gmail.com",
      "port": 993,
      "secure": true
    }
  }
}

Google Sheets​

{
  "type": "googleSheets",
  "credentials": {
    "clientId": "your-client-id",
    "clientSecret": "your-client-secret",
    "scope": "https://www.googleapis.com/auth/spreadsheets"
  }
}

2. Database Connections​

PostgreSQL​

{
  "type": "postgres",
  "credentials": {
    "host": "localhost",
    "port": 5432,
    "database": "mydb",
    "username": "user",
    "password": "password",
    "ssl": {
      "rejectUnauthorized": false
    }
  }
}

MySQL​

{
  "type": "mysql",
  "credentials": {
    "host": "localhost",
    "port": 3306,
    "database": "mydb",
    "username": "user",
    "password": "password",
    "ssl": {
      "ca": "certificate-authority"
    }
  }
}

3. Cloud Services​

AWS​

{
  "type": "aws",
  "credentials": {
    "accessKeyId": "AKIA...",
    "secretAccessKey": "...",
    "region": "us-east-1",
    "sessionToken": "optional-session-token"
  }
}

Azure​

{
  "type": "azure",
  "credentials": {
    "tenantId": "tenant-id",
    "clientId": "client-id",
    "clientSecret": "client-secret",
    "subscriptionId": "subscription-id"
  }
}

Recursos Adicionais​

Documentação Oficial​

Ferramentas de SeguranƧa​

Comunidade​


Próximos Passos: