# Определяем способ аутентификации. # Cookie-вариант приоритетнее — Proxmox 8.x/9.x часто отказывает API-токену # на WebSocket-эндпоинте vncwebsocket. Но если cookie-аутентификация не # задана — используем API-токен. use_cookie = bool(settings.pve_username and settings.pve_password) headers: dict = {} csrf_token: Optional[str] = None auth = None if use_cookie: auth = await _get_pve_auth_cookie() if auth: cookie_header, csrf_token = auth headers["Cookie"] = cookie_header if csrf_token: headers["CSRFPreventionToken"] = csrf_token auth_kind = "cookie" else: headers["Authorization"] = ( f"PVEAPIToken={settings.pve_token_name}={settings.pve_token_value}" ) auth_kind = "api-token" logger.warning( "console_ws: cookie-аутентификация отключена или не настроена, " "используем API-токен. Proxmox 8.x/9.x может его не принимать." )