Расширение функционала Bitrix 24/Права доступа
Внешний вид
Для ограничения доступа к директории достаточно создать в ней файл .access.php и указать в нем уровни доступа:
//$PERM[file/folder][user group ID] = "access permission ID";
$PERM["admin"]["*"] = "D";
$PERM["admin"]["1"] = "R";
$PERM["/"]["*"] = "R";
$PERM["/"]["1"] = "W";
Этот механизм подробно описан в документации.
Программно задать права доступа можно через метод - SetFileAccessPermission:
<?
// установим на файл /ru/ следующие права:
// для группы # 23 - право чтения файла
// для группы # 5 - право прямого изменения файла
// для всех остальных групп - доступ к файлу закрыт
if ($APPLICATION->SetFileAccessPermission("/ru/",
array("23" => "R", "5" => "W", "*" => "D")))
ShowNote("Права на файл успешно установлены.");
Видимость раздела
[править]Статичные ссылки бокового меню хранятся в файле .top.menu.php. Динамические пункты меню генерируются в .top.menu_ext.php.
Для программного добавления пункта меню можно использовать событие OnBuildGlobalMenu. Регистрация обработчика при установке модуля производится с помощью метода - RegisterModuleDependences
<?
// регистрируем обработчик события
RegisterModuleDependences("main", "OnBuildGlobalMenu",
"my_module_id", "MyClass", "OnBuildGlobalMenu");
не забудьте добавить UnRegisterModuleDependences в метод удаления модуля.
Еще один способ заключается в использовании метода WizardServices::AddMenuItem.
Ссылки
[править]- https://www.intervolga.ru/blog/projects/organizatsiya-upravleniya-dostupom-v-1s-bitriks/?
- https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=35&LESSON_ID=2016&LESSON_PATH=3906.4493.4504.2016
- https://www.bitrixsoft.com/help/index.html?page=source%2Fmain%2Fhelp%2Fen%2Fdeveloper%2Fgeneral%2Fpermissions.php.html