avtorizatsiya
Авторизация, или avtorizatsiya, представляет собой процесс определения прав доступа пользователя или приложения к ресурсам после того, как личность была подтверждена (аутентификация). Цель авторизации — обеспечить надлежащий уровень доступа, применяя принципы наименьших привилегий и контроля доступа на уровне ресурсов и действий.
В отличие от аутентификации, которая отвечает на вопрос "кто вы?", авторизация отвечает на вопрос "что вам разрешено делать?".
К наиболее распространенным механизмам относятся протокол OAuth 2.0, расширяемый OpenID Connect, который добавляет аутентификацию поверх OAuth, и SAML 2.0, используемый в корпоративной среде. Также применяются API-ключи, JWT (JSON Web Tokens) и сессионные куки.
Типичный рабочий процесс: пользователь или приложение запрашивает доступ к ресурсу; клиент перенаправляет пользователя к серверу авторизации; пользователь дает согласие на запрашиваемые области; сервер авторизации выдаёт access token; клиент предъявляет токен к серверу ресурсов, который проверяет его и возвращает запрашиваемые данные или действие.
Архитектура авторизации обычно включает следующие роли: владелец ресурса (пользователь), клиентское приложение, сервер авторизации (Authorization Server), сервер ресурсов (Resource Server). Осуществляются механизмы контроля доступа: RBAC, ABAC, ACL, политики.
Ключевые принципы безопасности: ограничение области действия (scope), минимальные сроки действия токенов, возможность их отзыва, защищённое хранение токенов и использование TLS. Неправильно настроенная авторизация может привести к чрезмерному доступу или утечкам.
Использование: веб-приложения, мобильные приложения, API-интерфейсы, интеграции сторонних сервисов.