Сбросить пароль администратора кластера 1с

Обновлено: 07.07.2024

Сброс пользователей в клиент-серверной базе 1С:Предприятия 8.x

В клиент-серверном режиме работы все данные хранятся в базе данных, управляемой одной из СУБД: MS SQL, Postgree SQL, IBM DB2 или Oracle. Информация об учетных записях хранится в двух таблицах: "v8users" и "Params".

Изображение

В некоторых ситуациях может появиться необходимость сбросить учетные записи пользователей, чтобы войти в информационную базу. В статье рассмотрим действия, необходимые для выполнения этой задачи. В примере будем использовать MS SQL Server 2012 Express . Имя базы данных на SQL-сервере - "Exp".

Для того, чтобы сбросить учетные записи нужно выполнить два действия:

  1. Удалить таблицу "v8users".
  2. Удалить запись из таблицы "Params", у которой в первой колонке "FileName" содержится значение "users.usr".
Далее рассмотрим SQL-команды для автоматизации описанных действий, а также для восстановления списка пользователей информационной базы.

SQL-команды

И так, нам нужны SQL-команды для сброса и восстановления пользователей информационной базы. Начнем с команд сброса списка пользователей. Нам нужно выполнить следующие действия:

  1. Переименовываем таблицу "v8users" в "h8users" вместо ее удаления. Это позволит восстановить таблицу в дальнейшем. Подробнее о команде "sp_rename" Вы можете прочитать здесь .
  2. В таблице "Params" также не будем удалять запись, а лишь изменим значение в колонке "FileName" с "users.usr" на "husers.usr". Тогда платформа не сможет найти параметры пользователей информационной базы. Подробнее о команде "UPDATE" Вы можете узнать здесь .

Выполнив эти шаги, мы без проблем сможем зайти в информационную базу, пропустив этап аутентификации. Теперь перейдем к рассмотрению команд по восстановлению списка пользователей. Всего будет три команды:

  1. Удаление таблицы "v8users", поскольку входа в ИБ платформа создает таблица заново, если она отсутствовала. Вот так выглядит SQL-команда по удалению таблицы из БД. Следует предусмотреть отсутствие этой таблицы, чтобы не появилась ошибка выполнения. Подробнее о команде "DROP TABLE" смотрите по ссылке .
  2. Восстанавливаем исходное имя таблицы "v8users". Ее синтаксис аналогичен предыдущему примеру, изменили лишь местами имена таблиц.
  3. Возвращаем исходную запись параметров. При необходимости нужно удалить новую запись настроек пользователей, если платформа ее создала.
Используя приведенные выше команды, мы можем сбрасывать/восстанавливать список пользователей информационной базы.

Автоматизируем процесс

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

Изображение

Для сброса/восстановления учетных записей необходимо ввести адрес SQL-сервера, имя базы данных и информацию для аутентификации на SQL-сервере.

Таким образом, задача решена, а с помощью созданной программы процесс сброса учетных записей не будет проблемой.

Читайте также: