Создание ролей и назначение на них привилегий#

Создание ролей и назначение на них привилегий реализует следующие сценарии:

Основной сценарий: успешное создание роли#

  1. ТУЗ Управления УЗ отправляет запрос на:

    1. Создание роли с назначением привилегий:

      POST /roles
      {
       "role": "read_only_admin",
       "privileges": [
        {
            "access": "collection_info"
        }
       ]
      }
      
    2. Удаление роли:

      DELETE /roles/dcl_admin
      
  2. Qdrant проверяет привилегии пользователя и создает/удаляет роли.

  3. ТУЗ получает ответ 201 OK с подтверждением успешного назначения/удаления.

  4. Пользователь, для которого назначена роль, получает/теряет доступ к ресурсам в соответствии с назначенными привилегиями.

Альтернативный сценарий#

Альтернативные сценарии отсутствуют.

Исключительный сценарий: ошибка назначения ролей из-за недоступности Qdrant#

  1. ТУЗ Управления УЗ отправляет запрос на назначение/отзыв ролей, но Qdrant недоступен.

  2. ТУЗ получает ответ 500 Internal Server Error.

  3. ТУЗ Управления УЗ проверяет статус Qdrant через мониторинг или CLI:

    systemctl status qdrant
    
  4. После восстановления Qdrant, ТУЗ Управления УЗ повторяет запрос.