Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion homeassistant/components/websocket_api/auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@
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
Expand Down Expand Up @@ -81,7 +82,8 @@ async def async_handle(self, msg):
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'))
Expand Down
3 changes: 2 additions & 1 deletion tests/components/websocket_api/test_auth.py
Original file line number Diff line number Diff line change
Expand Up @@ -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': {
Expand Down