Не так давно в Битриксе появилась возможность очень и очень гибко настраивать права доступа к некоторым сущностям. Рассмотрим на примере инфоблоков.
В админке это выглядит так:
Но как же применить это посредством API? Например, программно узнать, может ли пользователь читать секцию, или писать в нее, или писать в конкретный элемент, или удалять конкретный элемент?
Они возвращают для текущего авторизованного пользователя булево значение - true/false. На входе принимает три параметра: ID инфоблока, ID секции/элемента (если ноль, то подразумевается проверка прав на добавление), и, собственно, уровень доступа, который мы проверяем на "имеет ли".
Уровни доступа для инфоблоков можно подсмотреть в "Пользователи/Уровни доступа/Новый уровень доступа". Выбираем модуль "Инфоблоки", и на вкладке "Операции" можем видеть список допустимых доступов:
Долганин Антон, Вы не упомянули про 4-й неявный параметр $flags, который позволяет вернуть массив всех разрешенных пользователю операций. Также я внес уточнение по значению передаваемого параметра $permission. Всё равно спасибо, задали верный курс.
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».