gifts2017

Отчет по правам пользователей для любой конфигурации "1С:Предприятия 7.7"

Опубликовал Alex Melnichuk (Amel2010) в раздел Администрирование - Защита, права, пароли

Инструмент для наглядного анализа и сравнения наборов прав доступа в 1С 7.7
Работает в любых конфигурациях. В одной из обслуживаемых мной баз 40 наборов прав пользователей (120 пользователей).
Этим отчетом очень наглядно выходит анализировать разницу в правах и просто описывать права пользователей в документации.
Обновлено:
- В новой версии отчета добавил сравнение двух разных баз и анализ внешней БД.
- объекты метаданных представлены в виде дерева (объект "Дерево-Таблица значений" FormEx)

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

То, что встречал до сих пор по этой теме не подходило по причине необходимости выгрузки описания конфигурации БД для них.

Мне приходится иметь дело со сложными конфигурациями (много пользователей, объектов метаданных, прав...).

Выгрузка описания конфигурации, да и парсинг получаемого описания - не благодарное дело (получается огромный текстовый файл).

Уж очень много времени на это требуется.

 

Поэтому решил создать что-то свое.

За основу взят функционал двух внешних компонент compound.dll и usersdef.dll.

Также используется 1С++ (для чтения бинарных файлов и поиска ИД объектов метаданных).

В приложенном архиве отчет вместе с необходимыми компонентами (будет работать на любых конфигурациях - надеюсь:).

 

Есть возможность как получить полный отчет по правам пользователя/набора прав, так и провести сравнение пользователей/наборов прав.

Можно фильтровать по определенным объектам конфигурации.

 

ЗЫ: Да, чтобы compound.dll работала, ее нужно зарегистрировать в системе от имени администратора (кажется)!

Скачать файлы

Наименование Файл Версия Размер
Отчет версии 3 с необходимыми компонентами 79
.zip 1,16Mb
15.10.14
79
.zip 1,16Mb Скачать
Отчет с необходимыми компонентами 16
.zip 956,57Kb
15.10.14
16
.zip 956,57Kb Скачать
Только отчет 5
.ert 251,00Kb
11.02.14
5
.ert 251,00Kb Скачать
Отчет версии 3 (без компонент) 3
.zip 32,67Kb
17.02.14
3
.zip 32,67Kb Скачать

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Антон Рощин (wolfsoft) 12.02.14 09:11
Думаю, актуальность отчёта была бы много выше, если бы он позволял сравнивать роли из разных MD-файлов. Такая задача часто стоит при обновлении изменённых конфигураций - требуется сравнивать набор ролей в изменённой конфигурации с набором ролей в типовой конфигурации. Причём, неплохо было бы иметь возможность там указывать, чтоб выводились в отчёт только отличающиеся права. Вот это была бы вещь :)
2. Alex Melnichuk (Amel2010) 12.02.14 10:42
Без проблем.
Спасибо за дельное предложение.
Ждите в новой версии.
А только отличающиеся - и так выводит.
3. Юрий (Kurt) 12.02.14 11:27
"За основу взят функционал двух внешних компонент compound.dll и usersdef.dll.
Также используется 1С++ (для чтения бинарных файлов и поиска ИД объектов метаданных).
В приложенном архиве отчет вместе с необходимыми компонентами..."

А инструкция там есть как эти компоненты "прикрутить"? Бибилиотеки, например, под правами Администратора не нужно с системе регистрировать? Я, да и многие, у кого стандартная конфигурация, стараются обходиться без функционала 1С++. Но ради такой "плюшки" я бы его прикрутил. А как прикручивать, честно, понятия не имею ибо не пользовался. Так что инструкцию не мешало бы приложить. А еще лучше скрипт или батник для автоматической регистрации... но чую для разных систем 32-64 он должен быть разный... библиотеки я думаю можно было бы и в system32 скопировать тем же скриптом.

И на втором скриншоте... почему у "Админова" нет "минусов" в справочниках "Виды деятельности", "Гарантии", "Контрактные обзательста"? Ну на худой конец... просто пустая клеточка. А то строчка (или столбец) "плывёт". И при очень длинном списке уже будет и не понятно, чей это там плюсик стоит. Вот это "плавание" таблицы меня больше настораживает.
4. Юрий (Kurt) 12.02.14 11:39
И еще вопрос. Обработка запускается в той же базе? Или из другой? В монопольном режиме? Или работающие в этот момент в базе пользователи не мешают?
5. Alex Melnichuk (Amel2010) 12.02.14 13:30
(1) wolfsoft,
Вы знаете, к сожалению, я не нашел, как найти внутр. идентификатор объектов по ОЛЕ.
Кроме справочников и документов - другие не знаю, как находить.
Если есть идеи, как это сделать - тогда смогу переделать под сравнение.

Только один вариант крутится в голове - запускать программно в другой БД внешнюю обработку по ОЛЕ и из нее уже получать данные. Как-то так... Но это наверное непродуктивный путь.

Ну и еще есть способ, вспомнил, - парсить md-файл.
Пробовал - очень долго выходит.

Может предложите что-то более продуктивное?

Попробовал первый вариант - вроде бы получается достаточно продуктивно.
Правда, при открытии базы по ОЛЕ фокус окон прыгает странным образом.
Бывает, куда-то теряется окно с запросом логина пользователя.
Я доделаю вариант для внешних баз.
6. Alex Melnichuk (Amel2010) 12.02.14 16:17
(3) Kurt,
"Прикручивать" ничего не нужно.
Только зарегистрировать библиотеку compound.dll от имени администратора.
Кто не помнит, это делается командой: "regsvr32.exe compound.dll" в каталоге отчета.

По поводу второго скриншота - это был косяк. На момент создания скриншота.
В залитом сюда отчете уже такого нет.
7. Alex Melnichuk (Amel2010) 12.02.14 16:18
(4) Kurt,
Та обработка, что выложена сейчас, работает с текущей БД (с той, в которой открыта).
Следующая версия сейчас в разработке - там будет возможность выбирать анализируемую БД.
8. Alex Melnichuk (Amel2010) 17.02.14 20:04
(1) wolfsoft,
реализована Ваша хотелка в новой версии.
Пользуйтесь на здоровье!
wolfsoft; +1 Ответить
9. Андрей Суханцов (&rew) 15.10.14 12:51
"Отчет версии 3 с необходимыми компонентами" Там нет compound.dll
10. Alex Melnichuk (Amel2010) 15.10.14 15:59
(9) &rew,
Да, Вы правы. Прошу прощения.
Добавил файл в архив.
11. pikul Pikulskaya (pikul) 20.04.15 14:26
1)При сравнении набора прав двух идентичных конфигураций, при выборе типов объектов в сравниваемой ИБ - ошибка:
Если ТЗ.НайтиЗначение(ЗначПоиска, н, КолонкаПоиска)=0 Тогда
{D:\........здесь путь............\АНАЛИЗПРАВДОСТУПА_3.ERT}: Неверный идентификатор колонки!

1)Причина найдена:
в пакете "Отчет версии 3 с необходимыми компонентами" - файлы ПолучитьОписаниеМДвТЗ.ert, а в листинге АНАЛИЗПРАВДОСТУПА_3.ERT ссылка на файл 1.ert

2) При сравнении набора прав двух идентичных конфигураций, сравнение производится некорректно: какой бы набор прав не был бы выбран, сравнительная таблица (результат сравнения) одна и та-же :( Сравнение ТОЛЬКО констант
12. Алексей (daviels) 14.07.16 11:28
к сожалению при формировании появляется ошибка:

Таб.ПрисоединитьСекцию(Секц+"|Значение" + Шаблон(кол));
{D:\1С\АНАЛИЗПРАВДОСТУПА_3\АНАЛИЗПРАВДОСТУПА_3\АНАЛИЗПРАВДОСТУП­А_3.ERT(758)}: Секция не найдена Значение1059
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа