helpf.pro
Регистрация
 0 
Распечатать

Как программно добавить пользователя в информационную базу?

При переносе данных из одной информационной базы в другую может возникнуть необходимость перенести и пользователей информационной базы. Для этого можно воспользоваться свойством глобального контекста ПользователиИнформационнойБазы

Добавление пользователя информационной базы
Код 1C v 8.х
 НовыйПользователь = ПользователиИнформационнойБазы.СоздатьПользователя();

НовыйПользователь.Имя = "Имя";
НовыйПользователь.ПолноеИмя = "Фамилия Имя Отчество";
НовыйПользователь.АутентификацияСтандартная = Истина;
НовыйПользователь.ОсновнойИнтерфейс = Метаданные.Интерфейсы.Администратор;
НовыйПользователь.Пароль = "пароль";
НовыйПользователь.Роли.Добавить(Метаданные.Роли.Администратор);
НовыйПользователь.ПоказыватьВСпискеВыбора = Ложь;
НовыйПользователь.Язык = Метаданные.Языки.Русский;

НовыйПользователь.Записать();


Следует отметить, что в свойство Пароль можно только записать новый пароль, прочитать записанный (определенный) ранее нет возможности.
Добавление новых пользователей в информационную базу может осуществлять пользователь, обладающий административными правами. Если административные права у пользователя отсутствуют, он может изменить только ограниченный набор сведений о себе.
Для того чтобы предоставить, например, менеджеру, не имеющему административных прав, возможность добавления новых пользователей с правами менеджера, можно поступить следующим образом.
Создать обработку, с помощью которой менеджер будет задавать имя, пароль, набор ролей и другие свойства нового пользователя. Однако запись нового пользователя выполнять не на клиенте, а на сервере, передав нового пользователя в качестве параметра в процедуру привилегированного модуля.

Вызов процедуры привилегированного модуля
Код 1C v 8.х
 ЗаписатьНовогоПользователя(НовыйПользователь);   


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

Текст процедуры привилегированного модуля
Код 1C v 8.х
 Процедура ЗаписатьНовогоПользователя(НовыйПользователь) Экспорт

// Проверить наличие роли Администратор у нового пользователя.
РольАдминистратор = Метаданные.Роли.Администратор;

Если НовыйПользователь.Роли.Содержит(РольАдминистратор) Тогда
Сообщить("Добавление пользователя с административными правами запрещено");

Иначе // у нового пользователя нет роли Администратор

// Проверить, что текущий пользователь обладает правами Менеджера или Администратора.
Если РольДоступна(РольАдминистратор) ИЛИ РольДоступна(Метаданные.Роли.Менеджер) Тогда

// Выполнить запись нового пользователя.
НовыйПользователь.Записать();

Иначе
Сообщить("Недостаточно прав доступа для добавления пользователя");

КонецЕсли;

КонецЕсли;

КонецПроцедуры

Если выполняется попытка добавить нового пользователя с административными правами, выдается запрет. Если набор ролей нового пользователя не содержит роль Администратор, проверяется, является ли текущий пользователь менеджером или администратором, и если это так, то выполняется запись нового пользователя. В противном случае выдается сообщение об отсутствии прав доступа.
Разместил:   Версии: | 8.x |  Дата:   Прочитано: 14060
 0 
Распечатать
Возможно, вас также заинтересует
1C: Enterprise Development Tools 35
И вот случилось долгожданное: Вышел 1C: Enterprise Development Tools - это среда для разработки конфигурации в IDE Eclipse. С сайта 1С: « 1C:Enterprise Development Tools » – это инструмент нового поколения для разработчиков бизнес-приложений систем
1С Предприятие что это? 6
Что такое 1С? 1С — это фирма , у которой одно из направлений деятельности — разработка программного обеспечения для автоматизации бизнес-процессов предприятий. « 1С:Предприятие » - конкретный продукт, который...
COM-подключение к базе 7.7 из 8.2 1С 4
Если код выполняется на стороне клиента, то необходимо наличие базы 7.7 на локальной машине. Пример (На форме объекта присутствует реквизит Таблица(ТаблицаЗначений)): НаКлиенте Процедура Загрузки() ПутьКБазе="...
Cодержимое указанного ниже веб-сайта в этом приложении блокируется... Aboutsecurity_1cv8c.exe 0
Проблема: После обновления на 1С:Бухгалтерию предприятия 3-й версии, при нажатии на закладку командного интерфейса 1С:предприятие, выскакивает ошибка: Aboutsecurity_1cv8c.exe или Aboutsecurity_1cv8.exe «Содержимое указанного ниже...
Excel файл как Внешний источник данных 4
Подключимся и загрузим из файла Excel данные в таблицу значений 1С. Сделать теперь это очень просто. 1. В конфигурации добавляет новый объект метаданных типа " Внешние источники данных" и назовем его просто " Excel" . ...
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.