Выходные у меня редко обходятся без программирования под платформу 1С:Предприятие 8. Всегда находятся компании с потребностью срочно перенести данные из одних документов в другие или сделать нестандартный отчет. Я редко кому отказываю, но работу предпочитаю делать дома, а не в офисе клиента. Не люблю, когда стоят над душой и постоянно спрашивают: «А долго еще?».
В итоге алгоритм работы сводится к стандартному сценарию: клиент предоставляет выгрузку своей БД (тут все зависит от вида работ), я работаю дома, потом возвращаю результат труда и получаю вознаграждение. Все элементарно, но зачастую возникают запарки вроде: клиент отдал базу, а пароль сообщить забыл. Обычно такое происходит, когда всю субботу набираешь заказы, а за исполнение берешься ночью. Тут и начинается самое интересное. Где взять пароль? Не звонить же клиенту среди ночи!
Способ снять пароль пользователя в 1С:Предприятие 8 существует несколько. Каждый имеет свои плюсы и минусы. Мне больше по душе вариант с использованием программы Tool_1CD.
Убираем пароль с помощью Tool_1CD
Tool_1CD умеет читать и редактировать файлы 1CD, т.е. файлы, информационных баз (речь о файловом варианте). С ее помощью можно сделать много чего интересного и полезного, но сегодня нас интересует только вопрос снятия пароля с информационной базы. Попробуем убрать пароль с информационной базы в несколько шагов.
Загружаем утилиту Tool_1CD. Она доступна в двух вариантах. Первый позволяет только просматривать содержимое файла с ИБ, а второй может похвастаться возможностью редактирования. Для снятия пароля определенного пользователя нам потребуется второй вариант. Загрузить последнюю версию Tool_1CD всегда можно с репозитория на bitbacket.
Делаем резервную копию подопытной ИБ. Не стоит полагаться на судьбу и проводить эксперименты на живой базе без предварительного сохранения. Насколько мне известно, формат файла 1CD закрыт и энтузиасты его раскручивают самостоятельно. Стоит разработчику допустить ошибку и вы сразу лишитесь своей базы. Не торопитесь, потратьте пять минут на создание резервной копии БД и только потом приступайте к опытам.
Запускаем программу Tool_1CD и в меню «Файл» выбираем «Открыть базу». Выбираем файл 1CD подопытной информационной базы. Время, необходимое для разбора файла с БД напрямую зависит от ее размера. В моем примере база полностью пустая, т.к. она была специально создана в качестве демке к этой заметке.
В левой части окна Tool_1CD перечислены доступные таблицы ИБ. В моем случае их мало, т.к. конфигурация моей БД не содержит никаких объектов метаданных. При открытии реальной БД (например, 1С:Бухгалтерия) таблиц будет значительно больше. Сколько бы таблиц не было. нас интересует в первую очередь V8USERS. Кликаем по этой табличке один раз и в правой части окна выбираем вкладку «Физическое представление».
На вкладке «Физическое представление» представлен список пользователей ИБ. В моем случае их два: «Пользователь» и «Администратор». Выделяем запись «Администратор» (пароль будем убирать именно у этого пользователя), а затем кликаем по колонке «Data».
Значением колонки «Data» является ИД пользователя в системе и хеш пароля. В моем случае хеш пароля выглядит так: fEqNCco3Yq9h5ZUglD3CZJT4lBs. Повторюсь, это не пароль в чистом виде, а его хеш. Вот так просто взять и заюзать его не получится. Что можно делать с этим хешем? Можно пробовать сбрутить. Для этого в сети есть специальных сервисы, но ждать придется долго. Проще заменить его на хеш заведомо известного пароля. Например, хеш 2jmj7l5rSw0yVb/vlWAYkK/YBwk= соответствует пустой строке.
Нажмем на кнопку «Записать BLOB/MEMO в файл» (кнопка с изображением дискеты) и сохраним данные, соответствующие записи «Администратор» в файл. После чего откроем файл в каком-нибудь текстовом редакторе и заменим хеш пароля пользователя на хеш пустой строки.
Вернемся к Tool_1CD, вновь выделим запись, соответствующую учетной записи «Администратор», и нажмем кнопку «Редактировать таблицу», расположенную на панели инструментов. Затем выделим колонку «DATA» и нажмем «Заменить BLOB/MEMO», которая должна была появиться возле кнопки «Сохранить».
В появившемся окне выбираем отредактированный нами файлик и жмем пимпу «Ок». Значение колонки «Data» обновиться и нам остается только нажать кнопку «Сохранить изменения» (с зеленой галочкой).
Закрываем Tool 1CD и пробуем открыть отредактированную информационную БД под пользователем «Администратор». Если все действия были проделаны верно, то пароля вводить не придется.
Озвученный выше способ актуален для снятия паролей как для 8.2, так и для 8.3.
P.S. Тулза куда-то переехала и если не можете отыскать на просторах интернета, то можете скачать у меня - Скачать Tool1C.