mirror of
https://github.com/element-hq/synapse.git
synced 2024-11-24 02:25:45 +03:00
Stabilise MSC3231 (Token Based Registration) (#11867)
This commit is contained in:
parent
b3d155a749
commit
02632b3504
8 changed files with 28 additions and 9 deletions
5
changelog.d/11867.feature
Normal file
5
changelog.d/11867.feature
Normal file
|
@ -0,0 +1,5 @@
|
|||
Stabilize [MSC3231](https://github.com/matrix-org/matrix-doc/pull/3231).
|
||||
|
||||
Client implementations using `m.login.registration_token` should switch to the stable identifiers:
|
||||
* `org.matrix.msc3231.login.registration_token` in query parameters and request/response bodies becomes `m.login.registration_token`.
|
||||
* `/_matrix/client/unstable/org.matrix.msc3231/register/org.matrix.msc3231.login.registration_token/validity` becomes `/_matrix/client/v1/register/m.login.registration_token/validity`.
|
|
@ -148,7 +148,7 @@ Here's an example featuring all currently supported keys:
|
|||
"address": "33123456789",
|
||||
"validated_at": 1642701357084,
|
||||
},
|
||||
"org.matrix.msc3231.login.registration_token": "sometoken", # User has registered through the flow described in MSC3231
|
||||
"m.login.registration_token": "sometoken", # User has registered through a registration token
|
||||
}
|
||||
```
|
||||
|
||||
|
|
|
@ -84,6 +84,21 @@ process, for example:
|
|||
wget https://packages.matrix.org/debian/pool/main/m/matrix-synapse-py3/matrix-synapse-py3_1.3.0+stretch1_amd64.deb
|
||||
dpkg -i matrix-synapse-py3_1.3.0+stretch1_amd64.deb
|
||||
```
|
||||
# Upgrading to v1.(next)
|
||||
|
||||
## Stablisation of MSC3231
|
||||
|
||||
The unstable validity-check endpoint for the
|
||||
[Registration Tokens](https://spec.matrix.org/v1.2/client-server-api/#get_matrixclientv1registermloginregistration_tokenvalidity)
|
||||
feature has been stabilised and moved from:
|
||||
|
||||
`/_matrix/client/unstable/org.matrix.msc3231/register/org.matrix.msc3231.login.registration_token/validity`
|
||||
|
||||
to:
|
||||
|
||||
`/_matrix/client/v1/register/m.login.registration_token/validity`
|
||||
|
||||
Please update any relevant reverse proxy or firewall configurations appropriately.
|
||||
|
||||
# Upgrading to v1.53.0
|
||||
|
||||
|
|
|
@ -241,7 +241,7 @@ expressions:
|
|||
# Registration/login requests
|
||||
^/_matrix/client/(api/v1|r0|v3|unstable)/login$
|
||||
^/_matrix/client/(r0|v3|unstable)/register$
|
||||
^/_matrix/client/unstable/org.matrix.msc3231/register/org.matrix.msc3231.login.registration_token/validity$
|
||||
^/_matrix/client/v1/register/m.login.registration_token/validity$
|
||||
|
||||
# Event sending requests
|
||||
^/_matrix/client/(api/v1|r0|v3|unstable)/rooms/.*/redact
|
||||
|
|
|
@ -81,7 +81,7 @@ class LoginType:
|
|||
TERMS: Final = "m.login.terms"
|
||||
SSO: Final = "m.login.sso"
|
||||
DUMMY: Final = "m.login.dummy"
|
||||
REGISTRATION_TOKEN: Final = "org.matrix.msc3231.login.registration_token"
|
||||
REGISTRATION_TOKEN: Final = "m.login.registration_token"
|
||||
|
||||
|
||||
# This is used in the `type` parameter for /register when called by
|
||||
|
|
|
@ -38,4 +38,4 @@ class UIAuthSessionDataConstants:
|
|||
# used during registration to store the registration token used (if required) so that:
|
||||
# - we can prevent a token being used twice by one session
|
||||
# - we can 'use up' the token after registration has successfully completed
|
||||
REGISTRATION_TOKEN = "org.matrix.msc3231.login.registration_token"
|
||||
REGISTRATION_TOKEN = "m.login.registration_token"
|
||||
|
|
|
@ -368,7 +368,7 @@ class RegistrationTokenValidityRestServlet(RestServlet):
|
|||
|
||||
Example:
|
||||
|
||||
GET /_matrix/client/unstable/org.matrix.msc3231/register/org.matrix.msc3231.login.registration_token/validity?token=abcd
|
||||
GET /_matrix/client/v1/register/m.login.registration_token/validity?token=abcd
|
||||
|
||||
200 OK
|
||||
|
||||
|
@ -378,9 +378,8 @@ class RegistrationTokenValidityRestServlet(RestServlet):
|
|||
"""
|
||||
|
||||
PATTERNS = client_patterns(
|
||||
f"/org.matrix.msc3231/register/{LoginType.REGISTRATION_TOKEN}/validity",
|
||||
releases=(),
|
||||
unstable=True,
|
||||
f"/register/{LoginType.REGISTRATION_TOKEN}/validity",
|
||||
releases=("v1",),
|
||||
)
|
||||
|
||||
def __init__(self, hs: "HomeServer"):
|
||||
|
|
|
@ -1154,7 +1154,7 @@ class AccountValidityBackgroundJobTestCase(unittest.HomeserverTestCase):
|
|||
|
||||
class RegistrationTokenValidityRestServletTestCase(unittest.HomeserverTestCase):
|
||||
servlets = [register.register_servlets]
|
||||
url = "/_matrix/client/unstable/org.matrix.msc3231/register/org.matrix.msc3231.login.registration_token/validity"
|
||||
url = "/_matrix/client/v1/register/m.login.registration_token/validity"
|
||||
|
||||
def default_config(self):
|
||||
config = super().default_config()
|
||||
|
|
Loading…
Reference in a new issue