Права доступа — различия между версиями
Tyoma (обсуждение | вклад) (→Логика проверки доступа) |
Tyoma (обсуждение | вклад) (→Логика проверки доступа) |
||
Строка 43: | Строка 43: | ||
{{indent}}Для получения разрешения или запрета на определеное действие пользователя над ресурсом, система производит довольно сложный иерархический поиск. Сперва происходит поиск правила, заданного непосредственно для данного пользователя и данного ресурса. В случае если такое правило найдено и оно явным образом определяет разрешение на доступ, поиск прекращается и пользователю будет предоставлено разрешение или запрет в рамках этого правила. В случае же если такое правило найдено не было, система попытается найти правило заданного для родительской группы пользователя и данного ресурса, и т.д. вверх по ирерахии групп до тех пор пока какое либо из правил явно не определит разрешение на доступ. | {{indent}}Для получения разрешения или запрета на определеное действие пользователя над ресурсом, система производит довольно сложный иерархический поиск. Сперва происходит поиск правила, заданного непосредственно для данного пользователя и данного ресурса. В случае если такое правило найдено и оно явным образом определяет разрешение на доступ, поиск прекращается и пользователю будет предоставлено разрешение или запрет в рамках этого правила. В случае же если такое правило найдено не было, система попытается найти правило заданного для родительской группы пользователя и данного ресурса, и т.д. вверх по ирерахии групп до тех пор пока какое либо из правил явно не определит разрешение на доступ. | ||
<br><br> | <br><br> | ||
− | {{indent}}В силу того, что пользователь может входить сразу в несколько групп, иерерхическая проверка будет производиться начиная с каждой из групп, в которые входит пользователь. Если | + | {{indent}}В силу того, что пользователь может входить сразу в несколько групп, иерерхическая проверка будет производиться начиная с каждой из групп, в которые входит пользователь. Если в рамках хотябы одной из них было найдено правило, разрешающее действие над этим объектом, поиск прекращается и пользователю предоставляется право на это действие. Очень важно знать, что пользователю будет отказано в доступе лишь в том случае, если проверка в рамках абсолютно всех групп, в которые входит пользователь, явно определят запрет на это действие. В противом же случае, разрешение будет иметь неопределенное значение. |
+ | <br><br> | ||
+ | {{indent}}Если при поиске разрешения или запрета на действие не было найдено ни одного правила, однозначно определеющего доступ к данному ресурсу, для пользователя будет опредено неопределенное значение разрешения. Если такое имеет место, система произведет попытку поиска правил для родительского ресурса. |
Версия 12:02, 17 июля 2012
Содержание |
Права доступа
Для каждого пользователя в Mid Office Manager имеется возможность настраивать права доступа к различным ресурсам. Это позволяет, ограничить доступ пользователя к определенным элементам программы и предотвратить возможность совешения нежелательных действия над данными. Иначе говоря, права доступа пользователей к данным можно разделять в рамках действий, которые находятся в их компетенции.
Система прав доступа в Mid Office Manager реализована в виде расширенного Access Control List или ACL — списка контроля доступа, который определяет, кто и при каких усовиях может получать доступ к конкретному ресурсу, и какие именно операции разрешено или запрещено этому субъекту проводить над ресурсом.
Основные положения
Система прав доступа состоит из следующих частей:
- Пользователи и группы
- Ресурсы
- Правила
Пользователи и группы
Субъектом любых действий в Mid Office Manager является пользователь. Для каждого пользователя можно настраивать уникальные права доступа. Зачастую, бизнес-процесс требует настройки одних и тех же прав для определеного круга пользователей. В данном случае удобно будет объединить этих пользователей в общую группу и предоставить права доступа не каждому из пользователей индивидуально, а группе. Система прав доступа позволяет создавать любое количество пользователей и групп.
Пользователи и группы представлены в виде иерархической структуры. Каждый пользоватлеь является членом определенной группы. Группа, в свою очередь, также может входить в другую группу и т.д. В основе иерархии лежит специальная группа «Все группы и пользователи». Важно знать, что один и тот же пользователь может входить сразу в несколько групп. Группа, в свою очередь, может иметь лишь одну родительскую группу.
Ресурсы
Объектом любых действий в Mid Office Manager является ресурс. В качестве ресурса могут выступать самые разнообразыне элементы системы. При этом, ресурсы различаются по типам:
- Список
- Справочник
- Объект
- Группа
Ресурс типа Группа играет специальную роль, позволяя объединять несколько ресурсов в группы. Также он может использоваться как индивиуальный ресурс, отвечая за специализированые элементы системы |
По аналогии с пользователями и группами, ресусы также представлены в виде иерархической структуры. Каждый ресурс имеет свой родительский ресурс. Во главе иерархии находится специальная группа «Все ресурсы».
Правила
При попытке совершения пользователем какого-либо действия над определенным ресурсом, система должна принять решение, разрешить ли это действие пользователю или нет. Решение принимается на основе правил. Правило содержит список действий и соответствующие им разрешения. Каждый ресурс предоставляет свой униклаьный набор действий. В зависимости от типа ресурса, правило может также содержать условия, критерии отбора и запрещенные поля.
Для ресурса типа Список, указание действий является опциональным |
Логика проверки доступа
Для получения разрешения или запрета на определеное действие пользователя над ресурсом, система производит довольно сложный иерархический поиск. Сперва происходит поиск правила, заданного непосредственно для данного пользователя и данного ресурса. В случае если такое правило найдено и оно явным образом определяет разрешение на доступ, поиск прекращается и пользователю будет предоставлено разрешение или запрет в рамках этого правила. В случае же если такое правило найдено не было, система попытается найти правило заданного для родительской группы пользователя и данного ресурса, и т.д. вверх по ирерахии групп до тех пор пока какое либо из правил явно не определит разрешение на доступ.
В силу того, что пользователь может входить сразу в несколько групп, иерерхическая проверка будет производиться начиная с каждой из групп, в которые входит пользователь. Если в рамках хотябы одной из них было найдено правило, разрешающее действие над этим объектом, поиск прекращается и пользователю предоставляется право на это действие. Очень важно знать, что пользователю будет отказано в доступе лишь в том случае, если проверка в рамках абсолютно всех групп, в которые входит пользователь, явно определят запрет на это действие. В противом же случае, разрешение будет иметь неопределенное значение.
Если при поиске разрешения или запрета на действие не было найдено ни одного правила, однозначно определеющего доступ к данному ресурсу, для пользователя будет опредено неопределенное значение разрешения. Если такое имеет место, система произведет попытку поиска правил для родительского ресурса.