Авторизация

Authorization

A cat has no access to a web page

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

Авторизация является важной составляющей безопасности системы и позволяет разграничить доступные пользователям функции согласно задачам участников.

Контроль доступа на основе ролей (RBAC)

Один из способов ограничения доступа пользователей к системе — контроль доступа на основе ролей.

Предположим, у вас есть страница в социальных сетях.

Как владелец страницы, вы можете публиковать, просматривать, редактировать и удалять контент.

Друг может просматривать ваш контент.

Гость не имеет доступа к вашему контенту.

Модератор может просматривать и удалять нежелательный контент.

Таким образом появляются действующие лица и операции, которые они могут совершать:

Роли

  • Владелец
  • Друг
  • Гость
  • Модератор

Действия

  • C Создать
  • R Просмотреть
  • U Редактировать
  • D Удалить

Эти стандартные действия называют CRUD (Create, Read, Update, Delete) операциями.

Пример ограничения доступа на основе ролей

В таблице приведен пример разделения доступа к контенту личной страницы пользователя для различных групп пользователей. Такая система разделения прав доступа к ресурсам называется ролевой моделью.

Ресурс Владелец Друг Гость Модератор
/my-page CRUD R RD

Контроль доступа на основе атрибутов (ABAC)

Ещё один подход к разграничению доступа пользователей к системе — контроль доступа на основе атрибутов.

Атрибуты субъекта — характеристики пользователя, влияющие на доступ

  • Роль
  • Возраст
  • Группа пользователей
  • Статус (активен/неактивен)

Атрибуты действия — операции, которые пользователь может выполнить

  • C Создать
  • R Просмотреть
  • U Редактировать
  • D Удалить

Атрибуты объекта — свойства объекта, к которому осуществляется доступ

  • Уровень конфиденциальности
  • Владелец
  • Категория объекта
  • Теги / метки
🌍

Атрибуты среды — контекст, в котором происходит доступ

  • Тип устройства
  • Операционная система
  • Локация
  • Время запроса

Пример ограничения доступа на основе атрибутов

Разделение доступа к контенту личной страницы пользователя для пользователей с различными атрибутами:

Ресурс Атрибуты Субъекта Атрибуты Действия
/my-page Роль: Владелец Действие: CRUD
/my-page Роль: Друг Действие: R
/my-page Роль: Гость Действие: —
/my-page Роль: Модератор Действие: RD
/my-page Роль: Модератор Действие: RUD

Теперь два модератора имеют доступ к разному набору операций.

Использование ABAC добавляет гибкости при управлении доступом и может комбинироваться с моделью RBAC.

Задача

Важная задача, с которой может столкнуться QA инженер — тестирование соответствия описанной в требованиях и фактически реализованной ролевой модели.

Требования к ролевой модели секции «Список записей».

Секция Пользователь Аналитик Администратор
Список записей CRU R CRUD

При проведении тестирования тестировщик самостоятельно, либо обращаясь к коллегам, изменяет свою роль. Используйте «Переключатель роли» и найдите несоответствия реализации ролевой модели секции «Список записей» требованиям.


Список записей

Операции по кнопкам не реализованы, работа со списком записей не входит в задачу

Задача доступна премиум пользователям!
Sidebar arrow

ВВЕДЕНИЕ

БАЗОВЫЕ ЗНАНИЯ

УРОВНИ ТЕСТИРОВАНИЯ

UI ТЕСТИРОВАНИЕ

ТЕХНИКИ ТЕСТ ДИЗАЙНА

ТЕСТОВАЯ ДОКУМЕНТАЦИЯ

АУТЕНТИФИКАЦИЯ И АВТОРИЗАЦИЯ

POSTMAN

БАЗЫ ДАННЫХ

ТЕСТИРОВАНИЕ РЕЛИЗА

АНАЛИЗ РАБОТЫ ПРИЛОЖЕНИЯ

ПОДГОТОВКА К СОБЕСЕДОВАНИЮ

Как составить резюме Топ вопросов Собеседование