Update action values and reorder sections for readability

quenting/account-deeplink
Hugh Nimmo-Smith 2 months ago
parent de46f566b5
commit 9e1fbf5ac2

@ -28,32 +28,39 @@ least formally registered in the
[IANA Registry for Server Metadata](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#authorization-server-metadata). [IANA Registry for Server Metadata](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#authorization-server-metadata).
This is why the metadata fields are not prefixed with `org.matrix.`, but the actions themselves are. This is why the metadata fields are not prefixed with `org.matrix.`, but the actions themselves are.
### Possible actions
The following actions are defined by this MSC:
- `org.matrix.profile` - The user wishes to view/edit their profile (name, avatar, contact details).
- `org.matrix.sessions_list` - The user wishes to view a list of their sessions.
- `org.matrix.session_view` - The user wishes to view the details of a specific session.
- `org.matrix.session_end` - The user wishes to end/logout a specific session.
- `org.matrix.account_deactivate` - The user wishes to deactivate their account.
Subsequent MSCs may extend this list.
### Account management URL parameters ### Account management URL parameters
The account management URL (as provided above) may accept the following additional query parameters: The account management URL (as provided above) may accept the following additional query parameters:
- `action` - Can be used to indicate the action that the user wishes to take, as defined above. - `action` - Can be used to indicate the action that the user wishes to take, as defined below.
- `device_id` - This can be used to identify a particular session for `org.matrix.session_view` and - `device_id` - This can be used to identify a particular session for `org.matrix.device_view` and
`org.matrix.session_end`. This is the Matrix device ID. `org.matrix.device_delete`. This is the Matrix device ID.
For example, if a user wishes to sign out a session for the device `ABCDEFGH` where the advertised For example, if a user wishes to sign out a session for the device `ABCDEFGH` where the advertised
`account_management_uri` was `https://account.example.com/myaccount` the client could open a link to `account_management_uri` was `https://account.example.com/myaccount` the client could open a link to
`https://account.example.com/myaccount?action=org.matrix.session_end&device_id=ABCDEFGH`. `https://account.example.com/myaccount?action=org.matrix.session_end&device_id=ABCDEFGH`.
Not all actions need to be supported by the account management URL, and the client should only use the actions Not all actions need to be supported by the account management URL, and the client should only use the actions
advertised in the `account_management_actions_supported` array. advertised in the `account_management_actions_supported` array from above.
If the `org.matrix.device_view` or `org.matrix.device_delete` are advertised as supported by the
server then the server should support the `device_id` parameter.
### Possible actions
The following account management actions are defined by this MSC:
- `org.matrix.profile` - The user wishes to view/edit their profile (name, avatar, contact details).
- `org.matrix.devices_list` - The user wishes to view a list of their devices.
- `org.matrix.device_view` - The user wishes to view the details of a specific device.
- `org.matrix.device_delete` - The user wishes to delete/logout a specific device.
- `org.matrix.account_deactivate` - The user wishes to deactivate their account.
Subsequent MSCs may extend this list.
These actions are prefixed with the full `org.matrix.` (rather than the more compact `m.`) because
if the IANA registration/OIDC adoption goes ahead then these values would be more clearly namespaced
to Matrix.
## Alternatives ## Alternatives
@ -113,3 +120,11 @@ Whilst in development the fields in the server metadata discovery should be pref
- `org.matrix.msc4191.account_management_uri` instead of `account_management_uri` - `org.matrix.msc4191.account_management_uri` instead of `account_management_uri`
- `org.matrix.msc4191.account_management_actions_supported` instead of `account_management_actions_supported` - `org.matrix.msc4191.account_management_actions_supported` instead of `account_management_actions_supported`
For future reference, the following unstable action values are known to have been used in prototype
implementations:
- `org.matrix.profile`: `profile`
- `org.matrix.devices_list`: `sessions_list`, `org.matrix.sessions_list`
- `org.matrix.device_view`: `session_view`, `org.matrix.session_view`
- `org.matrix.device_delete` - `session_end`, `org.matrix.session_end`

Loading…
Cancel
Save