04.05.2017

Сброс пароля 1С 8.2 или 8.3 SQL

Сброс пароля 1С 8.2 или 8.3 может потребоваться, если по каким-то причинам админский доступ был утрачен. Надо сказать, что сброс пароля 1С с базой под SQL Server выполняется даже проще, чем в файловом варианте.

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

Приступим…

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

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

Где 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.

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

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

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

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

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

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

Имейте в виду, что отдельные конфигурации 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

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

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

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

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

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

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

Заключение

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

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


Все НОВОСТИ