Заметки сисадмина » Сброс пароля 1С 8.2/8.3 с базой под SQL Server

Заметки сисадмина о интересных вещах из мира IT, инструкции и рецензии. Настраиваем Компьютеры/Сервера/1С/SIP-телефонию в Москве

Сброс пароля 1С 8.2/8.3 с базой под SQL Server

Единственным условием успешного выполнения процедуры сброса пароля 1С Предприятия 8.2/8.3 является доступ в консоль Microsoft SQL сервера. Если растеряли вообще все пароли, то ситуация несколько усложняется. В данной статье будет дано описание только как снять пароль 1С с SQL базы.

Перед выполнением процедуры сброса пароля 1С обязательно сделайте резервную копию базы данных.

1С:Предприятие 8.2/8.3 хранит информацию о паролях в двух местах:

  1. В таблице БД v8users.
  2. В файле users.usr. Файл бинарно сохранен в таблице Params.

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

Не пытайтесь стирать вообще всю инфу из полей с паролями. Они не бывают пустыми.

Как получить админский доступ в 1С без пароля:

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

Кстати: именно по причине проверки привилегий только на входе, при изменении прав доступа пользователей, новые параметры вступают в силу только после повторной авторизации пользователя.

1) Переименовываем таблицу v8users и файл users.usr

Перед входом в базу данных, куда требуется получить доступ, переименуем таблицу v8users в v8users_tmp. Так же переименуем файл users.usr в users.usr_tmp.

Откроем Management Studio.

Создаем новый запрос к БД:

Идентификатор «your_database» замените на идентификатор своей базы 1С.

И запускаем его: F5 или иконка с восклицательным знаком.

2) Вход в 1С:Предприятие в режиме конфигуратора

Открываем 1С в режиме конфигуратора. При входе ни пользователя ни пароля запрошено не будет. База откроется с полными правами.

Имейте в виду, что отдельные конфигурации 1С имеют ряд особенностей по управлению пользователями. Эти особенности следует учитывать при выполнении процедуры сброса пароля 1С.

3) Восстановление таблицы v8users и файла users.usr

Теперь выполним обратную операцию тому, что было сделано на шаге 1.

Снова создаем новый SQL скрипт в Management Studio, и вписываем туда:

Идентификатор «your_database» замените на идентификатор своей базы 1С.

И запускаем его: F5 или иконка с восклицательным знаком.

4) Изменяем пароль администратора или создаем нового

В Конфигураторе 1С измените пароль существующего администратора или создайте нового пользователя с административными правами.

Сброс пароля 1С лучше делать для существующего пользователя

Имейте в виду, что в таких конфигурациях, как «Управление торговлей» версии 11 создание пользователей следует выполнять в режиме 1С:Преприятия, а не в Конфигураторе. Поэтому лучше изменить пароль существующего администратора, а не создавать через Конфигуратор нового пользователя.

Закройте Конфигуратор и откройте снова. Теперь будет действовать указанный пароль на шаге 4.

Обязательно учитывайте особенности управления пользователями конкретной конфигурации 1С.

Ниже скрипт, нужно применить его к базе и просто зайти в конфигуратор:

1)Открываем SQL Server Management Studio
2)Выбираем нужную БД правой кнопкой мыши Создать запрос (New Query)

Начиная с платформы: 8.3.5 решение для SQL такое:

1) Запускаем конфигуратор,
2) открывается окно авторизации,
3) затем переименовываем таблицу v8users в v8users_tmp и также в таблице Params переименовываем запись users.usr в users.usr_tmp,
4) затем в окне авторизации жмем Enter и попадаем в конфигуратор с полными правами,
5) после этого переименовываем таблицу и запись в исходное состояние и можем работать со списком пользователей уже в конфигураторе

Либо более топорный способ:
Удалил в той таблице строчку. Ну и снес всю таблицу( она была чуть ниже parametrs.) и называлась Usersv8. После сиих действий все заработало прекрасно)

Список пользователей базы 1С в SQL:

1)Открываем SQL Server Management Studio
2)Выбираем нужную БД правой кнопкой мыши > Создать запрос (New Query)
3)SELECT * FROM v8users

Сбросить пароль 1С 8, если база на PostgreSQL:

1)Открываем pgAdminIII.
2)выделяем базу PostgreSQL, для которой нужно сбросить пароль 1С Предприятие.  Затем Меню > Инструменты > Инструмент запросов выполняем:

Запускаем конфигуратор 1С. (Заходит без запроса пароля)
– если не пускает в конфигуратор можно в само 1С предgрияте – затем сможете создать пользователя через Администрирование – Права доступа.

4)Перед созданием пользователя необходима вернуть текущих, Для этого, не выходя из конфигуратора, выполняем команды.

5)Создаем нового или меняем пароль текущему.

 

Leave a Reply