#std488¶
Стандартные роли¶
1.1.¶
Если в конфигурации есть разграничение прав доступа, настраивайте доступ только ролями.
Состав ролей определяйте от бизнес-задач, а не от технического удобства реализации.
1.2.¶
Роли можно строить двумя способами:
- по должностям (
Директор,Бухгалтер,Кладовщик); - по функциям с назначением комбинаций ролей.
Для функционального подхода поставляйте типовые комбинации ролей (профили доступа).
2.¶
В конфигурации должны быть обязательные роли:
ПолныеПрава;АдминистраторСистемы;ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок.
2.1.¶
ПолныеПрава (FullAccess) должна:
- назначаться пользователям как самостоятельная роль;
- давать неограниченный доступ к прикладным данным области;
- позволять прикладное администрирование (настройка программы, администрирование пользователей в области и т.п.);
- не включать интерактивное удаление (см. раздел 5).
Также роль должна включать следующие права:
-
Администрирование данных -
Активные пользователи -
Журнал регистрации -
Монопольный режим -
Тонкий клиент -
Веб-клиент -
Сохранение данных пользователя -
Вывод -
Интерактивное открытие внешних отчетов -
Интерактивное открытие внешних обработок
Назначение роли зависит от режима работы конфигурации:
- если конфигурация работает в модели сервиса, роль
ПолныеПраваназначайте администраторам абонентов (администраторам областей данных); - если конфигурация работает в локальном режиме, назначайте
ПолныеПраватолько вместе сАдминистраторСистемы, так как в этом режиме функции системного и прикладного администрирования обычно совмещены.
2.2.¶
АдминистраторСистемы (SystemAdministrator) — роль системного администрирования.
Она должна:
- назначаться только вместе с
ПолныеПрава; - давать доступ к системному администрированию информационной базы;
- предоставлять неограниченный доступ ко всем общим данным всех областей данных в модели сервиса;
- не включать интерактивное удаление (см. раздел 5).
По правам к корню конфигурации:
-
Администрирование -
Администрирование данных -
Интерактивное открытие внешних отчетов -
Интерактивное открытие внешних обработок
2.3.¶
ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок
дает право интерактивно открывать внешние отчеты и обработки.
-
Интерактивное открытие внешних отчетов -
Интерактивное открытие внешних обработок
Назначение роли зависит от режима работы конфигурации:
- в локальном режиме роль
ИнтерактивноеОткрытиеВнешнихОтчетовИОбработокназначайте администраторам, но при необходимости администратор может запретить ее использование для повышения безопасности информационной базы; - в модели сервиса роли
АдминистраторСистемы,ПолныеПраваиИнтерактивноеОткрытиеВнешнихОтчетовИОбработокназначаются администраторам сервиса.
2.4.¶
Роли ПолныеПрава, АдминистраторСистемы и
ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок
должны входить в свойство конфигурации ОсновныеРоли.
2.5.¶
Если нужно дать «неполноправным» пользователям право на удаление,
добавьте отдельную роль УдалениеПомеченныхОбъектов (DeleteMarkedObjects).
Такую роль используйте только совместно с другими ролями.
3.¶
Для общих прав работы с информационной базой используйте отдельные роли, которые назначаются в комбинации с прикладными ролями.
3.1.¶
Администрирование (Administration) предоставляет права:
-
Администрирование -
Администрирование данных -
Администрирование расширений конфигурации -
Активные пользователи
3.2.¶
ВыводНаПринтерФайлБуферОбмена (OutputToPrinterFileClipboard) предоставляет право:
-
Вывод
3.3.¶
ЗапускAutomation (StartAutomation) предоставляет право:
-
Automation
3.4.¶
ЗапускВебКлиента (StartWebClient) предоставляет право:
-
Веб-клиент
3.5.¶
ЗапускВнешнегоСоединения (StartExternalConnection) предоставляет право:
-
Внешнее соединение
3.6.¶
ЗапускТолстогоКлиента (StartThickClient) предоставляет право:
-
Толстый клиент
3.7.¶
ЗапускТонкогоКлиента (StartThinClient) предоставляет право:
-
Тонкий клиент
3.8.¶
ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок
предоставляет права:
-
Интерактивное открытие внешних обработок -
Интерактивное открытие внешних отчетов
3.9.¶
ОбновлениеКонфигурацииБазыДанных (UpdateDatabaseConfiguration)
предоставляет право:
-
Обновление конфигурации базы данных
3.10.¶
ПросмотрЖурналаРегистрации (ViewEventLog)
предоставляет право:
-
Журнал регистрации
3.11.¶
РежимТехническогоСпециалиста (TechnicalSpecialistMode)
предоставляет право:
-
Режим технического специалиста
Этот режим нужен только для разбора нештатных ситуаций. Пользователи должны работать корректно и без него: стандартные обработки (удаление помеченных, управление итогами и агрегатами и т.п.) должны быть доступны в интерфейсе по обычным ролям.
3.12.¶
СохранениеДанныхПользователя (SaveUserData)
предоставляет право:
-
Сохранение данных пользователя
Обычно эту роль назначают всем пользователям.
Исключения:
- нужно явно запретить любые персональные настройки, чтобы работа пользователя не оставляла следов в информационной базе;
- внешние или временные пользователи;
- пользователи, которые работают под общей учетной записью.
Конфигурация должна корректно работать и без права СохранениеДанныхПользователя.
Если код обращается к:
- пользовательским настройкам и хранилищам настроек
(
ХранилищеОбщихНастроек,ХранилищеВариантовОтчетов,ХранилищеНастроекДанныхФорм,ХранилищеПользовательскихНастроекОтчетов,ХранилищеСистемныхНастроек); - истории работы пользователя и избранному
(
ИсторияРаботыПользователя,ИзбранноеРаботыПользователя); - пользовательским настройкам отчетов
(метод
УстановитьТекущиеПользовательскиеНастройкирасширения управляемой формы отчета);
то при отсутствии права СохранениеДанныхПользователя этот код должен пропускаться
без влияния на основные сценарии работы пользователя.
Если в конфигурации есть отдельные элементы интерфейса для пользовательских настроек
(история вводимых значений, флажки Запомнить мой выбор и т.п.),
они не должны быть доступны пользователям без этого права.
Если используется БСП, для работы с общими настройками используйте функции
ХранилищеОбщихНастроекЗагрузить и ХранилищеОбщихНастроекСохранить
общего модуля ОбщегоНазначения.
4.1.¶
Если отдельным пользователям нужен временный или постоянный доступ на просмотр всех данных информационной базы без ограничений, поставляйте отдельные роли для такого сценария.
Типовые примеры:
- временный доступ для аудитора;
- постоянный доступ для собственника или директора.
4.2.¶
Если роли в конфигурации построены по должностям
(Директор, Бухгалтер, Кладовщик и т.п.),
добавьте отдельную роль ТолькоПросмотр (ViewOnly).
Роль ТолькоПросмотр должна включать:
-
Чтение -
Использование -
Просмотр -
Ввод по строке(если применимо)
Эти права задавайте для большинства объектов метаданных. Исключение: технологические данные, которые не показываются пользователю и всегда используются в привилегированном режиме.
4.3.¶
Если роли построены по отдельным функциям, назначайте пользователям комбинации ролей, которые дают доступ только на чтение.
Примеры функциональных ролей:
ЧтениеПроизводственныхДокументов;ЧтениеСкладскихДокументов;ЧтениеКассовыхДокументов.
В составе конфигурации поставляйте типовые комбинации таких ролей (например, готовые профили для аудитора, собственника, директора).
Если пользователю нужен неограниченный просмотр всех данных,
для него отключайте (не задавайте) условия ограничения доступа на уровне записей (RLS).
5.¶
Ни в одной роли, включая ПолныеПрава и АдминистраторСистемы,
не должны быть установлены следующие права
(кроме отдельных обоснованных случаев):
-
Интерактивное удаление -
Интерактивное удаление предопределенных данных -
Интерактивная пометка удаления предопределенных данных -
Интерактивное снятие пометки удаления предопределенных данных -
Интерактивное удаление помеченных предопределенных данных
Право Удаление рекомендуется оставлять только в ролях
ПолныеПрава и АдминистраторСистемы.
-
Удаление
Проверки¶
Стандартные роли в расширениях конфигурации¶
6.¶
При разработке расширений не рекомендуется заимствовать и изменять роли
АдминистраторСистемы и ПолныеПрава.
Добавляйте в расширение собственные роли по описанному ниже принципу.
6.1.¶
Если права на все объекты расширения одинаковые для всех категорий пользователей:
- создайте роль
<ПрефиксРасширения>ОбщиеПрава; - настройте в ней нужные права на объекты расширения;
- включите роль в
Основные ролирасширения.
6.2.¶
Если права на объекты расширения различаются для администратора и пользователей, создайте две роли:
<ПрефиксРасширения>ПолныеПрава(включается вОсновные ролирасширения);<ПрефиксРасширения>БазовыеПрава.
6.3.¶
Если права различаются для администратора, пользователей и внешних пользователей, создайте три роли:
<ПрефиксРасширения>ПолныеПрава(включается вОсновные ролирасширения);<ПрефиксРасширения>БазовыеПрава;<ПрефиксРасширения>БазовыеПраваВнешнихПользователей.
Подробнее про внешних пользователей см. в документации БСП.
6.4.1.¶
В конфигурациях на базе БСП роли из пп. 6.1-6.3 автоматически включаются в профили групп доступа при установке расширения:
- роль
<ПрефиксРасширения>ОбщиеПрававключается во все профили с ролямиБазовыеПраваБСП,БазовыеПраваВнешнихПользователейБСП,ПолныеПрава; - роль
<ПрефиксРасширения>БазовыеПрававключается в профили с рольюБазовыеПраваБСП; - роль
<ПрефиксРасширения>БазовыеПраваВнешнихПользователейвключается в профили с рольюБазовыеПраваВнешнихПользователейБСП; - роль
<ПрефиксРасширения>ПолныеПрававключается в профили с рольюПолныеПрава.
6.4.2.¶
Если в расширении нужна гибкая настройка прав доступа, дополнительно проектируйте и создавайте прикладные роли.
Такие роли автоматически в профили не включаются. Их можно:
- программно добавлять в поставляемые профили;
- интерактивно назначать в справочнике
Профили групп доступа.
6.5.¶
В конфигурациях без БСП (или без использования профилей) роли расширений из пп. 6.1-6.3 назначайте пользователям ИБ:
- программно средствами встроенного языка;
- интерактивно.
Так расширение можно единообразно подключать как в конфигурациях на БСП, так и в конфигурациях без БСП, без изменения состава ролей расширения.
См. также¶
- #std485: Использование привилегированного режима
- #std658: Эффективные условия запросов
- #std689: Настройка ролей и прав доступа
- #std669: Ограничение на выполнение внешнего кода
Проверки¶
#v8cs:right-active-users #v8cs:right-administration #v8cs:right-all-functions-mode #v8cs:right-configuration-extensions-administration #v8cs:right-data-administration #v8cs:right-exclusive-mode #v8cs:right-interactive-open-external-data-processors #v8cs:right-interactive-open-external-reports #v8cs:right-output-to-printer-file-clipboard #v8cs:right-save-user-data #v8cs:right-start-automation #v8cs:right-start-external-connection #v8cs:right-start-thick-client #v8cs:right-start-thin-client #v8cs:right-start-web-client #v8cs:right-update-database-configuration #v8cs:right-view-event-log
#acc:162 #acc:164 #acc:165 #acc:192 #acc:193 #acc:194 #acc:195 #acc:218 #acc:219 #acc:220 #acc:224 #acc:251 #acc:419 #acc:420 #acc:1046 #acc:1149 #acc:1150