Администрирование · 11 мин
Как посмотреть пароль SQL в 1С
Разбираем, где хранятся пароли SQL-сервера в 1С, как восстановить или сбросить пароль sa, и что делать, если доступ к базе утрачен.
Клиент-серверная база 1С работает через СУБД — чаще всего Microsoft SQL Server, реже PostgreSQL. При такой схеме существует два уровня учётных данных: пользователи 1С (заводятся в конфигураторе) и учётные записи самого SQL-сервера, под которыми сервер 1С обращается к базе. Когда администратор ищет, как «посмотреть пароль SQL», обычно речь идёт о втором уровне — пароле sa или другой учётной записи СУБД, который нужен для подключения через SQL Server Management Studio, восстановления базы или переноса на новый сервер.
Важно понимать базовое ограничение: современные СУБД не хранят пароли в открытом виде. SQL Server сохраняет только хэш пароля, поэтому «посмотреть» забытый пароль технически невозможно — его можно только сбросить и задать новый. Исключение — случаи, когда пароль где-то сохранён в открытом виде: в строке подключения, в документации администратора, в менеджере паролей или в настройках кластера серверов 1С.
Ниже разобраны легальные способы восстановить доступ к SQL-базе 1С: проверка сохранённых учётных данных, сброс пароля sa с правами администратора Windows, работа через Management Studio и варианты для PostgreSQL. Все действия предполагают, что у вас есть законные права администратора на сервер.
Где вообще хранится пароль SQL в связке с 1С
В типовой клиент-серверной архитектуре пароль СУБД указывается один раз — при создании информационной базы в консоли кластера серверов 1С. Там задаются имя сервера баз данных, имя базы, пользователь СУБД и его пароль. После сохранения пароль используется службой «Агент сервера 1С:Предприятия» для подключения к СУБД и больше нигде не отображается в открытом виде: в свойствах базы поле пароля показывается пустым или замаскированным.
Пользователи 1С (те, что заводятся в конфигураторе в разделе «Администрирование — Пользователи») к SQL-серверу отношения не имеют. Их пароли хранятся внутри информационной базы также в виде хэшей. Поэтому, если нужен доступ именно к СУБД — для бэкапа средствами SQL, переноса базы, просмотра таблиц — требуется учётная запись уровня SQL Server, а не пользователь 1С.
Проверяем сохранённые пароли до сброса
Прежде чем что-либо сбрасывать, стоит поискать пароль в местах, где он мог остаться в открытом виде. Это быстрее и безопаснее, чем менять учётные данные, за которые может «цепляться» работающий сервер 1С.
Типичные места, где пароль находится в открытом виде:
- внутренняя документация администратора или записная книжка IT-отдела;
- корпоративный менеджер паролей (KeePass, 1Password и аналоги);
- скрипты обслуживания — бэкапы через sqlcmd, планировщик задач, bat-файлы, где пароль передаётся параметром;
- настройки сторонних программ, которые подключаются к той же базе (системы отчётности, обмены данными).
Если база создавалась давно и никто не помнит пароль, проверьте также, не используется ли Windows-аутентификация. В этом режиме пароль SQL вообще не нужен: сервер 1С подключается от имени учётной записи, под которой работает его служба, и доступ к СУБД определяется правами Windows.
- 1Проверьте документацию и менеджер паролей
- 2Осмотрите скрипты бэкапов и планировщик задач на сервере
- 3Уточните, не используется ли Windows-аутентификация в свойствах базы в консоли кластера
- 4Только если ничего не найдено — переходите к сбросу пароля
Как сбросить пароль sa через Management Studio
Если у вас есть права администратора Windows на сервере, где установлен SQL Server, сброс пароля sa занимает несколько минут и не требует знания старого пароля. Это основной рабочий способ восстановления доступа.
Подключитесь к серверу по RDP или локально, запустите SQL Server Management Studio и при подключении выберите тип аутентификации «Проверка подлинности Windows». Если ваша учётная запись Windows входит в администраторы SQL Server (по умолчанию группа локальных администраторов имела такие права в старых версиях; в новых — только если её добавили при установке), вы попадёте внутрь без пароля SQL.
Далее в обозревателе объектов откройте ветку «Безопасность — Имена входа», найдите sa, откройте свойства двойным щелчком и на странице «Общие» задайте новый пароль. Убедитесь, что на странице «Состояние» вход разрешён, а сама учётная запись включена. После этого проверьте подключение: откройте новое окно подключения, выберите «Проверка подлинности SQL Server» и войдите под sa с новым паролем.
Если Windows-вход в Management Studio не работает
Когда ваша учётная запись Windows не имеет прав на SQL Server, есть обходной путь: запустить Management Studio от имени системной учётной записи через утилиту psexec (psexec -s -i) или перезапустить SQL Server в однопользовательском режиме с параметром -m, при котором любой локальный администратор получает доступ. Оба способа требуют остановки службы SQL Server, а значит — кратковременного простоя базы 1С. Планируйте такие работы вне рабочего времени пользователей.
Сброс пароля через командную строку
Альтернатива графическому интерфейсу — утилита sqlcmd. Она удобна, когда Management Studio не установлена или нужно автоматизировать операцию. Сначала подключитесь с Windows-аутентификацией, затем выполните команду смены пароля.
sqlcmd -S ИМЯ_СЕРВЕРА -E
ALTER LOGIN sa WITH PASSWORD = 'НовыйСложныйПароль';
GO
ALTER LOGIN sa ENABLE;
GO
Ключ -E означает доверительное подключение через Windows-учётную запись. Если экземпляр SQL Server именованный, укажите его в формате СЕРВЕР\ИМЯ_ЭКЗЕМПЛЯРА — посмотреть имя экземпляра можно в службах Windows (SQL Server (MSSQLSERVER) — экземпляр по умолчанию, всё остальное — именованные).
После смены пароля обязательно проверьте, что пароль соответствует политике сложности, если она включена для сервера: слишком простой пароль команда не примет, а при отключённой проверке слабый пароль станет уязвимостью, особенно если сервер доступен из сети.
sqlcmd -S SERVER\INSTANCE -E -Q "ALTER LOGIN sa WITH PASSWORD='NewStrongPass123'; ALTER LOGIN sa ENABLE;"Что делать после смены пароля: не забыть про сервер 1С
Самая частая ошибка после сброса пароля — забыть, что этот пароль использует работающий сервер 1С. Если база в консоли кластера была создана под sa и вы сменили пароль sa, сервер 1С потеряет доступ к СУБД, и пользователи получат ошибку подключения к информационной базе.
Чтобы этого избежать, сразу после смены пароля откройте консоль «Администрирование серверов 1С:Предприятия», найдите нужную информационную базу, откройте её свойства и в полях «Пользователь сервера БД» и «Пароль пользователя БД» укажите новые данные. Изменения применяются без перезапуска службы, но активные сеансы могут кратковременно отвалиться.
Более надёжная практика — не использовать sa для рабочих баз вообще. Создайте отдельную учётную запись SQL с правами на конкретную базу (роль db_owner на неё) и пропишите её в свойствах базы 1С. Тогда сброс пароля sa не сломает работу пользователей, а доступ администратора СУБД будет отделён от рабочего подключения.
Особенности для PostgreSQL
Если база 1С работает на PostgreSQL, логика та же, но механика другая. Пароль суперпользователя postgres восстанавливается через файл pg_hba.conf: временно меняется метод аутентификации для локальных подключений на trust (подключение без пароля), служба PostgreSQL перезапускается, после чего через psql задаётся новый пароль командой ALTER USER postgres WITH PASSWORD. Затем метод в pg_hba.conf возвращается обратно на scram-sha-256 или md5, и служба снова перезапускается.
Файл pg_hba.conf находится в каталоге данных кластера PostgreSQL, путь зависит от версии и способа установки. Как и в случае с SQL Server, после смены пароля нужно обновить его в свойствах информационной базы в консоли кластера 1С, иначе рабочие подключения прервутся.
Как проверить результат
Подключение успешно, базы видны в списке
Ошибка входа — проверьте, включён ли логин и разрешён ли SQL-вход в настройках сервера
База открывается, сеансы пользователей работают
Ошибка подключения к СУБД — пароль в свойствах базы в консоли кластера не обновлён
Бэкап создаётся без ошибок
Сбой задания — в скрипте или плане обслуживания остался старый пароль
Частые вопросы
Можно ли посмотреть пароль пользователя 1С из SQL-базы?
Нет. Пароли пользователей 1С хранятся внутри информационной базы в виде хэшей, и извлечь их в открытом виде нельзя. Если пользователь забыл пароль, администратор 1С задаёт ему новый через конфигуратор: «Администрирование — Пользователи». Для входа в базу без пароля в аварийной ситуации есть отдельные штатные процедуры, но они тоже сводятся к сбросу, а не к просмотру.
Не хранится ли пароль SQL в файлах сервера 1С в открытом виде?
В реестре кластера (каталог srvinfo) параметры баз хранятся, но пароль там защищён и не читается как обычный текст. Рассчитывать на извлечение пароля из этих файлов не стоит — правильный путь восстановления доступа: сброс пароля на стороне СУБД с последующим обновлением свойств базы в консоли кластера.
Что делать, если нет прав администратора Windows на сервере?
Без прав администратора на сервере СУБД сбросить пароль sa штатными средствами невозможно — это осознанное ограничение безопасности. Обратитесь к владельцу сервера или администратору инфраструктуры. Если сервер ваш, но доступ к Windows утерян, сначала восстанавливается доступ к операционной системе, затем к SQL Server.
Безопасно ли использовать sa для рабочей базы 1С?
Технически работает, но считается плохой практикой: sa имеет права на все базы и настройки сервера, а её пароль часто разъезжается по скриптам и документации. Правильнее создать отдельный логин с правами только на базу 1С и использовать его в свойствах информационной базы, а sa оставить для административных задач с длинным уникальным паролем.
Почему после смены пароля sa перестал работать бэкап?
Потому что задания обслуживания, скрипты sqlcmd и планы в планировщике задач хранят старый пароль в своих настройках. После смены пароля пройдитесь по всем автоматизированным задачам на сервере — бэкапам, обменам, отчётным выгрузкам — и обновите в них учётные данные, либо переведите задания на Windows-аутентификацию.
Можно ли восстановить доступ к базе 1С, если утеряны все пароли?
Да, если сохранён физический доступ к серверу и файлам базы. Схема: получить права администратора Windows, сбросить пароль sa или postgres, прописать новый пароль в консоли кластера 1С, затем сбросить пароли пользователей 1С через конфигуратор. Крайний вариант — развернуть базу из последней резервной копии на новом сервере с известными учётными данными.
Что важно запомнить
Пароль SQL-сервера нельзя посмотреть — только найти в сохранённых источниках или сбросить. Основной способ: вход в Management Studio через Windows-аутентификацию и смена пароля sa. После смены обязательно обновите пароль в свойствах базы в консоли кластера 1С и во всех скриптах обслуживания, а рабочие базы лучше перевести на отдельную учётную запись СУБД.