Вы здесь
Отключение авторизации в 1С
вт, 11.05.2010 - 23:57 - krak
Иногда необходимо войти в какую-то базу 1С. Например, у нас это случилось когда один объект нашей сети закрыли и ИТшников уволили. Естественно паролей администраторов локальной базы никто не знал, а оставшиеся пользователи не имели админских прав. Для этого существует 2 совета (для файловой БД и для MsSQL):
Файловый вариант
- Открываем 1CD файл в HEX-редакторе (я пользуюсь HIEW)
- Ищем в файле юникодовую строку “users.usr” находим что-то вроде этого:
00 00 2D 00 00 00 00 09 00 75 00 73 00 65 00 72 00…
09 – число символов строки “users.usr”, 75,73,… – сама строка “users.usr” - Исправляем байт, стоящий перед 09 с 00 на 01 (получается, что исправляем даже на байт, а один бит) получается следующее:
00 00 2D 00 00 00 01 09 00 75 00 73 00 65 00 72 00… - Запускаем конфигуратор и спокойно заходим в конфигурацию вообще без пользователей.
- При открытом конфигураторе производим обратное исправление “на лету”, т.е. меняем 01 на 00
Теперь после обновления списка пользователей мы можем удалить их всех, поменять пароли и т.д.
P.S. В принципе п.п. 4 и 5 можно не делать, но тогда 1С-ка не дает создавать новых пользователе.
Microsoft SQL вариант
- Открываем базу в редакторе SQL.
- Ищем таблицу Params
- Удаляем строку, где в колонке FileName прописано "users.usr" или меняем значение
- В последних версиях нужно удалить или переименовать таблицу dbo.v8users
- Возвращаем обратно значение в таблице Params и переименовываем таблицу v8users
Комментарии
Microsoft SQL вариант 1
Microsoft SQL вариант
1 Находим Таблицу users
2 Находим нужную строку с пользователем,
3 Находим поле ХЕШ ключем (Название не помню), далее просто правой кл.мыши чистим его.
Удаление строки может привести к тому, что без полных прав вас не пустит в конфиг. ;)