Контроль назначенных ролей и привилегий на пользователей#

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

Основной сценарий: запрос списка пользователей с ролями#

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

    GET /principals
    
  2. Qdrant возвращает список пользователей с назначенными ролями:

    {
      "result": [
        {
          "name": "ivanov.ivan",
          "blocked": false,
          "type": "user",
          "cert_auth_allowed": false,
          "created_at": "2026-03-11T11:27:56.045Z",
          "created_by": "admin",
          "updated_at": "2026-03-11T11:27:56.045Z",
          "updated_by": "admin",
          "roles": [
            {
              "name": "string",
              "created_at": "2026-03-11T11:27:56.045Z",
              "created_by": "admin",
              "updated_at": "2026-03-11T11:27:56.045Z",
              "updated_by": "admin",
              "privileges": [
                {
                  "access": "collection_info"
                }
              ]
            }
          ]
        }
      ],
      "status": "ok",
      "time": 0.004243916
    }
    
  3. ТУЗ Управления УЗ использует данные для проверки соответствия политик доступа.

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

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

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

  1. ТУЗ Управления УЗ запрашивает список пользователей, но Qdrant возвращает ошибку 403 Forbidden.

  2. ТУЗ Управления УЗ проверяет токен аутентификации и обнаруживает истекший срок действия.

  3. ТУЗ Управления УЗ получает новый токен:

    POST /auth
    {
      "username": "<admin>",
      "password": "<secure_password>"
    }
    
  4. После получения нового токена, ТУЗ Управления УЗ повторяет запрос на доступ к данным пользователей.