Robert Resch
e087abe802
Add ws endpoint to remove expiration date from refresh tokens ( #117546 )
...
Co-authored-by: Erik Montnemery <erik@montnemery.com>
2024-05-29 09:09:59 +02:00
J. Nick Koston
79bc179ce8
Improve websocket message coalescing to handle thundering herds better ( #118268 )
...
* Increase websocket peak messages to match max expected entities
During startup the websocket would frequently disconnect if more than
4096 entities were added back to back. Some MQTT setups will have more
than 10000 entities. Match the websocket peak value to the max expected
entities
* coalesce more
* delay more if the backlog gets large
* wait to send if the queue is building rapidly
* tweak
* tweak for chrome since it works great in firefox but chrome cannot handle it
* Revert "tweak for chrome since it works great in firefox but chrome cannot handle it"
This reverts commit 439e2d76b1
.
* adjust for chrome
* lower number
* remove code
* fixes
* fast path for bytes
* compact
* adjust test since we see the close right away now on overload
* simplify check
* reduce loop
* tweak
* handle ready right away
2024-05-28 23:14:06 -04:00
Sid
a5df229715
Bump ruff to 0.4.3 ( #116749 )
2024-05-04 11:56:40 +02:00
Marc Mueller
38adfbf1a3
Add empty line after module docstring [tests a-e] ( #112708 )
2024-03-08 08:50:25 -05:00
karwosts
f456e3a071
Allow delete_all_refresh_tokens to delete a specific token_type ( #106119 )
...
* Allow delete_all_refresh_tokens to delete a specific token_type
* add a test
* minor string change
* test updates
* more test updates
* more test updates
* fix tests
* do not delete current token
* Update tests/components/auth/test_init.py
* Update tests/components/auth/test_init.py
* Option to not delete the current token
---------
Co-authored-by: J. Nick Koston <nick@koston.org>
2024-01-29 17:09:23 +01:00
J. Nick Koston
2eea658fd8
Convert getting and removing access tokens to normal functions ( #108670 )
2024-01-22 20:51:33 -10:00
Jan-Philipp Benecke
6666b796f2
Migrate auth tests to use freezegun ( #105243 )
2023-12-07 21:18:10 +01:00
Robert Resch
6223b1f599
Add ws endpoint "auth/delete_all_refresh_tokens" ( #98976 )
...
Co-authored-by: Martin Hjelmare <marhje52@gmail.com>
2023-08-29 15:57:54 +02:00
Franck Nijhof
ed79265843
Enable Ruff PT006 ( #88165 )
...
* Enable Ruff PT006
* Adjust existing cases
* Fix tests
* Remove unneeded parentheses
2023-02-15 14:09:50 +01:00
epenet
07a1a0efa9
Add type hints to integration tests (part 1) ( #87777 )
2023-02-09 16:09:13 +01:00
epenet
2545694d41
Add type hints to integration tests (a) ( #87684 )
...
* Add type hints to accuweather tests
* Adjust a** components
* Adjust aiohttp_client
* ClientSessionGenerator/WebSocketGenerator
2023-02-08 12:16:23 +01:00
Franck Nijhof
3b5fd4bd06
Enable Ruff TRY004 ( #86811 )
2023-01-30 14:06:52 +01:00
Paulus Schoutsen
14f68ec1a9
Store redirect URI in context instead of asking each time ( #77380 )
...
* Store redirect URI in context instead of asking each time
* Fix tests
2022-08-29 19:28:42 -04:00
Paulus Schoutsen
59878ea1ef
Indieauth updates ( #76880 )
2022-08-16 17:17:10 -04:00
Paulus Schoutsen
a733b92389
Include provider type in auth token response ( #72560 )
2022-05-27 10:31:48 -07:00
Paulus Schoutsen
ff3374b4e0
Use modern WS API for auth integration + add auth provider type to refresh token info ( #72552 )
2022-05-26 13:06:34 -07:00
Paulus Schoutsen
63f8e437ed
Add Home Assistant Content user ( #64337 )
2022-01-21 10:06:39 -08:00
Paulus Schoutsen
914f7f85ec
Add local only users ( #57598 )
2021-11-29 14:01:03 -08:00
Paulus Schoutsen
c6ec84d0cf
Remove store user as auth result ( #60468 )
2021-11-28 14:14:52 +01:00
Ville Skyttä
a598d9f353
Use HTTPStatus instead of HTTP_ consts and magic values in components/a* ( #57988 )
2021-10-22 14:21:34 +02:00
David Boslee
7f966613bd
Disconnect websockets after token is revoked ( #57091 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-10-08 09:38:22 -07:00
Joakim Plate
38d2cacf7a
Support blocking trusted network from new ip ( #44630 )
...
Co-authored-by: Paulus Schoutsen <paulus@home-assistant.io>
2021-01-28 12:06:20 +01:00
Franck Nijhof
65cf2fcb6f
Drop asynctest ( #44746 )
2021-01-01 22:31:56 +01:00
Paulus Schoutsen
2af984917e
Use asynctest-mock in most places ( #35109 )
...
* Use asynctest-mock in most places
* Fix broken patch in pilight
2020-05-03 11:27:19 -07:00
springstan
524a1a7587
Use f-strings in integrations starting with "A" ( #32110 )
...
* Use f-strings in integrations starting with A
* Use f-strings in tests for integrations starting with A
* Fix pylint by renaming variable
* Fix nested for loop in f-string for aprs device_tracker
* Break long lines into multiple short lines
* Break long lines into multiple short lines v2
2020-02-23 13:38:05 -08:00
Ville Skyttä
5216477353
Be consistent with Home Assistant and Hass.io spelling ( #30500 )
...
* Be consistent with Home Assistant spelling
* Be consistent with Hass.io spelling
2020-01-05 14:09:17 +02:00
Bas Nijholt
6ad3b6426a
sort imports according to PEP8 for auth ( #29619 )
2019-12-08 14:55:23 +01:00
Paulus Schoutsen
3231e22ddf
Remove direct authentication via trusted networks or API password ( #27656 )
...
* Remove direct authentication via trusted networks and API password
* Fix tests
2019-10-14 14:56:45 -07:00
Paulus Schoutsen
4de97abc3a
Black
2019-07-31 12:25:30 -07:00
Paulus Schoutsen
d1a621601d
No more opt-out auth ( #18854 )
...
* No more opt-out auth
* Fix var
2018-12-02 16:32:53 +01:00
Paulus Schoutsen
312d49caec
Allow creating signed urls ( #17759 )
...
* Allow creating signed urls
* Fix parameter
* Lint
2018-10-25 16:44:57 +02:00
Jason Hu
ff78a5b04b
Track refresh token last usage information ( #16408 )
...
* Extend refresh_token to support last_used_at and last_used_by
* Address code review comment
* Remove unused code
* Add it to websocket response
* Fix typing
2018-09-12 13:24:16 +02:00
Jason Hu
34d369ba26
Return if refresh token is current used one in WS API ( #16575 )
2018-09-12 09:49:44 +02:00
Paulus Schoutsen
0db13a99aa
Add websocket commands for refresh tokens ( #16559 )
...
* Add websocket commands for refresh tokens
* Comment
2018-09-11 09:08:03 -07:00
Jason Hu
9583947012
Long-lived access token ( #16453 )
...
* Allow create refresh_token with specific access_token_expiration
* Add token_type, client_name and client_icon
* Add unit test
* Add websocket API to create long-lived access token
* Allow URL use as client_id for long-lived access token
* Remove mutate_refresh_token method
* Use client name as id for long_lived_access_token type refresh token
* Minor change
* Do not allow duplicate client name
* Update docstring
* Remove unnecessary `list`
2018-09-11 12:05:15 +02:00
Paulus Schoutsen
cdb8361050
Add support for revoking refresh tokens ( #16095 )
...
* Add support for revoking refresh tokens
* Lint
* Split revoke logic in own method
* Simplify
* Update docs
2018-08-21 11:02:55 -07:00
Jason Hu
f84a31871e
Get user after login flow finished ( #16047 )
...
* Get user after login flow finished
* Add optional parameter 'type' to /auth/login_flow
* Update __init__.py
2018-08-21 10:18:04 +02:00
Paulus Schoutsen
e776f88eec
Use JWT for access tokens ( #15972 )
...
* Use JWT for access tokens
* Update requirements
* Improvements
2018-08-14 21:14:12 +02:00
Jerad Meisner
cbb5d34167
Added user credentials to current_user ws endpoint. ( #15558 )
...
* Added user credentials to current_user ws endpoint.
* Comments. Added another test.
* Return list of credentials.
2018-07-25 10:34:18 +02:00
Paulus Schoutsen
4e7dbf9ce5
Allow system users to refresh tokens ( #15574 )
2018-07-23 14:06:09 +02:00
Paulus Schoutsen
2fcacbff23
Allow auth providers to influence is_active ( #15557 )
...
* Allow auth providers to influence is_active
* Fix auth script test
2018-07-19 22:10:36 +02:00
Paulus Schoutsen
2a76a0852f
Allow CORS requests to token endpoint ( #15519 )
...
* Allow CORS requests to token endpoint
* Tests
* Fuck emulated hue
* Clean up
* Only cors existing methods
2018-07-19 08:37:00 +02:00
Paulus Schoutsen
8797cb78a9
Add current user WS command ( #15485 )
2018-07-17 09:24:51 +02:00
Paulus Schoutsen
864a254071
Aware comments ( #15480 )
...
* Make sure we cannot deactivate the owner
* Use different error code when trying to fetch token for inactive user
2018-07-15 23:09:05 +02:00
Paulus Schoutsen
ed0cfc4f31
Add user via cmd line creates owner ( #15470 )
...
* Add user via cmd line creates owner
* Ensure access tokens are not verified for inactive users
* Stale print
* Lint
2018-07-15 20:46:15 +02:00
Paulus Schoutsen
dbdd0a1f56
Expire auth code after 10 minutes ( #15381 )
2018-07-10 11:20:22 +02:00
Paulus Schoutsen
0d4841cbea
Use IndieAuth for client ID ( #15369 )
...
* Use IndieAuth for client ID
* Lint
* Lint & Fix tests
* Allow local IP addresses
* Update comment
2018-07-09 18:24:46 +02:00
Paulus Schoutsen
5ec7fc7ddb
Backend tweaks to make authorization work ( #14339 )
...
* Backend tweaks to make authorization work
* Lint
* Add test
* Validate redirect uris
* Fix tests
* Fix tests
* Lint
2018-05-10 10:38:11 +02:00
Paulus Schoutsen
cdd45e7878
Foundation for users ( #13968 )
...
* Add initial user foundation to Home Assistant
* Address comments
* Address comments
* Allow non-ascii passwords
* One more utf-8 hmac compare digest
* Add new line
2018-05-01 18:20:41 +02:00