Blog of Khlebalin Dmitriy

(Дорогу осилит идущий…)

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


На днях потребовалось помочь уважаемым людям сбросить пароль к SQL базе 1c8.3 (куда-то исчез программист 1С обслуживающий базу).

Благодарю коллег с портала Sql.ru за помощь в решении вопроса, он обсуждается здесь:

http://www.sql.ru/forum/849166/sbros-parol-administratora-1s-8-2

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

Доступ к консоли у меня был.

1С:Предприятие 8.2/8.3 хранит информацию о паролях в двух местах (ранее я писал как сбросить пароль в 1с7.7 и в файловом варианте 1с8.2, кому необходимо ищите на просторах блога) :

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

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

Поля с паролями не бывают пустыми, но стирать их не надо.

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

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

Откроем Management Studio.

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

1
2
3
4
5
6
7
8
USE [your_database]
GO
EXEC sp_rename 'v8users', 'v8users_tmp'
GO
UPDATE [Params]
SET [FileName] = 'users.usr_tmp'
WHERE [FileName] = 'users.usr'
GO

Выполняем запрос.

2. Вход в 1С:Предприятие в режиме «Конфигуратора»

Открываем 1С в режиме «конфигуратора». При входе ни пользователя ни пароля запрошено не будет. База откроется с полными правами. НЕ ЗАКРЫВАЕМ КОНФИГУРАТОР (оставляем его открытым).

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

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

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

1
2
3
4
5
6
7
8
9
10
USE [your_database]
GO
DROP TABLE [v8users]
GO
EXEC sp_rename 'v8users_tmp', 'v8users'
GO
UPDATE [Params]
SET FileName = 'users.usr'
WHERE FileName = 'users.usr_tmp'
GO

Выполняем запрос (он возвращает список пользователей обратно в базу)

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

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

Далее закрываем «Конфигуратор» и просто заходим под администратором, которому только что сбросили пароль.

Всем хорошей работы!!!

Реклама

23.05.2017 - Posted by | about soft

Sorry, the comment form is closed at this time.

%d такие блоггеры, как: