Права доступа — различия между версиями

Материал из Mid Office Manager Help
Перейти к: навигация, поиск
(Приоритеты правил)
(Приоритеты правил)
Строка 269: Строка 269:
 
|}
 
|}
 
<br>
 
<br>
{{indent}}Исходя из значений реквизитов заказов, видно, что для заказа {{qt|Заказ №01}} должен будет начислен сбор в размере 60 рублей, для билета {{qt|Авиабилет №02}} - сбор в размере  135 рублей, и, соответственно, сбор в размере 210 рублей для билета {{qt|Авиабилет №03}}. Попробуем {{qw|применить}} договор с указаными выше правилами к билетам. Вопреки ожиданиям, для каждого билета в результате будет начислен сбор в размере 60 рублей.
+
{{indent}}Исходя из значений реквизитов заказов, видно, что для заказа {{qt|Заказ №01}} просмотр запрещен, а для заказа {{qt|Заказ №02}} - разрешен. Однако, вопреки ожиданиям, для обоих заказов просмотр будет разрешен. Попытаемся разобраться почему такая ситуация имеет место. Для этого проследим поэтапно как происходит проверка условий. Каждый из двух билетов проходит последовательную проверку у всех правил в порядке их следования в списке. Первое правило  имеет одно единственное условие: заказ должен содержать агентство {{qt|Airesine Inc}}. Очевидно, что оба заказа успешно пройдут проверку на это условие, и, как следствие, для обоих заказов будет определено разрешение на операцию {{qt|Просмотр}}. Дальнейшие проверки заказов на соответствие другим правилам произволдиться не будут.
 
<br><br>  
 
<br><br>  
 
{{indent}}Как видно из примера выше, правила накладывают ограничения на доступ к ресурсу {{qt|Заказ}}. При этом, в двух первых правилах, ограничения касаются одних и тех же операций {{qt|Редактирование}} и {{qt|Просмотр}}, но с разными условиями. При поиске разрешений, система прав доступа будет проверять правила, в том порядке, в котором они следуют в списке. Если одно из правил явным образом определяет тип разрешения, то проверка дальнейших правил из списка производиться не будет.
 
{{indent}}Как видно из примера выше, правила накладывают ограничения на доступ к ресурсу {{qt|Заказ}}. При этом, в двух первых правилах, ограничения касаются одних и тех же операций {{qt|Редактирование}} и {{qt|Просмотр}}, но с разными условиями. При поиске разрешений, система прав доступа будет проверять правила, в том порядке, в котором они следуют в списке. Если одно из правил явным образом определяет тип разрешения, то проверка дальнейших правил из списка производиться не будет.
 
<br><br>
 
<br><br>

Версия 14:33, 19 июля 2012

Содержание

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


Indent transparent.png Для каждого пользователя в Mid Office Manager имеется возможность настраивать права доступа к различным ресурсам. Это позволяет, ограничить доступ пользователя к определенным элементам программы и предотвратить возможность совешения нежелательных операций с данными. Иначе говоря, права доступа пользователей к данным можно разделять в рамках операций, которые находятся в их компетенции.

Indent transparent.png Система прав доступа в Mid Office Manager реализована в виде расширенного Access Control List или ACL — списка контроля доступа, который определяет, кто и при каких усовиях может получать доступ к конкретному ресурсу, и какие именно операции разрешено или запрещено этому субъекту проводить над ресурсом.

Основные положения


Indent transparent.png Система прав доступа состоит из следующих частей:

  • Пользователи и группы
  • Ресурсы
  • Правила


Пользователи и группы


Indent transparent.png Субъектом любых операций в Mid Office Manager является пользователь. Для каждого пользователя можно настраивать уникальные права доступа. Зачастую, бизнес-процесс требует настройки одних и тех же прав для определеного круга пользователей. В данном случае удобно будет объединить этих пользователей в общую группу и предоставить права доступа не каждому из пользователей индивидуально, а группе. Система прав доступа позволяет создавать любое количество пользователей и групп.

Indent transparent.png Пользователи и группы представлены в виде иерархической структуры. Каждый пользоватлеь является членом определенной группы. Группа, в свою очередь, также может входить в другую группу и т.д. В основе иерархии лежит специальная группа «Все группы и пользователи». Важно знать, что один и тот же пользователь может входить сразу в несколько групп. Группа, в свою очередь, может иметь лишь одну родительскую группу.

Ресурсы


Indent transparent.png Объектом любых операций в Mid Office Manager является ресурс. В качестве ресурса могут выступать самые разнообразыне элементы системы. При этом, ресурсы различаются по типам:

  • Список
  • Справочник
  • Объект
  • Группа


Info.png Ресурс типа Группа играет специальную роль, позволяя объединять несколько ресурсов в группы. Также, он может использоваться как индивидуальный ресурс, отвечая за специализированые элементы системы


Indent transparent.png По аналогии с пользователями и группами, ресусы также представлены в виде иерархической структуры. Каждый ресурс имеет свой родительский ресурс. Во главе иерархии находится специальная группа «Все ресурсы».

Правила


Indent transparent.png При попытке совершения пользователем какой-либо операции над определенным ресурсом, система должна принять решение, разрешить ли эту операцию пользователю или нет. Решение принимается на основе правил. Правило содержит список операций и соответствующие им разрешения. Каждый ресурс предоставляет свой униклаьный набор операций. В зависимости от типа ресурса, правило может также содержать условия, критерии отбора и запрещенные поля.

Info.png Для ресурса типа Список, указание операций является опциональным


Логика проверки доступа


Indent transparent.png Для получения пользователем разрешения или запрета на определеную операцию над определенным ресурсом, система производит комплексный иерархический поиск. Первым делом происходит поиск правила, заданного непосредственно для данного пользователя и данного ресурса. В случае если такое правило найдено и оно явным образом определяет тип разрешения, поиск прекращается и пользователю будет предоставлено разрешение, указанное в рамках этого правила. В случае же если такое правило найдено не было, система попытается найти правило, заданное для родительской группы пользователя, и т.д. вверх по ирерархии групп до тех пор пока какое-либо из правил явно не определит тип разрешения на операцию.

Indent transparent.png В силу того, что пользователь может входить сразу в несколько групп, иерерхическая проверка будет производиться начиная с каждой из групп, в которую он входит. Если в рамках хотя бы одной из них было найдено правило, разрешающее операцию над этим ресурсом, поиск прекращается и пользователю предоставляется право на это операцию. Очень важно знать, что пользователю будет отказано в праве на эту операцию лишь в том случае, если проверка в рамках абсолютно всех групп, в которые входит пользователь, явно определят запрет на эту операцию. В противом же случае, разрешение примет так называемое неопределенное значение.

Indent transparent.png Если при описанном выше поиске не было найдено ни одного правила, однозначно определяющего тип разрешения, для пользователя назначается неопределенное значение разрешения. Если такая ситуация имеет место, система повторит весь цикл поиска с самого начала, но уже для родительского ресурса. Поиск будет продолжаться до тех пор, пока не будет найдено явное разрешение или запрет на операцию. Если же в результате поиска как по пользователям и группам, так и по ресурсам, явное разрешение или запрет найдено не было, пользователю в итоге будет предоставлено право на операцию над данным ресурсом.

Редактор прав доступа


Indent transparent.png Настройка прав доступа производится при помощи редактора прав доступа. При помощи редактора можно также создавать новых пользователей или группы, редактировать их и удалять. Для открытия редактора предназначена кнопка «Редактор прав доступа» расположеная в нижней части основного окна Mid Office Manager:

Кнопка «Редактор прав доступа»
Кнопка «Редактор прав доступа»


Indent transparent.png На экране при этом будет отображено диалоговое окно «Редактор прав доступа»:

Диалоговое окно «Редактор прав доступа»
Диалоговое окно «Редактор прав доступа»


Indent transparent.png В левой части окна расположены две древовидные структуры. Первая отражает иерархический список пользователей и групп, вторая - иерархический список ресурсов. Правая часть редактора предназначена для отображения списка правил. Для просмотра списка правил необходимо выбрать интересующего пользователя или группу в первом списке, а затем во втором списке указать ресурс:

Редактор прав доступа - Список правил
Редактор прав доступа - Список правил



Info.png Если для определенного пользователя или группы были настроены правила в рамках любого ресурса он будет выделен на списке жирным наклонным шрифтом. При выборе такого пользователя или группы, все ресурсы, для которых настроены правила, также выделяются жирным наклонным шрифтом. Это позволяет быстро оценить, для каких ресурсов у данного пользователя или группы уже настроены правила


Редактор правил


Indent transparent.png Для добавления нового правила или редактирования уже существующего предназначен редактор правил. Для каждого из типов ресурсов предусмотрен свой редактор с набором свойств присущих лишь данному ресурсу.

Редактор правил ресурса типа «Список»


Indent transparent.png При работе с правилами ресурса типа «Список» используется редактор правил списка:

Редактор прав доступа - Редактор правил списка
Редактор прав доступа - Редактор правил списка


Indent transparent.png Действия отвечают за настройку типов разрешений для различных операций. Для создания действия сперва необходимо на панели «Действия», в выпадающем списке указать операцию:

Редактор правил списка - Выбор операции
Редактор правил списка - Выбор операции


Indent transparent.png Далее, следует указать тип разрешения. Он выбирается из выпадающего списка, расположенного справа от списка операций:

Редактор правил списка - Выбор типа разрешения
Редактор правил списка - Выбор типа разрешения


Info.png В одном правиле можно указывать сразу несколько действий. Если возникла необходимость настройки единого типа разрешения для абсолютно всех операций, можно воспользоваться специальной операцией Все операции


Indent transparent.png Критерии отбора предназначены для настройки дополнительных ограничений, которые будут использоваться при формировании списка прежде чем он будет отображен пользователю. Данные критерии имеют более высокий приоритет, нежели критерии, которые были настроены при помощи редактора рабочей области. Для настройки критерия отбора сперва необходимо на панели «Критерии отбора», в выпадающем списке указать тип критерия:

Редактор правил списка - Выбор типа критерия отбора
Редактор правил списка - Выбор типа критерия отбора


Indent transparent.png Затем, необходимо указать категорию критерия отбора. Она выбирается из выпадающего списка, расположенного справа от списка типов критерия:

Редактор правил списка - Выбор категории критерия отбора
Редактор правил списка - Выбор категории критерия отбора


Indent transparent.png После этого, следует определить тип сравнения. Он выбирается из выпадающего списка, расположенного справа от списка категорий. Набор типов сравнения зависит от выбранной ранее категории критерия отбора:

Редактор правил списка - Выбор типа сравнения критерия отбора
Редактор правил списка - Выбор типа сравнения критерия отбора


Indent transparent.png Для завершения формирования критерия отбора, необходимо указать значение (или ряд значений), с которым будет производится сравнение. Значение определяется при помощи соответствующего редактора, расположенного в правой части панели. В зависимости от выбранных категории и типа сравнения, редакторы значений могут различаться.

Info.png Некоторые типы сравнения не требуют указания значений. В данном случае, в правой части панели редактор значений отображен не будет


Indent transparent.png Поля, также как и критерии отбора, используются при формировании списка. Итоговый список, который будет отображен пользователю, не будет содержать поля, указанные в списке «Запрещенные поля». Запрещенные поля имеют более высокий приоритет, нежели поля, которые были настроены при помощи редактора рабочей области. По-умолчанию, все поля, доступные для данного ресурса, являются разрешенными.

Indent transparent.png Для настройки запрещенных полей необходимо в списке «Разрешенные поля», выделить те поля, отображение которых нужно запретить Шаблон:Step и нажать кнопку переноса Шаблон:Step для перемещения их в список «Запрещенные поля»:

Редактор правил списка - Выбор запрещеных полей
Редактор правил списка - Выбор запрещеных полей


Indent transparent.png Для того, чтобы запрещенней ранее поля вновь сделать разрешенными, необходимо в списке «Запрещенные поля», выделить те поля, отображение которых нужно разрешить Шаблон:Step и нажать кнопку переноса Шаблон:Step для перемещения их в список «Разрешенные поля»:

Редактор правил списка - Выбор разрешенных полей
Редактор правил списка - Выбор разрешенных полей


Шаблон:Tool

Редактор правил ресурса типа «Справочник»


Indent transparent.png При работе с правилами ресурса типа «Справочник» используется редактор правил справочника:

Редактор прав доступа - Редактор правил справочника
Редактор прав доступа - Редактор правил справочника


Indent transparent.png Действия отвечают за настройку типов разрешений для различных операций. Для создания действия сперва необходимо на панели «Действия», в выпадающем списке указать операцию:

Редактор правил справочника - Выбор операции
Редактор правил справочника - Выбор операции


Indent transparent.png Далее, следует указать тип разрешения. Он выбирается из выпадающего списка, расположенного справа от списка операций:

Редактор правил справочника - Выбор типа разрешения
Редактор правил справочника - Выбор типа разрешения


Info.png В одном правиле можно указывать сразу несколько действий. Если возникла необходимость настройки единого типа разрешения для абсолютно всех операций, можно воспользоваться специальной операцией Все операции


Alert.png Для правил ресурса типа Справочник указание действий является обязательным. В противном случае, правило будет считаться недействительным


Редактор правил ресурса типа «Объект»


Indent transparent.png При работе с правилами ресурса типа «Объект» используется редактор правил объекта:

Редактор прав доступа - Редактор правил объекта
Редактор прав доступа - Редактор правил объекта


Indent transparent.png Действия отвечают за настройку типов разрешений для различных операций. Для создания действия сперва необходимо на панели «Действия», в выпадающем списке указать операцию:

Редактор правил объекта - Выбор операции
Редактор правил объекта - Выбор операции


Indent transparent.png Далее, следует указать тип разрешения. Он выбирается из выпадающего списка, расположенного справа от списка операций:

Редактор правил объекта - Выбор типа разрешения
Редактор правил объекта - Выбор типа разрешения


Info.png В одном правиле можно указывать сразу несколько действий. Если возникла необходимость настройки единого типа разрешения для абсолютно всех операций, можно воспользоваться специальной операцией Все операции


Indent transparent.png Условия предназначены для дополнительной проверки свойств объекта. Разрешения, указанные в правиле, будут применяться лишь в том случае, если объект успешно прошел проверку на соответствие всем указанным условиям. Если объект не прошел проверку, правило игнорируется и, соответственно, разрешения учтены не будут. Для настройки условия сперва необходимо на панели «Условия», в выпадающем списке указать тип условия:

Редактор правил объекта - Выбор типа условия
Редактор правил объекта - Выбор типа условия


Indent transparent.png Затем, необходимо указать объект, свойства которого будут использованы для сравнения. В силу того, что объект может быть иерархически связан с другими объектами, проверки можно настраивать не только собственных свойств, но и свойств связанных объектов. Объект выбирается из выпадающего списка, расположенного справа от списка типов условия:

Редактор правил объекта - Выбор объекта
Редактор правил объекта - Выбор объекта


Indent transparent.png Далее, необходимо указать категорию условия. Она выбирается из выпадающего списка, расположенного справа от списка объектов:

Редактор правил объекта - Выбор категории условия
Редактор правил объекта - Выбор категории условия


Indent transparent.png После этого, следует определить тип сравнения. Он выбирается из выпадающего списка, расположенного справа от списка категорий. Набор типов сравнения зависит от выбранной ранее категории условия:

Редактор правил объекта - Выбор типа сравнения условия
Редактор правил объекта - Выбор типа сравнения условия


Indent transparent.png Для завершения формирования условия, необходимо указать значение (или ряд значений), с которым будет производится сравнение. Значение определяется при помощи соответствующего редактора, расположенного в правой части панели. В зависимости от выбранных категории и типа сравнения, редакторы значений могут различаться.

Info.png Некоторые типы сравнения не требуют указания значений. В данном случае, в правой части панели редактор значений отображен не будет


Alert.png Для правил ресурса типа Объект указание действий является обязательным. В противном случае, правило будет считаться недействительным. Указание условий является опциональным


Редактор правил ресурса типа «Группа»


Indent transparent.png При работе с правилами ресурса типа «Группа» используется редактор правил группы:

Редактор прав доступа - Редактор правил группы
Редактор прав доступа - Редактор правил группы


Indent transparent.png Действия отвечают за настройку типов разрешений для различных операций. Для создания действия сперва необходимо на панели «Действия», в выпадающем списке указать операцию:

Редактор правил группы - Выбор операции
Редактор правил группы - Выбор операции


Indent transparent.png Далее, следует указать тип разрешения. Он выбирается из выпадающего списка, расположенного справа от списка операций:

Редактор правил группы - Выбор типа разрешения
Редактор правил группы - Выбор типа разрешения


Info.png В одном правиле можно указывать сразу несколько действий. Если возникла необходимость настройки единого типа разрешения для абсолютно всех операций, можно воспользоваться специальной операцией Все операции


Alert.png Для правил ресурса типа Группа указание действия является обязательным. В противном случае, правило будет считаться недействительным


Добавление правила


Indent transparent.png Для того, чтобы добавить новое правило, нужно сперва выбрать в списках необходимых пользователя или группу Шаблон:Step и ресурс Шаблон:Step, после чего, в правой части редактора будет отображена панель, содержащая список уже настроенных правил. Список может быть пустым, если для данного ресурса еще не настроено ни одного правила. Затем нажмите на кнопку «Добавить» Шаблон:Step, расположенную в нижней части панели правил:

Редактор прав доступа - Добавление нового правила
Редактор прав доступа - Добавление нового правила


Indent transparent.png После этого, на экране отобразиться диалоговое окно редактора правил. Произведите при помощи редактора настройку правила в соответствии с необходимыми требованиями. Если правило пустое или не содержит обязательных данных, будет выведено сообщение, и такое правило добавлено в список не будет:

Добавление правила - Сообщение о пустом правиле
Добавление правила - Сообщение о пустом правиле


Indent transparent.png В случае, если правило валидное, оно отобразиться в списке правил:

Редактор прав доступа - Новое правило
Редактор прав доступа - Новое правило


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


Indent transparent.png Для того, чтобы отредактировать уже существующее правило, нужно сперва выбрать в списках необходимых пользователя или группу Шаблон:Step и ресурс Шаблон:Step, после чего, в правой части редактора будет отображена панель, содержащая список уже настроенных правил. Выберите правило, которое необходимо отредактировать Шаблон:Step и нажмите на кнопку «Редактировать» Шаблон:Step, расположенную в нижней части панели правил:

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


Шаблон:Tool
Indent transparent.png После этого, на экране отобразиться диалоговое окно редактора правил с данными выбранного правила. Произведите при помощи изменения в соответствии с необходимыми требованиями. Если правило после изменений стало пустым или не содержит обязательных данных, будет выведено сообщение, с предложением удалить такое правила из списка:

Редактирование правила - Сообщение о пустом правиле
Редактирование правила - Сообщение о пустом правиле


Indent transparent.png В случае, если измененное правило валидное, оно отобразиться в списке правил:

Редактор прав доступа - Измененное правило
Редактор прав доступа - Измененное правило


Удаление правил


Indent transparent.png Для того, чтобы удалить правило, нужно сперва выбрать в списках необходимых пользователя или группу Шаблон:Step и ресурс Шаблон:Step, после чего, в правой части редактора будет отображена панель, содержащая список уже настроенных правил. Выберите правила, которые необходимо удалить Шаблон:Step и нажмите на кнопку «Удалить» Шаблон:Step, расположенную в нижней части панели правил:

Редактор прав доступа - Удаление правил
Редактор прав доступа - Удаление правил


Шаблон:Tool
Indent transparent.png На экране отобразиться диалоговое окно подтверждения:

Удаление правил - Подтверждение об удалении
Удаление правил - Подтверждение об удалении


Indent transparent.png Нажмите кнопку «Да», после чего выбранные правила будут удалены из списка:

Редактор прав доступа - Удаленные правила
Редактор прав доступа - Удаленные правила


Приоритеты правил


Indent transparent.png Для ресурсов типа «Объект» можно задавать более одного правила. Это необходимо для того, чтобы можно было задавать правила, разрешающие и запрещающие различные операции, но при разных условиях:

Редактор прав доступа - Несколько правил


Indent transparent.png Рассмотрим более подробно процесс определенеия разрешений для ресурса «Заказ». Предположим, что с целью разграничения разрешений, были сформированы следующие требования:

  • Если агентством является компания Airesine Inc операцию «Редактирование» запретить, операцию «Просмотр» разрешить
  • Если агентством является компания Airesine Inc и клиентом является компания WTP Investment Group операцию «Редактирование» запретить, операцию «Просмотр» запретить


Indent transparent.png Список правил для этого ресурса может выглядеть следующим образом:

Редактор прав доступа - Список правил с не корректными приоритетами
Редактор прав доступа - Список правил с не корректными приоритетами


Indent transparent.png В качестве примера будем пытаться определить тип разрешения на операцию «Просмотр» для двух разных заказов у которых среди прочих реквизитов, указаны следующие данные:

Реквизит заказа Заказ №01 Заказ №02
Агентство Airesine Inc Airesine Inc
Клиент WTP Investment Group Sliwork Foundation


Indent transparent.png Исходя из значений реквизитов заказов, видно, что для заказа «Заказ №01» просмотр запрещен, а для заказа «Заказ №02» - разрешен. Однако, вопреки ожиданиям, для обоих заказов просмотр будет разрешен. Попытаемся разобраться почему такая ситуация имеет место. Для этого проследим поэтапно как происходит проверка условий. Каждый из двух билетов проходит последовательную проверку у всех правил в порядке их следования в списке. Первое правило имеет одно единственное условие: заказ должен содержать агентство «Airesine Inc». Очевидно, что оба заказа успешно пройдут проверку на это условие, и, как следствие, для обоих заказов будет определено разрешение на операцию «Просмотр». Дальнейшие проверки заказов на соответствие другим правилам произволдиться не будут.

Indent transparent.png Как видно из примера выше, правила накладывают ограничения на доступ к ресурсу «Заказ». При этом, в двух первых правилах, ограничения касаются одних и тех же операций «Редактирование» и «Просмотр», но с разными условиями. При поиске разрешений, система прав доступа будет проверять правила, в том порядке, в котором они следуют в списке. Если одно из правил явным образом определяет тип разрешения, то проверка дальнейших правил из списка производиться не будет.

Личные инструменты
Пространства имён

Варианты
Действия
Навигация
Печать/экспорт
Инструменты