TimVin

Одной из самых пугающих ситуаций является потеря пароля от учетной записи администратора 1С. Однако разработчики платформы больше заботятся об удобстве пользователей, чем о безопасности, поэтому пути решения этой проблемы достаточно просты. Но при выполнении подобных операций нужно быть предельно внимательными и понимать всю ответственность за свои действия. Обязательно сделайте резервную копию базы перед тем, как осуществить сброс пароля администратора 1С.

Работа с файловой версией 1С 8.3

Основные действия мы будем производить с файлом формата 1CD из папки, где расположена информационная база. Существует два варианта убрать пароли для входа в 1С – HEX-редакторы и программа TOOL1CD. Программы эти можно без труда найти в интернете и большинство из них бесплатны.

В первом случае смысл заключается в отключении таблицы с пользователями, чтобы заставить 1С считать, что в ИБ их нет. После этого платформа запускает конфигурацию с правами администратора, и мы можем создать новых пользователей: открываем файл 1CD в установленном HEX-редакторе и через поиск ищем в формате Unicode «users.usr».

В найденной строке найдем значение «09» и изменим число, расположенное левее, с «00» на «01». После этого, воспользовавшись поиском, находим строку «v8users» и меняем первую букву на любую другую. Делаем мы это, чтобы 1С не нашел эту строку и подумал, что в нашей базе нет ни одного пользователя. На этом работа с HEX-редактором закончена, но нам еще нужно воспользоваться утилитой «chdbfl.exe».

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

Второй способ основан на том, чтобы именно изменить пароль у конкретного пользователя на пустой. Для этого открываем файл ИБ в программе TOOL1CD и в списке таблиц находим «V8USERS», где содержатся данные всех пользователей. Чтобы получить пароль в виде хеш-формата SHA-1, нажимаем на поле DATA строки конкретного пользователя и заменяем значение там на «2jmj7l5rSw0yVb/vlWAYkK/YBwk= », означающее пустой пароль.

С помощью кнопки «Записать» под табличной частью сохраняем данные поля в текстовый файл. В текстовом редакторе осуществляем замену и сохраняем файл, не меняя его наименования. Чтобы загрузить изменения, включаем режим редактирования таблицы с помощью кнопки слева над таблицей, и снизу появляется возможность «Прочитать из файла». После этого остается подтвердить изменения кнопкой с зеленой галкой. Снятие пароля в 1С успешно завершилось!

Работа с клиент-серверной 1С

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

  • Запускаем утилиту для управления БД;
  • Создаем запрос, в котором будем переименовывать таблицу v8users и файл users.usr, чтобы 1С не смогла их распознать. Вместо «DatabaseName» пропишем имя собственной базы
USE [DatabaseName]
GO
EXEC sp_rename 'v8users', 'v8users_tmp'
GO
UPDATE [Params]
SET [FileName] = 'users.usr_tmp'
WHERE [FileName] = ’users.usr‘
GO
  • Выполняем запрос кнопкой F5;
  • Запускаем 1С. Если все сделали верно, 1С не спросит логина и пароля, а запустится сразу же с полными правами;
  • Не закрывая конфигуратор, создаем еще один запрос в утилите управления БД. Его суть в возвращении таблицы пользователей
USE [DatabaseName]
GO
DROP TABLE [v8users]
GO
EXEC sp_rename 'v8users_tmp', 'v8users'
GO
UPDATE [Params]
SET [FileName] = 'users.usr'
WHERE [FileName] = ’users.usr_tmp‘
GO
  • После очередного выполнения текста запроса возвращаемся в конфигуратор и создаем нового пользователя с правами администратора. Также можно просто изменить пароль у одного из действующих;
  • Перезагружаем конфигуратор и входим под тем пользователем, которому назначили новый пароль.

После этих действий сброс пароля пользователя 1С 8.3 можно считать успешно выполненным. Помните, что каждая подобная операция – большой риск, так как администратор может ошибиться при написании запроса. При этом и 1С далеко не самая устойчивая система к внешним взаимодействиям. Поэтому обязательно заведите правило хранить пароли в надежном месте и пользуйтесь вышеприведенными алгоритмами в крайних случаях.

Рубрики: 1С Предприятие