============= Безопасность ============= В данном разделе описаны следующие параметры безопасности приложения: * :ref:`Схемы аутентификации <Схемы аутентификации>` * :ref:`Схемы авторизации <Схемы авторизации>` * :ref:`Контрольные суммы <Контрольные суммы>` .. _Схемы аутентификации: Схемы аутентификации --------------------- Общее описание ~~~~~~~~~~~~~~~ Аутентификация - это процесс проверки подлинности данных каждого пользователя, который получает доступ к приложению. Процесс проверки подлинности требует, чтобы пользователь предоставил определенные учетные данные, например, имя пользователя и пароль. Если учетные данные проходят проверку, пользователь получает доступ к приложению, если нет, то доступ будет запрещен. Как только пользователь идентифицирован, устанавливается значение глобальной переменной APP_USER (см. :ref:`Глобальные переменные <Глобальные переменные>`). Когда пользователь переходит со страницы на страницу, значение APP_USER используется для идентификации пользователя. Создание схемы аутентификации ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Страница со схемами аутентификации располагается во вкладке “Глобальные”: .. image:: /_static/images/globalschem.jpg :width: 700 При переходе на страницу “Схемы Аутентификации” будет отображен перечень всех схем аутентификации, доступных в приложении, и кнопка для создания новой схемы: .. image:: /_static/images/globalschem1.jpg :width: 700 Для перехода на страницу необходимо авторизоваться от лица аккаунта с ролью доступа выше VIEW. Создание новой схемы аутентификации осуществляется по нажатию кнопки “Создать”. Откроется форма создания схемы аутентификации: .. image:: /_static/images/globalschem2.jpg :width: 700 Атрибуты: """""""""" * Имя - **обязательный** атрибут, определяющий имя создаваемой схемы аутентификации; * Страница - **обязательный** атрибут, определяющий номер страницы приложения, на которой происходит аутентификация (см. ниже пункт “Создание страницы для аутентификации”); * Ввод - **обязательный атрибут**, определяющий список входных параметров для аутентификации; * SQL - **обязательный атрибут**, определяющий SQL-запрос для аутентификации. После подтверждения введенных данных схема аутентификации будет занесена в базу данных XRAD и доступна для просмотра, редактирования и удаления. Редактирование схемы аутентификации ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Для редактирования схемы аутентификации выберите нужную вам схему. После нажатия на схему откроется форма, аналогичная форме создания новой схемы аутентификации (см. выше “Создание схемы аутентификации”), с информацией о выбранной схеме: .. image:: /_static/images/globalschem3.jpg :width: 700 Отредактируйте необходимые вам атрибуты и сохраните их новые значения, нажав кнопку “Применить”. Для удаления схемы нажмите кнопку “Удалить” и подтвердите действие в появившемся диалоговом окне браузера: .. image:: /_static/images/globalschem4.png :width: 300 Публичная страница ~~~~~~~~~~~~~~~~~~~ Определить для страницы, будет ли она публичной или будет нужна аутентификация, можно в :ref:`редактор страниц <редактор страниц>` через свойство “Безопасность - Публичная страница”. .. image:: /_static/images/globalschem5.png :width: 700 Если свойство “Публичная страница” не установлено, то необходима аутентификация пользователя для просмотра страницы. Если свойство “Публичная страница” установлено, то страница будет являться публичной и нет необходимости в аутентификации пользователя для просмотра страницы. Данное свойство будет применено к странице после сохранения изменений через кнопку “Сохранить”. Создание страницы для аутентификации ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Шаги по созданию страницы приложения описаны в разделе :ref:`Добавление новой страницы <Добавление новой страницы>` Для страницы аутентификации необходимо выбрать режим LOGIN. .. image:: /_static/images/globalschem6.png :width: 700 Далее необходимо указать атрибуты страницы в редакторе страниц и установить свойство “Публичная страница”: .. image:: /_static/images/globalschem7.png :width: 700 Страница для аутентификации в приложении будет выглядеть следующим образом: .. image:: /_static/images/globalschem8.png :width: 700 .. _Схемы авторизации: Схемы авторизации ------------------ Общее описание ~~~~~~~~~~~~~~~ Схема авторизации определяет доступность страницы конкретному пользователю. Если авторизация проходит успешно, то пользователю отображается нужная страница. Если при авторизации происходит ошибка, то на экран выводится сообщение об ошибке. Создание схемы авторизации ~~~~~~~~~~~~~~~~~~~~~~~~~~~ Страница со схемами авторизации располагается во вкладке “Глобальные”: .. image:: /_static/images/globauthorschem.jpg :width: 700 При переходе на страницу “Схемы Авторизации” будет отображен перечень всех схем авторизации, доступных в приложении, и кнопка для создания новой схемы: .. image:: /_static/images/globauthorschem1.jpg :width: 700 Для перехода на страницу необходимо авторизоваться от лица аккаунта с ролью доступа выше VIEW. Создание новой схемы авторизации осуществляется по нажатию кнопки “Создать”. Откроется форма создания схемы авторизации: .. image:: /_static/images/globauthorschem2.jpg :width: 700 Атрибуты: """""""""" * Имя - **обязательный** атрибут, определяющий имя создаваемой схемы авторизации; * Ввод - **обязательный** атрибут, определяющий список входных параметров для авторизации; * Текст Ошибки - **обязательный** атрибут, определяющий текст ошибки авторизации; * SQL - **обязательный** атрибут, определяющий SQL-запрос для авторизации. После подтверждения введенных данных схема авторизации будет занесена в базу данных XRAD и доступна для просмотра, редактирования и удаления. Редактирование схемы авторизации ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Для редактирования схемы авторизации выберите нужную вам схему. После нажатия на схему откроется форма, аналогичная форме создания новой схемы авторизации (см. выше “Создание схемы авторизации”), с информацией о выбранной схеме: .. image:: /_static/images/globauthorschem3.jpg :width: 700 Отредактируйте необходимые вам атрибуты и сохраните их новые значения, нажав кнопку “Применить”. Для удаления схемы нажмите кнопку “Удалить” и подтвердите действие в появившемся диалоговом окне браузера: .. image:: /_static/images/globauthorschem4.png :width: 300 Выбор схемы авторизации ~~~~~~~~~~~~~~~~~~~~~~~~ Определить доступность страницы конкретному пользователю можно в :ref:`редактор страниц <редактор страниц>` через свойство “Безопасность - Схема авторизации”. В выпадающем списке можно увидеть все доступные схемы авторизации. .. image:: /_static/images/globauthorschem5.png :width: 700 Выбранная схема авторизации будет применена к странице после сохранения изменений через кнопку “Сохранить”. Сообщение при ошибке авторизации, если у пользователя нет прав на просмотр страницы, будет выглядеть следующим образом: .. image:: /_static/images/globauthorschem6.jpg :width: 300 .. _Контрольные суммы: Контрольные суммы ------------------ Общее описание ~~~~~~~~~~~~~~~ Контрольная сумма используется в случае, когда необходимо обеспечить защиту от смены параметров страницы в URL. Контрольная сумма формируется для каждой ссылки для конкретного пользователя. Пользователь не может поменять параметры в URL, не вызвав ошибки проверки контрольной суммы. Если страница защищена с помощью контрольной суммы, в URL появляется дополнительный GET-параметр вида: :: &cs=4825bc2e8de876595d5a36bccc89891b415e2575f45833cc5df786c000e24308 Контрольная сумма состоит из: * набора параметров страницы; * специальных наборов символов, которые называются salt (соль). Соль формируется для каждой сессии пользователя. Если пользователь вручную укажет ссылку на страницу, которая защищена контрольной суммой, система распознает эту ссылку и добавит к ней контрольную сумму. Защита страницы через контрольную сумму настраивается отдельно для каждой страницы. Настройка защиты страницы ~~~~~~~~~~~~~~~~~~~~~~~~~~ Настроить защиту страницы с помощью контрольной суммы можно в :ref:`редактор страниц <редактор страниц>` через свойство “Безопасность - Защита страницы”. .. image:: /_static/images/pageproset.png :width: 700 Если свойство “Защита страницы” не установлено, то страница не будет защищена с помощью контрольной суммы. Если свойство “Защита страницы” установлено, то будет включена защита страницы через контрольную сумму. Данное свойство будет применено к странице после сохранения изменений через кнопку “Сохранить”.