mirror of
https://github.com/home-assistant/core.git
synced 2025-07-21 04:07:08 +00:00
assign user to websocket connection when using legacy_api_password (#19797)
This commit is contained in:
parent
f17d6c0593
commit
8cf595dd3e
@ -6,6 +6,7 @@ from homeassistant.const import __version__
|
||||
from homeassistant.components.http.auth import validate_password
|
||||
from homeassistant.components.http.ban import process_wrong_login, \
|
||||
process_success_login
|
||||
from homeassistant.auth.providers import legacy_api_password
|
||||
|
||||
from .connection import ActiveConnection
|
||||
from .error import Disconnect
|
||||
@ -81,7 +82,8 @@ class AuthPhase:
|
||||
elif self._hass.auth.support_legacy and 'api_password' in msg:
|
||||
self._logger.debug("Received api_password")
|
||||
if validate_password(self._request, msg['api_password']):
|
||||
return await self._async_finish_auth(None, None)
|
||||
user = await legacy_api_password.async_get_user(self._hass)
|
||||
return await self._async_finish_auth(user, None)
|
||||
|
||||
self._send_message(auth_invalid_message(
|
||||
'Invalid access token or password'))
|
||||
|
@ -132,7 +132,8 @@ async def test_auth_active_with_password_not_allow(hass, aiohttp_client):
|
||||
assert auth_msg['type'] == TYPE_AUTH_INVALID
|
||||
|
||||
|
||||
async def test_auth_legacy_support_with_password(hass, aiohttp_client):
|
||||
async def test_auth_legacy_support_with_password(hass, aiohttp_client,
|
||||
legacy_auth):
|
||||
"""Test authenticating with a token."""
|
||||
assert await async_setup_component(hass, 'websocket_api', {
|
||||
'http': {
|
||||
|
Loading…
x
Reference in New Issue
Block a user