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