Авторизація — процес визначення, що дозволено робити вже ідентифікованому користувачу, пристрою чи застосунку: які дані читати, які дії виконувати та до яких ресурсів звертатися.
Як працює авторизація
Авторизація йде після автентифікації: автентифікація відповідає на питання «хто ви?», авторизація — «що вам дозволено?». Системи реалізують її через моделі керування доступом:
- Списки контролю доступу (ACL) — дозволи, прив’язані до кожного файлу чи об’єкта;
- Рольова модель (RBAC) — права призначаються ролям, наприклад «бухгалтер» чи «служба підтримки»;
- Атрибутна модель (ABAC) — рішення на основі атрибутів: відділу, стану пристрою, місцезнаходження чи часу;
- Керування доступом на основі зв’язків — застосовується хмарними сервісами для спільного доступу до документів конкретних людей.
У вебі OAuth 2.0 (RFC 6749) — це саме фреймворк авторизації: він дає змогу користувачу надати застосунку обмежений доступ до своїх даних без передавання пароля за допомогою маркерів доступу із заданими областями (scopes).
Чому авторизація важлива
Помилки авторизації — одні з найпоширеніших серйозних вразливостей. «Порушення контролю доступу» (Broken Access Control) посідає перше місце в OWASP Top 10 (2021), а порушення авторизації на рівні об’єктів (BOLA) очолює OWASP Security Top 10 для API. Ці слабкості каталогізовано як CWE-862 (відсутність авторизації) та CWE-863 (некоректна авторизація). Типовий приклад — небезпечне пряме посилання на об’єкт (IDOR): змінивши ID в URL, можна побачити рахунок іншого клієнта. Подібні помилки призводили до розкриття мільйонів записів, а вразливості, що дають змогу виконувати функції адміністратора, прямо ведуть до підвищення привілеїв.
Рекомендації
- Перевіряти права на сервері під час кожного запиту, а не лише в інтерфейсі.
- Забороняти все за замовчуванням і дотримуватися принципу мінімальних привілеїв.
- Централізувати логіку авторизації та регулярно переглядати ролі й права.
- Включати сценарії контролю доступу в автотести й тести на проникнення.





