Сервер:
 
вход в систему
логин:   
пароль:  
 
 
меню
совет

Синтаксис:

<req:Securex connection="имя_соединения" object="имя_объекта" action="действие"
  rest="имя_ограничения" field="поле_ограничения" op="метод_проверки">
  запрос
</req:Secure>

Команда предназначена для ограничения доступа к странице. При этом те XHTML-конструкции и команды, которые в файле указаны до данной команды, будут выполняться и отображаться, а указанные после - нет.

  • имя_соединения - обязательный параметр, указывающий имя соединения с СУБД, определенное в настройках приложения.
  • имя_объекта - имя объекта защиты, которому поставлен в соответствие запрошенный XML-файл. Если имя объекта равно __type:stud, проверяется, является ли пользователь студентом.
  • действие - действие над объектом. В основном имеет значение EXECUTE.
  • имя_ограничения - имя ограничения (параметра, который ограничивает доступ к объекту только определенными своими значениями).
  • поле_ограничения - имя поля, значения которого выступают как значения ограничений.
  • запрос - SQL-выражение либо вызов хранимой процедуры (с единственным OUT-параметром типа REF CURSOR), которые возвращают список значений ограничения для проверки.
  • метод_проверки - если равен "AND" (по умолчанию), доступ к старице разрешается при условии, что пользователю назначены все значения ограничения из списка. Если равен "OR", доступ разрешается при условии, что пользователю назначено хотя бы одно значение из списка.

Данная команда может быть полезна чаще всего в случае иерархической структуры защищаемых объектов. Например, если пользователю дано право редактировать некоторую ветвь в дереве, проверить право на редактирование вложенных ветвей и листов (которое автоматически разрешено) можно следующим образом:

<req:Securex connection="myDB" object="my:object" action="EXECUTE"
  rest="id" field="id" op="OR">
  select * from my_tree
    connect by prior parent_id=id
    start with id={{id}}
</req:Securex>

где {{id}} - идентификатор конкретной ветви/листа.

форум
сообщить об ошибке Центр Новых Информационных Технологий