Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
tags:security [15/12/2010 22:32] |
tags:security [29/10/2020 16:32] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== <security ... > ====== | ||
+ | |||
+ | ''Управление доступом пользователей. '' | ||
+ | ---- | ||
+ | ===== Синтаксис ===== | ||
+ | <file> | ||
+ | <security set="on|off" db-script="file_name" login-script="file_name"> | ||
+ | [{<right name="right_name" desc="description"/>}] | ||
+ | [{<acl-id name="acl_name" desc="description"/>}] | ||
+ | <security/> | ||
+ | </file> | ||
+ | ===== Атрибуты ===== | ||
+ | |||
+ | ==== Основные атрибуты (R/W): ==== | ||
+ | |||
+ | ^ Название ^ Тип ^ Описание ^ | ||
+ | | **set** | ''on | off'' |Включаем/отключаем систему управления доступом пользователей. Если система включена, то при запуске программы пользователю будет предложено авторизоваться в программе. По умолчанию, set="on".| | ||
+ | ===== Описание ===== | ||
+ | |||
+ | Тэг, отвечающий за систему управления доступом пользователя к данным программы. | ||
+ | |||
+ | Тэг <security> содержит два обязательных подтэга: | ||
+ | *<html><font color="blue">right</font></html> - право. Прав (т.е. тэгов <right>) может быть много. | ||
+ | *<html><font color="blue">acl-id</font></html> - сущность, доступ к которой регулируется. Сущностей (т.е. тэгов <acl-id>) может быть много. | ||
+ | |||
+ | Сущность acl-id представляет собой виртуальную сущность, которой в программе может соответствовать один или несколько физических объектов. У всех этих объектов должен быть проставлен атрибут acl-id с именем этой сущности. Имя сущности задается программистом самостоятельно. | ||
+ | |||
+ | Для получения доступа к визуальному интерфейсу необходимо выполнить sysUserPrivEdit.show='true' | ||
+ | |||
+ | |||
+ | ===== Примеры ===== | ||
+ | <code> | ||
+ | <AppXML> | ||
+ | <security set="on"> | ||
+ | <right name="view" /> | ||
+ | <right name="edit" /> | ||
+ | <right name="delete" /> | ||
+ | <!-- Список логических сущностей, которыми управляем через привилегии (права) --> | ||
+ | <acl-id name="commerce" desc="Коммерческая информация: клиенты, цены, суммы"/> | ||
+ | <acl-id name="commerce-order" desc="Список заказов" /> | ||
+ | <acl-id name="admin" desc="Админские функции" /> | ||
+ | </security> | ||
+ | |||
+ | <main> | ||
+ | <window id="mainWindow" location="center" height="600" width="850"> | ||
+ | <tree id="treeMenu" width="200" expand="true" root-text1="Меню" title="Главное меню"> | ||
+ | <treeitem acl-id="commerce" text="Home" icon="res:package.png" visible="false"> | ||
+ | <onaction> | ||
+ | alertBalanceCompany(); | ||
+ | </onaction> | ||
+ | </treeitem> | ||
+ | <treeitem text="Настройки" icon="res:pref.png"> | ||
+ | <treeitem acl-id="admin" text="Пользователи" onAction="sysUserPrivEdit.show='true'" /> | ||
+ | </treeitem> | ||
+ | <treeitem text="Выход" onaction="appxml:mainWindow.close='true'" icon="res:exit.png"/> | ||
+ | </tree> | ||
+ | <statusbar> | ||
+ | <label id="mainstatus" /> | ||
+ | </statusbar> | ||
+ | </window> | ||
+ | </main> | ||
+ | </AppXML> | ||
+ | </code> |