|
Создание пользователей программно от пользователя с ограниченными правами. | ☑ | ||
---|---|---|---|---|
0
antgrom
12.12.12
✎
22:16
|
v8.2
Розница Код должен выполняться и в СКЛьном и в файловом варианте. Есть пользователь с ограниченными правами. Предполагается , что у него не прав редактировать список пользователей в Конфигураторе , но есть право обновление конфы. Это пользователь с ролью "Менеджер магазина" Надо чтобы этот пользователь имел возможность создавать других пользователей информационной базы с таким же правом "Менеджер магазина". // создаем пользователя инф базы , присваиваем ему всякие имя , языки , роли и записываем ПользовательИБ.Записать(); // тут ошибка. // хорошо , выносим запись в общий модуль "привилегированный" ПолныеПрава.ЗаписьПользователяИБ(ПользовательИБ); // и тут снова ошибка Куда вынести код записи пользователя инф базы , чтоб записать его ? |
|||
1
PR
12.12.12
✎
22:19
|
А че бы не почитать в документации, что для создания прав нужно обладать админскими правами?
|
|||
2
rad-scorpion
13.12.12
✎
00:27
|
Попробуй вынести код в процедуру в привилегированном общем модуле.
|
|||
3
rad-scorpion
13.12.12
✎
00:29
|
Тьху, не дочитал :)
|
|||
4
antgrom
13.12.12
✎
01:30
|
(1) Не совсем понял про "создание прав"
Я не создаю права. Я беру элемент справочника Пользователи и для него создаю "пользователя информационной базы". И этому "пользователю информационной базы" хочу назначить какие-то уже существующие роли. И сделать это от имени пользователя с ограниченными правами. |
|||
5
mehfk
13.12.12
✎
03:35
|
(0) Подключись из этой базы к этой же базе по OLE, сделай свое черное дело и отключись.
|
|||
6
antgrom
13.12.12
✎
09:15
|
(5) Я конечно и сам поищу , но если есть примеры - кинь ссылку )
|
|||
7
antgrom
13.12.12
✎
11:32
|
(5) Подумал про OLE , COM и т.п.
Это не так надежно и универсально. У меня РИБ там у файловых баз разные пути , разные пользователи. В определенной базе может и не оказаться "пользователя инф базы" с полными правами. Хотелось бы разобраться с возможностями записи пользователя в общих модулях. Это мне кажется оптимальным решением. |
|||
8
PR
13.12.12
✎
11:41
|
(4) Да пипец, вот же ты ленивый.
Прочитай уже в доке, что для создания пользователей и еще ряда вещей нужно чтобы ты был в базе под пользователем с правом "Администрирование"? |
|||
9
antgrom
13.12.12
✎
12:28
|
(8) Это я читал. Я ищу способ обойти это право.
|
|||
10
Defender aka LINN
13.12.12
✎
12:30
|
(9) Дома ты, видимо, входную дверь тоже подолгу ищешь...
|
|||
11
antgrom
13.12.12
✎
12:33
|
(10) А по теме слабо написать ?
|
|||
12
Defender aka LINN
13.12.12
✎
12:43
|
(11) По теме тебе давно написали. Кто ж тебе виноват, если ты слепой.
|
|||
13
zva
13.12.12
✎
12:59
|
Цитато из ИТС:
Иногда возникает необходимость предоставить возможность редактирования списка пользователей информационной базы пользователю, не имеющему административных прав. Например, старший менеджер должен иметь возможность создавать новых пользователей с ролями менеджеров или изменять состав ролей существующих пользователей, являющихся менеджерами. При этом необходимо обеспечить отсутствие у старшего менеджера административных прав на действия с информационной базой (например, загрузка/выгрузка информационной базы). Для решения этой задачи можно воспользоваться возможностью программного доступа к списку пользователей информационной базы, которую предоставляет объект МенеджерПользователейИнформационнойБазы. Этот объект доступен через свойство глобального контекста ПользователиИнформационнойБазы. Создание нового пользователя может быть выполнено методом СоздатьПользователя() на клиенте, даже если текущий пользователь не обладает административными правами. На клиенте же могут быть установлены необходимые свойства нового пользователя. Для того, чтобы выполнить запись нового пользователя, сформированный на клиенте объект ПользовательИнформационнойБазы нужно передать на сервер и в привилегированном модуле (без проверки прав) выполнить запись нового пользователя. В демонстрационную конфигурацию "Примеры ИТС" включена обработка "НовыйПользователь", которая реализует описанную механику. Необходимо запустить 1С:Предприятие от имени пользователя "Менеджер" (не имеющего административных прав) и открыть обработку "Новый пользователь", которая позволит создать нового пользователя информационной базы и установить любые свойства нового пользователя, за исключением роли "Администратор". |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |