Восстановить контроль над базой 1С

Posted by

Нет доступа в "Конфигуратор" базы 1ССегодня я разберу для себя, как имея только бекап базы данных получить полный доступ к данным не имея Административного доступа при подключении клиентом к базе. Раз данная заметка получилfсь, то напрашивается вывод, что сервер базы данных и разворачиваемые на нем базы нужно защищать шифрованием. Об этом я поговорю с самим собой в рамках новой заметки которую я опубликую на блоге → www.ekzorchik.ru. Данная задача случается обычно, когда контору обслуживали бездари, а по приходу Вам ничего не выдали (Адреса,Логины и пароли, договора, структура сети), только слова напутствия: «Удачи!!!» или тут все просто.

В наличие:

  • Server 2008 R2 SP1 Enterprise
  • RAM = 8Gb
  • CPU = 2, Cores = 2
  • HDD = 50Gb (System), 100GB — Data (DATA,LOG,BACKUP)
  • SQL Server 2014 (12.0.5000.0) установлен с использование двух пакетов:
    • SQLServer2014SP1-FullSlipstream-x64-ENU
    • SQLServer2014SP2-FullSlipstream-x64-ENU

и база от редакции 1С: 8.2.19.121

и кластер под эту редакцию .

Схема:

Пользователь → Кластер 1С → SQL Server 2014 SP2

Но вот беда, Вы как приходящий администратор оказываетесь перед окном авторизации , но никто не знает административного пароля, а если еще честнее то его никто из сотрудников не знал. Приходил какой-то и что-то делал по принципу задача/деньги и уходил. Вот это сейчас я и исправлю:

Запускаем оснастку SQL Server Management Studio (SQL Server 12.0.5000.0)

Start — All Programs — Microsoft SQL Server 2014 — SQL Server 2014 Management Studio, авторизуюсь:

SRV-DATABASE (SQL Server 12.0.5000.0 — SRV-DATABASE\Administrator) — Databases — AvtoCar — Tables — dbo.Tables, открываю через правый клик по ней выбрав меню: Select Top 1000 Rows (Отобразить 1000 популярных строк) и в выводе находим строку с именем: users.usr и удаляем, удобнее делать через запрос:

SQL Management Studio → File — New — Query with Current Connection

use AvtoCar;

delete from dbo.params where FileName = 'users.usr';

А после нажимаем на Execute.

Результат запроса: (1 row(s) affected)

Пробую зайти в конфигуратор указав настройки подключения к базе через на кластере , но увы не прокатило:

  • Пользователь: Администратор
  • Пароль: ничего не указываю

Нажимаю: OK, но получаю:

Идентификация пользователя не выполнена

Неправильное имя или пароль пользователя

Ладно, тогда удалю таблицу dbo.v8users

use AvtoCar;

;

Положительный ответ от данного запроса должен быть следующим:

Command(s) completed successfully.

После запускаю клиент и захожу в «Конфигуратор»:

Start — 1C Предприятие 8.2 — Дополнительно — 8.2.19.121 — Конфигуратор — выбираю базу и нажимаю «Конфигуратор», в момент авторизации соглашаюсь, что Пользователь: «Администратор», а в поле «Пароль» ничего не ввожу и нажимаю «OK».

И вот я внутри:

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

Текущий пользователей в 1С всего один и мы как раз авторизованы под ним

Можно пересоздать всех пользователей и уже начать настраивать платформу под нужды компании, а не того что было раньше. Всегда напрашивается вопрос, как же те что до меня системные администраторы могут себе такое позволять работая в данной сфере оставляя после себя хаос и не доделывая все на них возложенное чтобы инфраструктура работала на все 100%. Я же так не могу.

Так я зашел в конфигуратор, но теперь нужно в саму 1С Предприятие.

И обычная авторизация в базе 1С также работает.Итог, сброс всех настроенных паролей успешно осуществлен и пора наводить порядок. Вот сейчас у меня на контроле все что делается в сети, все работает без сбоев и нареканий от сотрудников других отделов, за исключением факта ухода от своего почтового сервера, а вместо этого их сейчас два, ухода от собственной АТС в пользу облачной (но момент возврата уже близок). А пока я прощаюсь, на этом всё, с уважением автор блога Олло Александр aka ekzorchik.