Cats with different access roles

Контроль доступа определяет, какие ресурсы и действия доступны пользователю в зависимости от его прав или роли в системе.

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

Существуют разные модели контроля доступа. Разберем самые распространенные: ролевую (RBAC) и атрибутную (ABAC) модели.

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

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

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

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

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

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

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

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

Роли

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

Действия

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Задача

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

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

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

При проведении тестирования тестировщик самостоятельно, либо обращаясь к коллегам, изменяет свою роль.

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

Роль в системе

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

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

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

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

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

Полный доступ ко всем практическим задачам
Проверка ответов
Неограниченное количество попыток
Sidebar arrow

ВВЕДЕНИЕ

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

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

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

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

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

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

POSTMAN

БАЗЫ ДАННЫХ

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

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

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

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