Credentials в n8n: как хранить ключи и токены, чтобы не потерять доступы и не слить их

· 2 мин чтения · Редакция Skill Unit

Почти каждый сценарий в n8n обращается к внешним сервисам: Telegram, Google Таблицы, CRM, почта. Для этого нужны токены, ключи API и пароли. От того, где вы их храните, зависит, утекут ли они вместе с первым же экспортом сценария и сможете ли вы восстановить работу после переезда сервера.

Где хранить: Credentials, а не поля узлов

В n8n для секретов есть отдельный раздел — Credentials (учётные данные). Вы создаёте запись один раз, например «Telegram бот заявок», и выбираете её в узлах. Сами значения хранятся в базе n8n в зашифрованном виде.

Плохая практика — вставлять токен прямо в URL узла HTTP Request, в поле заголовка или в узел Set. Тогда секрет становится частью сценария: он виден всем, кто открывает workflow, и попадает в файл при экспорте.

Что происходит при экспорте

  • При экспорте сценария в JSON в файл попадают ссылки на учётные данные (имя и идентификатор), но не сами секреты из Credentials.
  • Секрет, вписанный прямо в параметры узла, экспортируется открытым текстом.
  • Перед тем как отправить сценарий коллеге или выложить пример, откройте JSON и поиском проверьте, нет ли там токенов и паролей.

Ключ шифрования — главное, что нужно сохранить

Учётные данные n8n шифрует ключом. Если вы его не задали, n8n создаёт ключ сам при первом запуске и хранит в своей папке настроек. Его можно задать явно переменной окружения N8N_ENCRYPTION_KEY.

  • Без этого ключа восстановленная из резервной копии база не сможет расшифровать учётные данные, и все подключения придётся создавать заново.
  • При переезде на новый сервер или в другой контейнер переносите не только базу, но и ключ.
  • Храните ключ в менеджере паролей, а не в заметке рядом с резервной копией базы.

Доступы: минимум прав

  • Создавайте для n8n отдельного бота, отдельный сервисный аккаунт или отдельный ключ API, а не используйте личный.
  • Давайте только нужные права: если сценарий читает таблицу, ему не нужно право удалять файлы на диске.
  • Называйте учётные данные понятно: сервис, назначение, дата. Через полгода это экономит час поиска.
  • Если ключ мог утечь, перевыпустите его в сервисе и обновите запись в Credentials. Старый ключ отзовите.

Типичные ошибки

  • Токен бота вписан в URL HTTP Request и разослан вместе с экспортом.
  • Сделан бэкап базы, но не сохранён ключ шифрования.
  • Все сценарии работают от личного аккаунта владельца с полными правами.
  • Скриншот сценария с открытым полем токена отправлен в чат поддержки.
  • Webhook принимает запросы без проверки секрета, и любой может запустить сценарий.

Безопасность, вебхуки, обработку ошибок и резервное копирование сценариев разбирают в курсе «Автоматизация без кода на n8n».

Хотите пройти путь на практике?

Курс «Автоматизация без кода на n8n»: короткие уроки, практические задания и проверка ответов. Первый урок бесплатно.

Смотреть курс