Как сделать роли в 1с

Обновлено: 04.07.2024

Вопрос о настройке прав доступа в программах 1С возникает в двух случаях:

  • руководству компании требуется ограничить пользователя в правах;
  • руководству необходимо расширить права для пользователя.

Права пользователя в 1С

Скажем несколько слов о правах пользователей. Что означает ограничение прав доступа? В разрезе программных продуктов 1С, это запрет на совершение действий с какими-либо файлами и объектами. Например, можно закрыть пользователю доступ для изменения документа, копирования и даже просмотра. Соответственно, расширить права доступа означает дать разрешение на просмотр, изменение документа, копирование, сохранение и т.д.



Пошаговая настройка прав доступа в 1С

Шаг №1. Настройка пользователей и прав


Если Вы делаете настройку прав своей 1С впервые, рекомендуем оставить бесплатную заявку в поддержку по 1С через сервис Бит.Личный кабинет. Вам перезвонит консультант по 1С и поможет.

Шаг № 2. Пользователи




Важно! Вы сможете управлять данными списками и вносить изменения только в том случае, если сами имеете права администратора.


Шаг № 3. Роли для группы

Итак, в нашей программе пользователи входят в группы с разрешенным доступом. Например, можно создать группу бухгалтеров, администраторов, кассиров, логистов и т.д. Отметим, что один и то же пользователь может относиться к нескольким разным группам. У каждой из групп прописываются роли.


Что такое роль? Это метаданные. От конфигурации вашей 1С будет зависеть, сколько их и какие они. Обычно их довольно много, поэтому важно не запутаться. Ведь вы можете назначить только одну лишнюю роль, а пользователю уже откроется доступ ко многим действиям.


Роли могут быть базовыми, которые позволяют только просматривать документ. Могут быть специальными, когда открывается доступ для редактирования.

Шаг № 4. Профиль групп доступа



Шаг № 5. Ограничение на уровне записей


Для чего необходима эта функция? Это дополнительные условия, которые могут поставить ограничения на конкретный объект в базе данных. Очень удобно, если нужно закрыть доступ к файлу отдельного пользователя или группы. При этом программа предупредит, что данные настройки могут замедлить работу системы.

Почему? В этом случае система 1С каждый раз будет запрашивать информацию о том, разрешено ли пользователю просматривать какой-то файл.

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


Шаг № 6. Новые роли

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


Разграничить права в новой роли можно путем выставления необходимых флажков напротив нужного вам права.


Задать ограничение можно в правом нижнем углу. Здесь работает механизм настройки прав доступа по отношению к конкретным данным.

К примеру, вы можете ограничить изменение документа только по одной организации.

Используйте конструктор ограничений доступа. Он поможет выбрать необходимые условия для доступа. Кроме того, программа предложит вас шаблоны ограничений, которые останется только выбрать и добавить.


Примечание: для создания новых ролей в режиме Конфигуратора необходимо включить возможность изменения конфигурации.

Другие настройки 1С

Итак, вы настроили все права доступа в 1С, какие требовалось. Что же еще предлагает система?

Обратите внимание на следующие разделы:


Их названия говорят сами за себя. Эти настройки относятся к внешнему виду отчетов программы.



Разработчики 1С позаботились о том, чтобы предоставить пользователям широкие возможности для администрирования прав доступа. Инструменты могут показаться непростыми. Но это только сначала. Используйте наши рекомендации и инструкцию, и тогда в вашей компании не возникнет трудностей с настройкой прав доступа пользователей к тем или иным объектам.

Обратите внимание на то, чтобы у вас был действующий договор 1С:ИТС. Только в этом случае вы сможете пользоваться самыми актуальными данными и документами в системе 1С. Позвоните нашим специалистам и узнайте о сроке вашего договора 1С:ИТС.

Для того чтобы разграничить права доступа, в 1С 8.3 существуют специальные объекты конфигурации – роли. В дальнейшем они могут назначаться конкретным пользователям, должностям и т. п. В них указывается, какие объекты конфигурации будут доступны. Так же есть возможность прописать условия предоставления доступа.

Права доступа в 1С на примере Бухгалтерии

права доступа

список ролей в профиле доступа

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

Роли в конфигураторе (для программистов)


На первой вкладке отображается список объектов конфигурации и назначенные для данной роли права на них.

Получите понятные самоучители по 1С бесплатно:

настройки роли

При разрешении совершения каких-либо действий с объектом, есть возможность указать ограничение доступа к данным. Данный механизм называется RLS и позволяет настроить права на уровне записей. Он достаточно интересный, но при активном его использовании может снизиться производительность.

РЛС

В нижней части формы роли можно настроить автоматическую установку прав:

  • для новых объектов (разрешающие права);
  • на реквизиты и табличные части (права наследуются от объекта – владельца)
  • на подчиненные объекты (права назначаются с учетом прав на родительские объекты).

просмотр журнала регистрации

права на интерактивное удаление

Программная проверка прав доступа

Для проверки доступности у пользователя какой-либо роли служит следующая функция:

Для того чтобы выполнить какие-либо действия с объектом, к которому нет доступа, можно воспользоваться следующим методом:

Пользовательский интерфейс при отсутствии прав доступа

При попытке пользователя совершить какое-либо действие в программе, но которое у него нет прав будет выдано соответствующее предупреждение.

нарушения прав доступа

По умолчанию функционал расширения доступен всем пользователям 1С 8.3. Но в некоторых случаях появляется необходимость разрешить пользоваться функционалом только ограниченному числу пользователей. В этом случае Вам нужно добавить дополнительную роль в расширение конфигурации (по умолчанию при создании расширения она сразу добавляется). Далее в этой статье описывается принцип добавление ролей в конфигурациях на основе БСП (Библиотеки стандартных подсистем).


В 1С:Предприятии Вы сможете назначить эту роль только пользователям с неадминистративными ролями. Для пользователей-администраторов нужно в расширение заимствовать роль ПолныеПрава.


Таким образом, новая роль будет содержать в себе возможности для всех рядовых пользователей, а для администраторов возможности мы прописываем в роли ПолныеПрава.

Роль — это объект метаданных, предназначенный для описания набора разрешенных действий (прав). Каждому пользователю прикладного решения может быть назначена одна или несколько ролей. Пользователь будет иметь право на объект, если хотя бы одна из назначенных ему ролей предоставляет право на этот объект. При попытке получить доступ к объекту, на который у пользователя нет прав, выдается ошибка:

Окно ошибки при нарушении прав доступа в 1С

В ролях можно управлять доступом не только на уровне объектов метаданных, но и на уровне объектов базы данных. Например, можно указать, что пользователю с определенной ролью разрешено изменять справочник Номенклатура, но только те его элементы, которые не помечены на удаление. Этот механизм называется RLS — Row Level Security (ограничение доступа на уровне записей).

Привилегированный режим работы

В системе есть возможность временно отключить проверку прав доступа. Такой режим называется привилегированным. В привилегированном режиме разрешены любые операции с базой и не производится контроль RLS.

Включение привилегированного режима осуществляется методом

Если вызвать метод УстановитьПривилегированныйРежим (Ложь) большее количество раз, чем УстановитьПривилегированныйРежим (Истина) , то будет вызвано исключение.

Получить текущее значение привилегированного режима можно функцией

которая возвращает значение типа Булево.

Безопасный режим работы

В безопасном режиме:

  • привилегированный режим отменяется, а попытка перехода в привилегированный режим игнорируется;
  • запрещено использование внешних средств по отношению к 1С (доступ к файловой системе, доступ к интернету, загрузка внешних компонент, механизмы COM).

Включение безопасного режима осуществляется методом

Если вызвать метод УстановитьБезопасныйРежим (Ложь) большее количество раз, чем УстановитьБезопасныйРежим (Истина) , то будет вызвано исключение.

Получить текущее значение безопасного режима можно функцией

которая возвращает значение типа Булево.

Программная работа с Ролями

Для проверки доступности Роли текущему пользователю:

Для определения права доступа (чтение, изменение и т.д.) к объекту метаданных:

Для проверки прав доступа текущего пользователя на объект метаданных:

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

Для получение информации о праве доступа на определенный объект метаданных для пользователя или роли с учетом указанных полей:

Для получения представления права по имени:

Программная работа с Ролями в БСП

В типовых конфигурациях, построенных на Библиотеке стандартных подсистем, в общих модулях есть методы для работы с ролями. Вот некоторые из них:

Пользователи . РолиДоступны ( ИменаРолей , Пользователь = Неопределено, УчитыватьПривилегированныйРежим = Истина)
Пользователи . ЭтоПолноправныйПользователь ( Пользователь = Неопределено, ПроверятьПраваАдминистрированияСистемы = Ложь, УчитыватьПривилегированныйРежим = Истина)
УправлениеДоступом . ЕстьРоль (Знач Роль , Знач СсылкаНаОбъект = Неопределено, Знач Пользователь = Неопределено)
УправлениеДоступом . ЕстьПраво ( Право , СсылкаНаОбъект , Пользователь = Неопределено)
УправлениеДоступом . ЧтениеРазрешено ( ОписаниеДанных )
УправлениеДоступом . ИзменениеРазрешено ( ОписаниеДанных )
УправлениеДоступом . ОграничиватьДоступНаУровнеЗаписей ()
УправлениеДоступом . ПраваПоИдентификаторам ( Идентификаторы = Неопределено)

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

Остались вопросы?
Спросите в комментариях к статье.

Читайте также: