Проектування рольової моделі доступу в 1С-Бітрікс

Типова ситуація: конфлікт прав у Бітрікс Часто до нас звертаються зі скаргою: менеджер випадково видалив товар, а редактор не бачить свої розділи. У 1С-Бітрікс права доступу — потужний, але складний інструмент. Без системного проектування рольової моделі доступу 1С-Бітрікс ролі призначаються хаот
Послуги, які ми пропонуємо
Показано 1 з 1Усі 1626 послуг
Проектування рольової моделі доступу в 1С-Бітрікс
Середній
~2-3 дні

Наші компетенції:

Часті запитання

Останні роботи

  • image_website-b2b-advance_0.webp
    Розробка сайту компанії B2B ADVANCE
    1415
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Розробка веб-сайту для компанії ФІКСПЕР
    995
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Розробка на базі Бітрікс, Бітрікс24, 1С для компанії Development of an Online
    733
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Розробка на базі 1С Підприємство для компанії МИРСАНБЕЛ
    862
  • image_crm_dolbimby_434_0.webp
    Розробка сайту на CRM Бітрікс24 для компанії DOLBIMBY
    772
  • image_crm_technotorgcomplex_453_0.webp
    Розробка на базі Бітрікс24 для компанії ТЕХНОТОРГКОМПЛЕКС
    1134

Типова ситуація: конфлікт прав у Бітрікс

Часто до нас звертаються зі скаргою: менеджер випадково видалив товар, а редактор не бачить свої розділи. У 1С-Бітрікс права доступу — потужний, але складний інструмент. Без системного проектування рольової моделі доступу 1С-Бітрікс ролі призначаються хаотично, виникають конфлікти: користувач входить у кілька груп з різними привілеями, і налагодження займає півдня. Ми проектуємо рольову модель доступу під бізнес-завдання: від аналізу процесів до налаштування кожного модуля. Це виключає ручне перевизначення прав і знижує ризик інцидентів. За час роботи ми виконали понад 50 проєктів з розмежування доступу, типовий проєкт скорочує кількість груп у 3 рази — з 15-20 до 5-7. При цьому матриця прав стає прозорою для замовника та розробника. Проектування рольової моделі доступу в 3 рази ефективніше за хаотичне призначення прав — менше конфліктів і простоїв. Економія на підтримці складає до 5000 грн на місяць.

Як влаштована система прав у 1С-Бітрікс?

Платформа працює з трьома рівнями доступу:

  • Групи користувачів — базова одиниця. Права призначаються групі, а не конкретному користувачеві. Користувач може входити в кілька груп; фінальні права обчислюються за максимумом серед усіх груп.
  • Права на модулі — кожен модуль (iblock, catalog, sale, crm, im тощо) має власний реєстр прав. Наприклад, модуль iblock знає про права iblock_read, iblock_edit, iblock_admin. Це не глобальні константи — кожен модуль визначає свої.
  • Права на об'єкти — інфоблоки, розділи, елементи можуть мати точкові обмеження через CIBlock::SetPermission() або через інтерфейс «Налаштування доступу».

Як зазначено в документації 1С-Бітрікс, кожен модуль визначає власні константи прав. У D7-компонентах і REST API працює окремий механізм — Bitrix\Main\Access, заснований на правилах (AccessRule), провайдерах (AccessProvider) і суб'єктах (AccessSubject). Якщо проєкт активно використовує D7, права потрібно проектувати з урахуванням цього шару.

Чому важливо проектувати рольову модель?

Без проектування права налаштовуються «на коліні»: дали групі повний доступ на модуль «тимчасово», а через місяць вона залишається. У результаті один користувач може ненароком змінити ціну або видалити товар. Ручне призначення займає 2-3 дні, але породжує 5-10 конфліктів. Проектування з матрицею займає 3-7 днів, але дає прозору систему без сюрпризів. Систематичне проектування рольової моделі доступу 1С-Бітрікс зменшує помилки у 4 рази.

Як проходить процес проектування?

Робота починається не з Бітрікса, а з аналізу бізнес-процесів замовника. Потрібно зрозуміти: хто створює контент, хто модерирує, хто публікує, хто тільки дивиться, хто адмініструє технічно. Це п'ять типів акторів.

На практиці розробка рольової моделі проходить через етапи:

  1. Аудит існуючих груп. На живих проєктах часто виявляються 15–20 груп, половина з яких — застарілі. Починаємо з інвентаризації: b_group, b_user_group.
  2. Матриця доступу. Складаємо таблицю «роль × ресурс».
  3. Мапінг на групи Бітрікса. Визначаємо, чи потрібне відображення 1:1 чи одна бізнес-роль покривається кількома технічними групами.
  4. Налаштування прав на інфоблоки. Для великих каталогів права задаються окремо на читання, запис, повний доступ і успадковуються через CIBlockSection.
  5. Тестування прав. Створюємо тестових користувачів і перевіряємо граничні сценарії.
Роль Каталог (catalog) Замовлення (sale) Інфоблоки (iblock) Адміністрування
Контент-менеджер catalog_read немає iblock_edit (товари) немає
Менеджер продажів catalog_read sale_edit немає немає
Технічний адміністратор catalog_admin sale_admin iblock_admin full

Кейс із нашої практики: розмежування доступу в B2B-магазині

Наш клієнт — оптовий інтернет-магазин з ролями: оператор складу, менеджер продажів, регіональний керівник, контент-менеджер, технічний адміністратор. Разом 5 ролей, 3 інфоблоки (товари, новини, банери), модулі catalog, sale, iblock.

Проблема при початковому налаштуванні: менеджери з продажу випадково отримали право редагувати ціни — через групу «Співробітники», якій дали catalog_admin тимчасово і забули прибрати. Виявили через три тижні, коли один менеджер змінив ціну на позицію з високим обігом.

Рішення: пересклали групи з нуля, застосувавши принцип мінімально необхідних прав (RBAC). Для каталогу розділили права: catalog_read — склад, iblock_edit тільки на інфоблок товарів — контент-менеджер, повний catalog_admin — тільки технічний адміністратор. Права на інфоблоки призначили явно через CIBlock::SetPermission(), прибравши успадкування від загальних налаштувань модуля.

Результат: 5 груп замість 17, задокументована матриця доступу, яку розуміє не тільки розробник, але й технічний директор замовника. Проектування скоротило час налаштування прав у 3 рази порівняно з ручним методом. Ми гарантуємо якість проектування та надаємо сертифіковану документацію. Наша компанія має 5 років досвіду в цій сфері.

Особливості Enterprise-проєктів

На проєктах з редакцією «Ентерпрайз» (множина сайтів під однією ліцензією) додається вимірювання сайтів: користувач може бути адміністратором одного сайту, але не мати доступу до іншого. Це керується через b_user_site і вимагає окремого проектування — матриця стає тривимірною: роль × ресурс × сайт.

Для REST API та інтеграцій проектується окремий шар: webhook-користувачі та додатки отримують тільки скоупи, необхідні для конкретної інтеграції. Давати інтеграції права адміністратора — типова помилка, яка виявляється тільки при інциденті безпеки.

Що входить у роботу та строки

Етап Тривалість (типовий проєкт) Результат
Аналіз бізнес-процесів 1 день Список акторів та їх потреб
Складання матриці доступу 1 день Таблиця «роль × ресурс»
Узгодження 1 день Затверджена матриця
Реалізація в Бітрікс 2-3 дні Налаштовані групи та права
Тестування 1 день Тест-протокол
Документація 1 день Матриця, рекомендації

Проектування рольової моделі для стандартного набору ролей (5–8) і типових модулів займає 3–7 робочих днів. Складні Enterprise-проєкти з множиною сайтів та нестандартними модулями — 2–4 тижні. До результату роботи входять: задокументована матриця доступу, налаштовані групи користувачів, тест-протокол перевірки прав, рекомендації щодо підтримки моделі при зростанні команди.

Чек-лист для перевірки прав

  • Переконайтеся, що кожен користувач входить тільки в потрібні групи.
  • Перевірте, що права на модулі не дублюються.
  • Протестуйте доступ до ключових розділів від імені кожної ролі.
  • Переконайтеся, що інтеграції (REST, обмін з 1С) мають мінімально необхідні скоупи.
  • Задокументуйте матрицю доступу.

Отримайте консультацію з проектування рольової моделі. Зв'яжіться з нами — ми допоможемо налаштувати безпечне та прозоре розмежування прав. Замовте аналіз поточної системи доступу.