Анализ прав пользователей, версия 1.6

Администрирование - Защита, права, пароли

219
Универсальный отчет по правам доступа к объектам конфигурации и их полям. Работает в любых конфигурациях, как типовых так и самописных.

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

Возможно получать отчеты по следующих разрезах:

1) объект - роль (Анализ прав пользователей);

2) объект - пользователь (Анализ прав пользователей);

3) пользователь - роль (Матрица ролей);

4) табличная часть или поле объекта - пользователь (Доступ к полям);

5) табличная часть или поле объекта - роль (Доступ к полям).

Кроме того, можно отмечать объекты по подсистемам.

В обновлении (версия 1.6) добавлен еще один отчет - "Группы пользователей". С его помощью можно сгруппировать пользователей с одинаковыми наборами прав.

219

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

Наименование Файл Версия Размер
Анализ прав пользователей в. 1.6 (для платформы 8.1)
.epf 56,12Kb
13.08.10
563
.epf 56,12Kb 563 Скачать бесплатно
Анализ прав пользователей в. 1.6 (для платформы 8.2)
.epf 58,33Kb
13.08.10
2067
.epf 58,33Kb 2067 Скачать бесплатно

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. ChinChin 15.06.09 10:45 Сейчас в теме
Был бы отчет в категории "Для всех" может и скачал бы посмотреть, а так гляну - может что полезнее найдется - ведь в день на ИС можно ошибиться только один раз :(
3. YVolohov 728 16.06.09 15:45 Сейчас в теме
А, будет своеобразная проверка на вшивость, стоит программа чего-нибудь или нет.
bobr_dobr; +1 Ответить
4. artbear 1100 18.06.09 15:32 Сейчас в теме
Только получить данные? изменить их в этом отчете получится?
5. YVolohov 728 18.06.09 16:24 Сейчас в теме
(4) В новой версии (только что выложил) можно изменять данные. Естественно создавать/редактировать роли нельзя, это можно делать только вручную через конфигуратор. Но вот назначать уже существующие роли пользователям можно, для этого в отчет была добавлена матрица ролей.
bobr_dobr; +1 Ответить
6. Valerich 19.06.09 06:35 Сейчас в теме
судя по описанию то что мне надо, но не доходят руки самому написать. плюс авансом
7. Cifer 26.06.09 10:59 Сейчас в теме
Наглядно. Плюс однозначно!
8. asn70 7 01.07.09 15:15 Сейчас в теме
9. Granat 14.07.09 00:26 Сейчас в теме
Незаменимая вещь! Уже 2 года как пользуемся сложной таблицей, где все права расписаны в разрезе пользователей и ролей. При каждом изменении прав приходится вручную корректировать данные таблиц. Теперь все намного проще! Спасибо!
YVolohov; +1 Ответить
10. YVolohov 728 17.07.09 15:43 Сейчас в теме
Очень приятно слышать такие отзывы о своей работе, спасибо за поддержку.
bobr_dobr; +1 Ответить
11. an77 225 24.07.09 16:09 Сейчас в теме
Класс! Полная картинка!
(теперь будет намного легче)
Спасибо.
12. balu_dnepr 11.08.09 18:46 Сейчас в теме
Отличная вещь. Плюс однозначно. Автору респект.
YVolohov; +1 Ответить
13. FlyLink 28.11.09 20:52 Сейчас в теме
С матрицей ролей все хорошо. +
Анализ прав выводится свернутым, а чтобы посмотреть установленные права по каждому элементу приходится раскрывать их вручную каждый.
но слева уже есть отбор по элементам. Зачем тогда справа их скрывать, если все равно потом щелкать на каждом мышкой?
Почему в левой колонке на вкладке "метаданные" нельзя отметить сразу все или снять отметки у всех?
14. YVolohov 728 01.12.09 10:50 Сейчас в теме
(13) В левой колонке можно отметить или снять отметку для всех элементов. Нужно установить/снять отметку на корневом элементе.
Возможность быстрого свертывания/развертывания группировок отчета также существует. Для этого нужно щелкнуть правой кнопкой мыши на серой полосе слева от отчета (там где находятся управляющие элементы группировок) и в контекстном меню указать уровень свертывания.
bobr_dobr; +1 Ответить
15. FlyLink 01.12.09 21:46 Сейчас в теме
(14) Спасибо. чет я сразу не догадался... :)
16. sovt 10.03.10 11:54 Сейчас в теме
17. FiZikus 16.04.10 18:10 Сейчас в теме
Реально, супер вещь!!!! Респект, однозначно, и конечно + !!!
YVolohov; +1 Ответить
18. alexmobile 69 07.06.10 10:11 Сейчас в теме
А под 7.7 нечто подобное есть?
19. YVolohov 728 08.06.10 10:04 Сейчас в теме
(18) В 7.7 я не встречал средстств для программной работы с правами. Так что, скорее всего, там такую обработку создать нельзя. Разве что не средствами платформы. Найти, где физически хранятся права пользователя и прочитать их просто из файла с помощью специально написанной программы.
20. BigMih 20.08.10 11:56 Сейчас в теме
Отличная обработка! Давно уже стояла проблема анализа прав пользователей. Было несколько маленьких одноразовых решений, но такого комплексного подхода к решению конечно не было. Огромное спасибо!:)
YVolohov; +1 Ответить
21. Virsy 27.12.10 13:01 Сейчас в теме
Отличная штука! Огромное спасибо. Не хватает сохранения списков помеченных объектов (метаданных,пользователей,ролей) в файлик.. оч прошу сделать т.к. это сэкономит уйму времени и сил
22. Akv@rel 25.02.11 09:52 Сейчас в теме
Спасибо, обработка отличная!!

Небольшое пожелание: при формировании на закладке "Анализ прав доступа" хотелось бы выбирать из перечня "Право доступа" нужные, например, вывести список объектов по пользователям, которые имеют право "Редактирование".
Это было бы очень удобно при анализе очтета.

Спасибо!!!
23. DealMaker 14.07.11 19:18 Сейчас в теме
Спасибо за отчёт.
Было бы удобно закрепить шапку таблицы, чтобы при прокрутке вниз знать к какому пользователю/роли относятся те или иные галочки
24. Filt 11 16.09.11 10:19 Сейчас в теме
Спасибо за отчет. Удобно выгружать сведения для аудиторских фирм.
25. Vond 18.11.11 15:26 Сейчас в теме
Как то сильно сложно воспринимается символ V как отметка - реально сперва просто как царапает глаз. Может как вариант доточка выбора варианта отметки - V, Да, * и т.п.
26. SiviS 07.01.12 10:04 Сейчас в теме
Подскажите, кто нибудь проверял данный отчет на платформе 8.2, будет ли он там работать?
27. mapt 30.01.12 19:28 Сейчас в теме
28. YVolohov 728 01.02.12 17:53 Сейчас в теме
(26)(27) Да, будет. Но только в обычном режиме. Управляемые формы не поддерживает.
29. hotey 37 13.02.12 08:59 Сейчас в теме
Спасибо! То что доктор прописал. Как раз искал отчет с матрицей прав Отчеты/Роли.
YVolohov; +1 Ответить
30. Aleksey-29 14.02.12 10:51 Сейчас в теме
Автор, а есть описание обработки, как в этом всем разобраться? Если есть, то будем качать. Если нет, то наугад можно что-нибудь не то натворить ==> предлагаю сделать. ))
32. YVolohov 728 14.02.12 11:04 Сейчас в теме
(30) Обработка практически ничего не изменяет, так что при всем желании ничего она натворить не может. Единственное, что можно изменять с помощью этой обработки - это назначать пользователям роли в режиме матрицы. Все остальные отчеты только на чтение, данные они не изменяют.
(31) Обработка не привязана к какой-либо конфигурации, она универсальна. В силу этого она подтягивает только ту информацию, которую можно вытащить средствами платформы. Уровень доступа РЛС сюда не входит, он завязан на функционале типовых конфигураций. Можно посмотреть только само наличие РЛС - есть или нет.
31. Гость 14.02.12 10:53
А как насчет уровня доступа RLS?
33. Aleksey-29 14.02.12 11:26 Сейчас в теме
Спасибо. Кстати, пользователей можно в иерархии показывать. Так выбирать было бы легче.
34. YVolohov 728 14.02.12 12:27 Сейчас в теме
(33) Можно выбирать состав пользователей, но порядок вывода менять нельзя, это же не СКД
36. YVolohov 728 28.03.12 12:45 Сейчас в теме
(35) Установка/снятие отметки на корневом элементе дерева отмечает/снимает отметки со всего дерева.
Сворачивание/разворачивание группировок в отчете изначально заложено в системе. Нужно щелкнуть правой кнопкой мыши на серой полосе слева от отчета (там где расположены управляющие элементы группировок) и выбрать в меню нужный уровень развертывания.
37. pt_olga 62 28.06.12 15:59 Сейчас в теме
ёлки... зря скачала, искала аналогичную обработину под 77 :(
38. higs 08.08.12 08:13 Сейчас в теме
Хорошая нужная обработка, спасибо!!!
39. Valerich 1665 26.09.12 11:45 Сейчас в теме
можно ли еще прикрутить вариант отчета: сравнение прав нескольких выбранных ролей - т.е. показать только их различия?
для чего надо:
А то достаются в наследство конфигурации с кучей непонятных ролей, рожденных в процессе разработки / доработки / добавления подсистем и приходится склеивать некоторые роли.
Пользоваться для этого вариантом "Все роли" как-то не очень удобно. А так получил бы перечень различий, отработал по нему и лишнюю роль убил.
Или наоборот роли разъединять, чтобы понять, что все сделано правильно....
40. Rad90210 13 09.02.13 01:13 Сейчас в теме
Блин! а я вот не могу себя заставить зделать что -то для кого-то за так... Действительно крутая штука! Буду пользовать до дыр )) Еще раз спасибо.
41. lizard 15.02.13 17:04 Сейчас в теме
Спасибо.Очень наглядная и полезная обработка.
42. YuraLu 20.02.13 09:34 Сейчас в теме
Впечатлило. Нужнейшая вещь!!!
43. dayton78 20.02.13 10:49 Сейчас в теме
44. xpym-xpym 22.02.13 11:57 Сейчас в теме
Старая добрая вещь на старой работе пользовались теперь и на новой пригодится)))
45. Shilov 4 27.02.13 14:29 Сейчас в теме
Обработка корректно работает и в УПП 8.2 (на первый взгляд). Был бы ещё фильтр по использованным объектам метаданных (те справочники,документы, регистры, в которых есть хоть одна запись).
51. serge_focus 4 02.08.13 10:36 Сейчас в теме
Спасибо, обработка отличная!!

Поддерживаю (45) Был бы ещё фильтр по использованным объектам метаданных (те справочники,документы, регистры, в которых есть хоть одна запись).
Не смог найти как проанализировать какие регистры при этом доступны или отчеты/обработки, а так же общие формы.
46. Prozer 25.04.13 12:27 Сейчас в теме
БП 2.0 Выдает ошибку
{Форма.Форма.Форма(268)}: Поле объекта недоступно для записи (Пользователи)
Пользователи = ПользователиИнформационнойБазы.ПолучитьПользователей();
47. YVolohov 728 26.04.13 16:12 Сейчас в теме
(46) Нужно в отладчике посмотреть, что такое "Пользователи", какой у них тип.
48. bida 28 12.06.13 20:04 Сейчас в теме
(46) Prozer,
По кнопке "Кофигуратор" нужно нажать. Попадешь в конфигуратор на эту строчку. Далее надо переименовать "Пользователи", например в "Пользователии" и изменить на 2 строки ниже текст с "Для Каждого Пользователь Из Пользователи Цикл" на "Для Каждого Пользователь Из Пользователии Цикл". Всё заработает. Проблема была в том, что в БП 2.0 есть общий модуль "Пользователи" и 1с запуталась.
user665368_shakir.shirvanzade; ketr; ShinyButt; Nelfast; ArmstrongWorldIndastriz; Insanity; Zeskord; YVolohov; +8 Ответить
49. YVolohov 728 13.06.13 13:48 Сейчас в теме
(48) Резонное замечание, +500. Кстати, по идее локальная переменная должна иметь более высокий приоритет, чем модуль. И идентификатор в первую очередь должен быть сопоставлен именно с переменной. Но у 1с видимо своя логика.
50. koladen 16 14.07.13 21:50 Сейчас в теме
52. StepanZaytsev 15.08.13 09:59 Сейчас в теме
{Форма.Форма.Форма(268)}: Поле объекта недоступно для записи (Пользователи)
Пользователи = ПользователиИнформационнойБазы.ПолучитьПользователей();
64. ankr 19 18.04.16 21:26 Сейчас в теме
(52) shrekerererer,
На тему ошибки... Можно ничего не переименовывать,
просто в начале процедуры явно указать локальную переменную:
Перем Пользователи;
Все будет работать.
53. olezhe 20 24.10.13 09:29 Сейчас в теме
Волшебно. Скачал, запустил, выдал справку по правам начальнику. За 10 минут. Все довольны.
Плюсую.
54. Klesk666 16 26.12.13 22:03 Сейчас в теме
55. PASAHAKA 54 03.02.14 12:23 Сейчас в теме
Спасибо автору, это лучшее, что я видео по данной теме.
56. unichkin 07.08.14 16:08 Сейчас в теме
Большое спасибо) Хотелки:
1) фиксировать в результирующем таб. документе шапку
2) Если у всех подчиненных элементов группировки стоит галочка "V" - т.е. все доступно, то ставить ее у корня.
Это просто к слову, нет возможности доработать, и бог с ним. Просто мне кажется так было бы лучше)
57. mikele_bes 6 25.09.14 17:28 Сейчас в теме
ошибка валится
{Форма.Форма.Форма(268)}: Поле объекта недоступно для записи (Пользователи)
Пользователи = ПользователиИнформационнойБазы.ПолучитьПользователей();

переименовал "Пользователи" и все заработало
58. fostayn 19.01.15 11:01 Сейчас в теме
Спасибо!!!! Супер! очень помогло
59. nik-boss 05.02.15 08:19 Сейчас в теме
Спасибо огромное!!! Отчет на самом деле то, что нужно, очень детально и подробно!
60. Новиков 290 05.02.15 13:05 Сейчас в теме
Давным давно откуда то появился этот отчет, решил посмотреть кто его сделал - пришел сюда.

Если авто смотри комменты и хоть что-то еще планирует делать, добавлю хотелку:

при построении матрицы из закладки "Роли" необходим фильтр "показывать только установленные". Напр., строим матрицу по роли "Главный бухгалтер", показывается список из +100500 пользователей, у которых у 1-ого из них установлена эта галка. Хотелось бы, чтобы по фильтру "показывать только установленные" отображался в матрице только этот, единственный пользователь. Эту же хотелку, можно оттранслировать далее: если в любом столбике нет ни одной галочки - столбик не показывать. Если в любой строчке нет ни одной галки - строчку не выводить. Т.е. по максимуму скрыть пустоту.
61. Degtjarev 03.09.15 10:07 Сейчас в теме
Спасибо. Работает и в БП 3.0, если запустить в обычных формах
62. 20tanush 16.11.15 13:41 Сейчас в теме
63. jaroslav.h 09.03.16 19:00 Сейчас в теме
65. Necessitudo 21.09.16 10:45 Сейчас в теме
А у меня другая беда - пользователей больше чем 1024 - а в отчете "Анализ прав" на каждого пользователя создается колонка в таблице значений, а потом на основании этой таблицы строится запросом дерево - и SQL вылетает с ошибкой "Временная таблица не может иметь более 1024 колонок".
Я подпилил.

1) Процедура "ВыбратьДанныеДляОтчета" - перед запросом вставить вот такое:

//Превращаем таблицу значений в дерево значений!
	ДеревоВозврат = Новый ДеревоЗначений;
	Для Каждого КолонкаТЗ Из ТЗВозврат.Колонки Цикл
		ДеревоВозврат.Колонки.Добавить(КолонкаТЗ.Имя, КолонкаТЗ.ТипЗначения);	
	КонецЦикла;
	
	Для Каждого СтрокаТЗВозврат Из ТЗВозврат Цикл
			
		СтрокаДереваКоллекция =  ДеревоВозврат.Строки.Найти(СтрокаТЗВозврат.Коллекция, "Коллекция");
		Если СтрокаДереваКоллекция = Неопределено Тогда
			СтрокаДереваКоллекция = ДеревоВозврат.Строки.Добавить();
			СтрокаДереваКоллекция.Коллекция = СтрокаТЗВозврат.Коллекция;
		КонецЕсли;
		
		СтрокаДереваОбъектКоллекции =  СтрокаДереваКоллекция.Строки.Найти(СтрокаТЗВозврат.ОбъектКоллекции, "ОбъектКоллекции");
		Если СтрокаДереваОбъектКоллекции = Неопределено Тогда
			СтрокаДереваОбъектКоллекции = СтрокаДереваКоллекция.Строки.Добавить();
			
			СтрокаДереваОбъектКоллекции.Коллекция =  СтрокаДереваКоллекция.Коллекция;
			СтрокаДереваОбъектКоллекции.ОбъектКоллекции =  СтрокаТЗВозврат.ОбъектКоллекции;
			
		КонецЕсли;
		
		СтрокаДереваДетальныеЗаписи =  СтрокаДереваОбъектКоллекции.Строки.Добавить();	
		ЗаполнитьЗначенияСвойств(СтрокаДереваДетальныеЗаписи, СтрокаТЗВозврат);	
		
	КонецЦикла;
	
	Возврат ДеревоВозврат;
Показать


2) Процедура "ВывестиОтчет" - вместо старого обхода по коллекции вставить это -

// Обход по коллекциям
	Для Каждого мДанныеОтчета Из  пДанныеОтчета.Строки Цикл
		СтрокаКоллекция.Параметры.Заполнить(мДанныеОтчета);
		ЭлементыФормы.ПолеОтчета.Вывести(СтрокаКоллекция,1,,Истина);
		ПрисоединитьКолонкиСтроки(КоличествоКолонок,СтрокаКоллекцияКолонка,ЭлементыФормы.ПолеОтчета);
		
		// Обход по объектам
		Для Каждого ВыборкаПоОбъектам Из  мДанныеОтчета.Строки Цикл

			Расшифровка = ПолучитьРасшифровку(ВыборкаПоОбъектам.Коллекция,ВыборкаПоОбъектам.ОбъектКоллекции);
			СтрокаОбъект.Параметры.Заполнить(ВыборкаПоОбъектам);
			СтрокаОбъект.Параметры.Расшифровка = Расшифровка;
			ЭлементыФормы.ПолеОтчета.Вывести(СтрокаОбъект,2,,Ложь);
			Для Счетчик = 1 По КоличествоКолонок Цикл
				СтрокаОбъектКолонка.Параметры.Расшифровка = Расшифровка;				
				ЭлементыФормы.ПолеОтчета.Присоединить(СтрокаОбъектКолонка);
			КонецЦикла;		
			
			// Обход по правам
			Для Каждого  ВыборкаПоПравам Из ВыборкаПоОбъектам.Строки Цикл
				СтрокаПраво.Параметры.Заполнить(ВыборкаПоПравам);
				ЭлементыФормы.ПолеОтчета.Вывести(СтрокаПраво,3,,Ложь);
				Для Счетчик = 1 По КоличествоКолонок Цикл
					СтрокаПравоКолонка.Параметры.Пометка = ВыборкаПоПравам.Получить(Счетчик + 2);
					ЭлементыФормы.ПолеОтчета.Присоединить(СтрокаПравоКолонка);
				КонецЦикла;				
			КонецЦикла;
		КонецЦикла;		
	КонецЦикла;
Показать
66. tmm1970 06.10.16 08:50 Сейчас в теме
Добрый день.
В 1С 8.2. УПП хочу вывести Анализ прав пользователей, выбираю метаданные - Справочники, нажимаю Выполнить. Выходит ошибка {Форма.Форма.Форма(798)}: Ошибка при вызове метода контекста (Добавить)
ТЗВозврат.Колонки.Добавить("К_" + Строка(Счетчик),ОТБ);
по причине:
Неверное имя колонки
В чем может быть причина?
Прикрепленные файлы:
67. tmm1970 06.10.16 09:49 Сейчас в теме
Разобралась, извините. Спасибо. Очень помогло.
68. Muhin555 11 17.05.17 18:10 Сейчас в теме
Можно еще "допилить" сравнение ролей и прав доступа между двумя базами по OLE. Очень бы упростило жизнь тем, у кого несколько одинаковых баз.

P.S. А еще в свете проверки "сквозного" доступа платформы 8.3 сделать проверку доступа к подчиненным ссылкам регистров. Т.е. когда делаешь например отчет по долгам из регистра накопления "ВзаиморасчетыСКонтрагентами" при отсутствии права "Просмотр" у одного из регистраторов (к примеру "АвансовыйОтчет") невозможно будет получить в СКД поле "ДокументСсылка.ЗаказПокупателя.Дата" измерения "Сделка" ..... Хорошо бы было сделать такой анализ "недоступности" по ролям.
69. fixin 3776 13.07.17 14:33 Сейчас в теме
не могу ничего сказать, т.к. не для УФ.
70. VladC# 62 25.07.17 08:28 Сейчас в теме
При попытке открыть обработку в УТ 10.3:
{ВнешняяОбработка.АнализПравПользователей.Форма.Форма.Форма(268)}: Поле объекта недоступно для записи (Пользователи)
Пользователи = ПользователиИнформационнойБазы.ПолучитьПользователей();
71. kare 21 25.07.17 08:53 Сейчас в теме
(70)Решение есть в комментариях. Необходимо "Пользователи = "переделать к примеру в "перемПользователи = ". см Комментарий № 48
72. loginovvn 09.09.17 18:51 Сейчас в теме
есть еще добрые люди! матрица получилась монстровая - но все таки ее можно анализировать! а для анализа расхождений в настройках прав - самое и то!
73. bogdan_sukonnov 58 26.10.18 13:46 Сейчас в теме
Для меня главный минус даже не обычное приложение, а то, что не умеет показывать только те роли, которые дают права. Список всех ролей, где надо высматривать стоят ли галки - немного не то, что мне нужно
Оставьте свое сообщение