Хранение секретов

Статья обновлена November 12, 2026

Храните токен API в согласованном хранилище или передавайте его клиенту на время одного запуска. Значение токена должно быть доступно только среде выполнения клиента.

Согласовать способ с пользователем

  1. Определите, где будет работать клиент и как долго ему нужен доступ. Проверьте по настройкам проекта, есть ли штатное хранилище секретов или уже подключённый секрет. Для этого достаточно метаданных и имён настроек.
  2. Предложите подходящий способ из таблицы. Назовите стенд, имя секрета, место хранения и процесс, который сможет его прочитать. Укажите, как заменить или удалить токен.
  3. Дождитесь согласия пользователя перед созданием, переносом или сохранением секрета. Если защищённого способа пока нет, остановите защищённые вызовы и предложите пользователю настроить его.
Где работает клиент Как передать токен
Сервис, CI или планировщик Используйте хранилище секретов платформы. Дайте право чтения только среде запуска клиента и подключите секрет при запуске. Для тестового и рабочего стендов используйте разные записи.
Регулярный локальный запуск Используйте системную связку ключей или менеджер секретов, настроенный пользователем. Клиент получает значение перед запросом.
Одноразовая локальная проверка Попросите пользователя ввести токен со скрытым вводом. Передайте его только процессу клиента, например через временную переменную окружения. Удалите её после запуска.

Подключить секрет к клиенту

Попросите пользователя самостоятельно внести значение в выбранное хранилище или поле скрытого ввода. В коде укажите только имя секрета или переменной. Клиент читает значение в момент запуска и использует его для авторизации на выбранном стенде.

Исключите значения токенов из переписки, контекста агента, аргументов команд, исходников, файлов проекта, истории команд и журналов. При диагностике показывайте только факт наличия секрета и результат вызова. Проверьте, что HTTP-логирование скрывает заголовок Authorization.

Если токен оказался в переписке, исходниках или журнале, сообщите пользователю, где произошло раскрытие. Попросите отозвать токен, получить новый и заменить значение в согласованном хранилище. После замены проверьте доступ без вывода токена.