MSC2918 Refresh tokens implementation (#9450)
This implements refresh tokens, as defined by MSC2918
This MSC has been implemented client side in Hydrogen Web: vector-im/hydrogen-web#235
The basics of the MSC works: requesting refresh tokens on login, having the access tokens expire, and using the refresh token to get a new one.
Signed-off-by:
Quentin Gliech <quentingliech@gmail.com>
Showing
- changelog.d/9450.feature 1 addition, 0 deletionschangelog.d/9450.feature
- scripts/synapse_port_db 3 additions, 1 deletionscripts/synapse_port_db
- synapse/api/auth.py 5 additions, 0 deletionssynapse/api/auth.py
- synapse/config/registration.py 21 additions, 0 deletionssynapse/config/registration.py
- synapse/handlers/auth.py 127 additions, 5 deletionssynapse/handlers/auth.py
- synapse/handlers/register.py 46 additions, 6 deletionssynapse/handlers/register.py
- synapse/module_api/__init__.py 1 addition, 1 deletionsynapse/module_api/__init__.py
- synapse/replication/http/login.py 12 additions, 1 deletionsynapse/replication/http/login.py
- synapse/rest/client/v1/login.py 148 additions, 23 deletionssynapse/rest/client/v1/login.py
- synapse/rest/client/v2_alpha/register.py 70 additions, 18 deletionssynapse/rest/client/v2_alpha/register.py
- synapse/storage/databases/main/registration.py 203 additions, 4 deletionssynapse/storage/databases/main/registration.py
- synapse/storage/schema/main/delta/59/14refresh_tokens.sql 34 additions, 0 deletionssynapse/storage/schema/main/delta/59/14refresh_tokens.sql
- tests/api/test_auth.py 1 addition, 0 deletionstests/api/test_auth.py
- tests/handlers/test_device.py 1 addition, 1 deletiontests/handlers/test_device.py
- tests/rest/client/v2_alpha/test_auth.py 219 additions, 1 deletiontests/rest/client/v2_alpha/test_auth.py
Loading
Please register or sign in to comment