Что такое авторизация в контексте информационной безопасности?

«Что такое авторизация в контексте информационной безопасности?» — вопрос из категории Тестирование безопасности, который задают на 25% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Авторизация — это процесс проверки прав доступа аутентифицированного пользователя или системы к конкретным ресурсам, данным или операциям.

Ключевые принципы:

  • Следует за аутентификацией (сначала "кто ты?", затем "что тебе можно?").
  • Реализует принцип минимальных привилегий — предоставление только необходимых прав.

Основные модели:

  1. RBAC (Role-Based Access Control): Права назначаются ролям, а пользователи получают роли.
    # Пример: проверка роли
    if user.role in ['admin', 'editor']:
        grant_access()
  2. ABAC (Attribute-Based Access Control): Решение основано на атрибутах пользователя, ресурса, действия и контекста.
  3. PBAC (Policy-Based Access Control): Централизованное управление правами через политики.

Техническая реализация часто использует токены (JWT, OAuth), где в payload токена закодированы права (claims/scopes), или системы ACL (Access Control Lists).