Доступ и безопасность

Виды доступа

Аспекты системы с точки зрения доступа:

  • доступ к модулям
  • доступ к элементам динамического контента
  • доступ к файлам и папкам
  • управление доступом с использованием api

Настройка прав пользователя

Настройка -> Пользователи -> Группы пользователей вкладка Группы пользователей.

Пример настройки контент-менеджера:

  • главный модуль - [Q] контент-редакторы
  • управление структурой - редактирование файлов и папок
  • остальное по умолчанию

Группы пользователей

Привязка пользователя к группам осуществляется на странице настроек пользователя:
настройки -> пользователи -> список пользователей во вкладке группы.

Права для модулей

Права для модулей задаются на странице Настройка->Уровни доступа. Для редактирования необходимо в фильтре выбрать название модуля и тип доступа (удобнее искать по "букве") и затем в списке два раза кликнуть на элемент для редактирования. После этого, на вкладке включаемые операции, можно редактировать список доступных операций.

Инфоблоки и доступ к ним

Выбор прав доступа для групп пользователей у типов инфоблока настраивается на вкладке доступ на странице настройки данного инфоблока.

Доступ к разделам

Настройка доступа для разделов сайта может осуществляться из публичной части. Для этого нужно перейти в раздел, раскрыть список изменить раздел и выбрать пункт Доступ к разделу. Для добавления права нажать добавить право доступа и выбрать группу и тип доступа для неё.

Особенность:
Контент -> Структура сайта -> Файлы и папки -> папка bitrix. Колонка права на доступ продукта - по умолчанию показаны права для группы администраторы. Можно нажать кнопку дополнительно и выбрать пункт показать права на доступ для, где можно указать другую группу, после чего в колонке права на доступ продукта будут отображаться права для выбранной группы.

Компонент, учитывающий права

Параметр в $arFilterGetList)

"CHECK_PERMISSIONS" => "Y" 

Параметр CHECK_PERMISSIONS позволяет производить выборку элементов с учетом прав, т.е. если в настройках инфоблока для текущего пользователя разрешен доступ, то элементы будут отображены.

Выбор элементов с ненаступившей датой активности

Для выборки элементов у которых дата активности еще не наступила используется следующий параметр в $arFilter функции GetList:

">=DATE_ACTIVE_FROM" => ConvertTimeStamp(false, "SHORT") 

SHORT - сокращенный формат времени, т.е. проверяться будет только дата, но не время.

SetUrlTemplates() для установки пути к компоненту

У объекта класса CIBlockResult, который возвращает функция GetList есть метод SetUrlTemplates, для установки путей к элементу вместо указанных в инфоблоке:

$rsElements = CIBlockElement::GetList(array(), array(
"ID" => $ID
), false, false, array(
"ID",
"NAME",
"DETAIL_PAGE_URL"
));
$rsElements->SetUrlTemplates("/catalog/#SECTION_CODE#/#ELEMENT_CODE#.php");
$arElement = $rsElements->GetNext();

создание группы с правами назначать другим пользователям права

Пользователи->Группы, создать группу, на вкладке доступ у пункта главный модуль выбрать просмотр данных модуля и изменение заданных профайлов и ниже в появившемся списке выбрать группы пользователей, профайлы которых возможно имзенять.

Настройка прав для конкретного пользователя

В настройках инфоблока помимо группы пользователей можно настроить право для конкретного пользователя. Для этого на вкладке доступ (на странице настройки инфоблока) поставить галку Расширенное управление правами, нажать применить, нажать добавить, появится окно с возможностью выбора пользователя.

Права доступа разделов инфоблока

Можно управлять правами для разделов инфоблока. Для этого нужно зайти в редактирование раздела, перейти на вкладку Доступ, нажать добавить.

Права доступа элементов инфоблока

Можно управлять правами доступа для элементов инфоблока. Для этого в режиме редактирования элемента перейти на вкладку Доступ (может не быть этой вкладки, если форма изменена, тогда добавить) и нажать кнопку добавить.

Безопасность

Проактивная защита - следит за данными, поступающими от пользователей, делает их безопасными. Журнал работы находится:
Настройки -> Проактивная защита -> Журнал вторжений.

Защита пароля пользователя

Для защиты пароля пользователя в открытых каналах связи без https используется способ:
Настройки -> Настройки модулей -> Главный модуль вкладка Авторизация галка - передавать пароль в зашифрованном виде.

Редактировать на GitHub