Блог Горошко Андрея Bitrix24 Установить права роли для списка сайтов landing.role.setRights

Установить права роли для списка сайтов landing.role.setRights

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Установить права роли для списка сайтов landing.role.setRights», разберем архитектурные особенности и предоставим готовые к интеграции примеры кода.

Установить права роли для списка сайтов landing.role.setRights

Тут может не хватать некоторых данных — дополним в ближайшее время

  • нужны правки под стандарт написания
  • не указаны типы параметров
  • не указана обязательность параметров
  • отсутствуют примеры
  • отсутствует ответ в случае успеха
  • отсутствует ответ в случае ошибки

Scope: landing | Права на выполнение: администратор

Метод landing.role.setRights устанавливает необходимые права в рамках роли для списков сайта. Все иные сайты, не указанные во входящем массиве считаются отвязанными от роли.

Ключами массива идут идентификаторы сайта, а значениями массив доступных операций (нулевой ключ означает доступ по-умолчанию для роли):

  • denied — запрещено всё,
  • read – чтение (право автоматически ставится системой дополнительно при указании любого другого отличного от denied),
  • edit – изменение (содержимого страниц),
  • sett – изменение настроек,
  • public – публикация,
  • delete – удаление (в корзину, и восстановление из корзины).

Входящие параметры и конфигурация метода

ПараметрыОписание
id
unknown
Идентификатор роли.
rights
unknown
Массив сайтов для привязки прав. См. пример.
additional
unknown
Опционально может быть передан массив с дополнительными правами, кому разрешено в рамках роли:
— menu24 – показывать ли для данной роли пункт меню «Сайты» / «Магазины» в облачном Битрикс24
— create – разрешать ли в рамках роли создавать сайты

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

  • JS
    try
    {
    	const response = await $b24.callMethod(
    		'landing.role.setRights',
    		{
    			id: 11,
    			rights: {
    				'0': ['read'],
    				'66': ['read','edit','sett']
    			},
    			additional: ['menu24', 'create']
    		}
    	);
    	
    	const result = response.getData().result;
    	console.info(result);
    }
    catch( error )
    {
    	console.error(error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'landing.role.setRights',
                [
                    'id' => 11,
                    'rights' => [
                        '0'  => ['read'],
                        '66' => ['read', 'edit', 'sett']
                    ],
                    'additional' => ['menu24', 'create']
                ]
            );
    
        $result = $response
            ->getResponseData()
            ->getResult();
    
        echo 'Success: ' . print_r($result, true);
        // Нужная вам логика обработки данных
        processData($result);
    
    } catch (Throwable $e) {
        error_log($e->getMessage());
        echo 'Error setting role rights: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        'landing.role.setRights',
        {
            id: 11,
            rights: {
                '0': ['read'],
                '66': ['read','edit','sett']
            },
            additional: ['menu24', 'create']
        },
        function(result)
        {
            if(result.error())
            {
                console.error(result.error());
            }
            else
            {
                console.info(result.data());
            }
        }
    );

💡 Экспертное мнение и рекомендации

Ключевые выводы по теме «Установить права роли для списка сайтов landing.role.setRights»:

Использование современных стандартов D7 при работе с landing.role.setRights позволяет писать чистый, масштабируемый и безопасный код. Не забывайте обрабатывать исключения (try/catch) и проверять права доступа текущего пользователя перед выполнением критических операций.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Изменить запись таймлайна rpa.comment.updateИзменить запись таймлайна rpa.comment.update

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Изменить запись таймлайна rpa.comment.update». Вы узнаете экспертные методики работы с rpa.comment.update и научитесь

Внедрение Битрикс24 для медицинской клиники и стоматологииВнедрение Битрикс24 для медицинской клиники и стоматологии

Профессиональная настройка и внедрение Битрикс24 CRM позволяет систематизировать работу отдела продаж, исключить потерю лидов и автоматизировать ключевые бизнес-процессы компании. Услуга «Внедрение Битрикс24 для медицинской клиники и стоматологии» обеспечивает история обращений

Интеграция Битрикс24 с IP-телефонией UIS / CoMagic и ТелфинИнтеграция Битрикс24 с IP-телефонией UIS / CoMagic и Телфин

Профессиональная настройка и комплексная автоматизация Битрикс24 CRM позволяет выстроить прозрачный отдел продаж, исключить потерю обращений и автоматизировать рутинный документооборот компании. Услуга «Интеграция Битрикс24 с IP-телефонией UIS / CoMagic и Телфин»