mirror of
https://github.com/home-assistant/core.git
synced 2025-07-19 11:17:21 +00:00
Convert auth websocket commands to use async_response decorator (#17755)
This commit is contained in:
parent
8283f50e22
commit
c7c0ed89c8
@ -424,12 +424,11 @@ def _create_auth_code_store():
|
|||||||
|
|
||||||
|
|
||||||
@websocket_api.ws_require_user()
|
@websocket_api.ws_require_user()
|
||||||
@callback
|
@websocket_api.async_response
|
||||||
def websocket_current_user(
|
async def websocket_current_user(
|
||||||
hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg):
|
hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg):
|
||||||
"""Return the current user."""
|
"""Return the current user."""
|
||||||
async def async_get_current_user(user):
|
user = connection.user
|
||||||
"""Get current user."""
|
|
||||||
enabled_modules = await hass.auth.async_get_enabled_mfa(user)
|
enabled_modules = await hass.auth.async_get_enabled_mfa(user)
|
||||||
|
|
||||||
connection.send_message(
|
connection.send_message(
|
||||||
@ -447,18 +446,14 @@ def websocket_current_user(
|
|||||||
} for module in hass.auth.auth_mfa_modules],
|
} for module in hass.auth.auth_mfa_modules],
|
||||||
}))
|
}))
|
||||||
|
|
||||||
hass.async_create_task(async_get_current_user(connection.user))
|
|
||||||
|
|
||||||
|
|
||||||
@websocket_api.ws_require_user()
|
@websocket_api.ws_require_user()
|
||||||
@callback
|
@websocket_api.async_response
|
||||||
def websocket_create_long_lived_access_token(
|
async def websocket_create_long_lived_access_token(
|
||||||
hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg):
|
hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg):
|
||||||
"""Create or a long-lived access token."""
|
"""Create or a long-lived access token."""
|
||||||
async def async_create_long_lived_access_token(user):
|
|
||||||
"""Create or a long-lived access token."""
|
|
||||||
refresh_token = await hass.auth.async_create_refresh_token(
|
refresh_token = await hass.auth.async_create_refresh_token(
|
||||||
user,
|
connection.user,
|
||||||
client_name=msg['client_name'],
|
client_name=msg['client_name'],
|
||||||
client_icon=msg.get('client_icon'),
|
client_icon=msg.get('client_icon'),
|
||||||
token_type=TOKEN_TYPE_LONG_LIVED_ACCESS_TOKEN,
|
token_type=TOKEN_TYPE_LONG_LIVED_ACCESS_TOKEN,
|
||||||
@ -470,9 +465,6 @@ def websocket_create_long_lived_access_token(
|
|||||||
connection.send_message(
|
connection.send_message(
|
||||||
websocket_api.result_message(msg['id'], access_token))
|
websocket_api.result_message(msg['id'], access_token))
|
||||||
|
|
||||||
hass.async_create_task(
|
|
||||||
async_create_long_lived_access_token(connection.user))
|
|
||||||
|
|
||||||
|
|
||||||
@websocket_api.ws_require_user()
|
@websocket_api.ws_require_user()
|
||||||
@callback
|
@callback
|
||||||
@ -494,13 +486,11 @@ def websocket_refresh_tokens(
|
|||||||
|
|
||||||
|
|
||||||
@websocket_api.ws_require_user()
|
@websocket_api.ws_require_user()
|
||||||
@callback
|
@websocket_api.async_response
|
||||||
def websocket_delete_refresh_token(
|
async def websocket_delete_refresh_token(
|
||||||
hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg):
|
hass: HomeAssistant, connection: websocket_api.ActiveConnection, msg):
|
||||||
"""Handle a delete refresh token request."""
|
"""Handle a delete refresh token request."""
|
||||||
async def async_delete_refresh_token(user, refresh_token_id):
|
refresh_token = connection.user.refresh_tokens.get(msg['refresh_token_id'])
|
||||||
"""Delete a refresh token."""
|
|
||||||
refresh_token = connection.user.refresh_tokens.get(refresh_token_id)
|
|
||||||
|
|
||||||
if refresh_token is None:
|
if refresh_token is None:
|
||||||
return websocket_api.error_message(
|
return websocket_api.error_message(
|
||||||
@ -510,6 +500,3 @@ def websocket_delete_refresh_token(
|
|||||||
|
|
||||||
connection.send_message(
|
connection.send_message(
|
||||||
websocket_api.result_message(msg['id'], {}))
|
websocket_api.result_message(msg['id'], {}))
|
||||||
|
|
||||||
hass.async_create_task(
|
|
||||||
async_delete_refresh_token(connection.user, msg['refresh_token_id']))
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user