Кодировщик пароля для файлов конфигурации
Корректно экранируйте пароль для JSON, YAML, TOML, XML, Java .properties, INI, URL-строк подключения и SQL-литералов, чтобы он читался без изменений.
Вставьте результат как значение параметра. YAML по возможности использует одинарные кавычки, TOML — литеральную строку, URL-вариант кодирует в процентах каждый байт, кроме A–Z a–z 0–9 - . _ ~, а SQL удваивает одинарные кавычки (стандартный SQL; в MySQL с включённым экранированием обратной косой чертой нужно удваивать и \).
Работает полностью в вашем браузере. Ваши данные никуда не загружаются.
Что такое Кодировщик пароля для конфигов?
Вставьте пароль и получите его корректно экранированным сразу для восьми форматов конфигурации: JSON, YAML, TOML, XML, Java .properties, INI, URL и строки подключения, строковые литералы SQL. Каждый результат разбирается обратно в точное исходное значение.
Как пользоваться Кодировщик пароля для конфигов
- Введите пароль в поле Пароль.
- Найдите в списке нужный формат.
- Скопируйте экранированное значение кнопкой Копировать.
- Вставьте его как значение в конфигурацию.
Пример
p@ss'w"rd$1
JSON "p@ss'w\"rd$1" YAML 'p@ss''w"rd$1' TOML "p@ss'w\"rd$1" XML p@ss'w"rd$1 URL p%40ss%27w%22rd%241 SQL 'p@ss''w"rd$1'
Когда использовать Кодировщик пароля для конфигов
Используйте всякий раз, когда секрет вручную попадает в файл конфигурации или строку подключения. Для продакшен-секретов предпочтительны менеджер секретов или переменные окружения.
Как работает Кодировщик пароля для конфигов
JSON использует JSON.stringify. YAML использует скаляр в одинарных кавычках ('' вместо '), если управляющие символы не требуют двойных. TOML использует литеральную 'строку', когда возможно, иначе базовую строку с escape-последовательностями \" \\ и \uXXXX. XML экранирует & < > " ' и табуляции и переводы строк символьными ссылками. .properties экранирует \, =, :, #, !, ведущий пробел и не-ASCII как \uXXXX. Userinfo в URL кодирует процентами каждый байт, кроме A–Z a–z 0–9 - . _ ~. SQL удваивает одинарные кавычки. В INI нет стандартного экранирования, поэтому значения с " или переводами строк помечаются как небезопасные.
Распространенные Случаи Использования
- Помещение пароля с @ и : в URL подключения к PostgreSQL или MongoDB
- Добавление секрета в YAML-файл Kubernetes или Ansible
- Экранирование пароля в файле Spring application.properties
- Добавление тестового пользователя через SQL-инструкцию
Часто Задаваемые Вопросы
Почему пароли в строках подключения нужно кодировать для URL?
Символы вроде @, :, / и # имеют в URL особое значение; незакодированный @ заставляет парсер принять часть пароля за хост.
Безопасен ли SQL-литерал от инъекций?
Это корректное стандартное экранирование SQL, но в коде приложений всегда предпочитайте параметризованные запросы.
Почему INI помечен небезопасным для некоторых значений?
В INI нет стандартного способа экранировать двойные кавычки и переводы строк, а парсеры различаются, поэтому инструмент отказывает, а не гадает.