zulip/zproject
Alessandro Toppi ff89590558 auth: Add JWT-based user API key fetch.
This adds a new endpoint /jwt/fetch_api_key that accepts a JWT and can
be used to fetch API keys for a certain user. The target realm is
inferred from the request and the user email is part of the JWT.

A JSON containing an user API key, delivery email and (optionally)
raw user profile data is returned in response.
The profile data in the response is optional and can be retrieved by
setting the POST param "include_profile" to "true" (default=false).

Co-authored-by: Mateusz Mandera <mateusz.mandera@zulip.com>
2023-02-03 15:23:35 -08:00
..
jinja2 ruff: Fix S701 Consider using `autoescape=True`. 2023-01-26 10:16:30 -08:00
__init__.py
backends.py black: Reformat with Black 23. 2023-02-02 10:40:13 -08:00
computed_settings.py ruff: Fix S108 Probable insecure usage of temporary file. 2023-01-26 10:14:56 -08:00
config.py config: Remove Django base class from ZulipSettingsError. 2022-09-26 12:42:36 -07:00
configured_settings.py ruff: Fix M001 Unused `noqa` directive. 2022-11-03 12:10:15 -07:00
default_settings.py auth: Add JWT-based user API key fetch. 2023-02-03 15:23:35 -08:00
dev_settings.py uploads: Set X-Accel-Redirect manually, without using django-sendfile2. 2023-01-09 18:23:58 -05:00
dev_urls.py avatars: Serve /user_avatars/ through Django, which offloads to nginx. 2023-01-09 18:23:58 -05:00
email_backends.py email_backends: Fix type annotation of EmailLogBackEnd. 2022-07-29 14:58:11 -07:00
legacy_urls.py legacy_urls: Add type annotation to legacy_urls. 2022-08-12 17:08:04 -07:00
prod_settings.pyi lint: Replace pycodestyle and pyflakes with ruff. 2022-11-03 12:10:15 -07:00
prod_settings_template.py auth: Add JWT-based user API key fetch. 2023-02-03 15:23:35 -08:00
sentry.py requirements: Upgrade Python requirements. 2022-06-01 16:01:54 -07:00
settings.py ruff: Fix M001 Unused `noqa` directive. 2022-11-03 12:10:15 -07:00
settings_types.py settings_type: Extract new module for types used in settings. 2022-09-26 12:42:36 -07:00
template_loaders.py template_loaders: Extract TwoFactorLoader to new module. 2022-09-26 12:42:36 -07:00
test_extra_settings.py settings_type: Extract new module for types used in settings. 2022-09-26 12:42:36 -07:00
test_settings.py ruff: Fix M001 Unused `noqa` directive. 2022-11-03 12:10:15 -07:00
urls.py auth: Add JWT-based user API key fetch. 2023-02-03 15:23:35 -08:00
wsgi.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00