mirror of
https://github.com/matrix-org/matrix-spec
synced 2026-04-26 12:34:11 +02:00
Compare commits
7 commits
600bc5fd1a
...
978e91b600
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
978e91b600 | ||
|
|
690c41e33b | ||
|
|
d55acfda2e | ||
|
|
70d2005743 | ||
|
|
293012d12f | ||
|
|
80c6ffd1d8 | ||
|
|
8350b88a3d |
1
changelogs/client_server/newsfragments/2270.feature
Normal file
1
changelogs/client_server/newsfragments/2270.feature
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
Add the account management capabilities for the OAuth 2.0 authentication API, as per [MSC4191](https://github.com/matrix-org/matrix-spec-proposals/pull/4191).
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
Update non-historic mentions of matrix-doc repo to matrix-spec/-proposals. Contributed by @HarHarLinks.
|
||||||
|
|
@ -0,0 +1 @@
|
||||||
|
Remove unintended TeX formatting. Contributed by @HarHarLinks.
|
||||||
|
|
@ -645,7 +645,7 @@ manage their account like [changing their password](#password-management),
|
||||||
[deactivating their account](#account-deactivation).
|
[deactivating their account](#account-deactivation).
|
||||||
|
|
||||||
With the OAuth 2.0 API, all account management is done via the homeserver's web
|
With the OAuth 2.0 API, all account management is done via the homeserver's web
|
||||||
UI.
|
UI that can be accessed by users via the [account management URL](#oauth-20-account-management).
|
||||||
|
|
||||||
### Legacy API
|
### Legacy API
|
||||||
|
|
||||||
|
|
@ -2271,6 +2271,56 @@ The server SHOULD return one of the following responses:
|
||||||
- For other errors, the server returns a `400 Bad Request` response with error
|
- For other errors, the server returns a `400 Bad Request` response with error
|
||||||
details
|
details
|
||||||
|
|
||||||
|
#### Account management {id="oauth-20-account-management"}
|
||||||
|
|
||||||
|
{{% added-in v="1.18" %}}
|
||||||
|
|
||||||
|
All account management is done via the homeserver’s web UI as all endpoints that
|
||||||
|
require User-Interactive Authentication are unsupported by this authentication
|
||||||
|
API.
|
||||||
|
|
||||||
|
This specification defines extensions to the [OAuth Authorization Server
|
||||||
|
Metadata registry](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#authorization-server-metadata)
|
||||||
|
to offer clients a way to deep-link to the account management capabilities of
|
||||||
|
the homeserver to allow the user to complete the account management operations
|
||||||
|
in a browser.
|
||||||
|
|
||||||
|
##### Account management URL discovery
|
||||||
|
|
||||||
|
The [OAuth 2.0 authorization server metadata](#server-metadata-discovery) is
|
||||||
|
extended to include the following fields:
|
||||||
|
|
||||||
|
| Field | Description |
|
||||||
|
|----------------------------------------|-------------------------------------------------------------------------------------------------|
|
||||||
|
| `account_management_uri` | The URL where the user is able to access the account management capabilities of the homeserver. |
|
||||||
|
| `account_management_actions_supported` | An array of actions that the account management URL supports, as defined below. |
|
||||||
|
|
||||||
|
##### Account management URL parameters
|
||||||
|
|
||||||
|
The account management URL MAY accept the following query parameters:
|
||||||
|
|
||||||
|
| Parameter | Description |
|
||||||
|
|-------------|---------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
| `action` | **Optional**. The action that the user wishes to take. Must match one of the actions in `account_management_actions_supported` above. |
|
||||||
|
| `device_id` | **Optional**. Identifies a particular Matrix device ID for actions that support it. |
|
||||||
|
|
||||||
|
If the `org.matrix.device_view` or `org.matrix.device_delete` actions are
|
||||||
|
advertised as supported by the server then the server SHOULD support the
|
||||||
|
`device_id` parameter.
|
||||||
|
|
||||||
|
##### Account management URL actions
|
||||||
|
|
||||||
|
The following account management actions are defined:
|
||||||
|
|
||||||
|
| Action | Description |
|
||||||
|
|----------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
| `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. A `device_id` should be provided. |
|
||||||
|
| `org.matrix.device_delete` | The user wishes to delete/log out a specific device. A `device_id` should be provided. |
|
||||||
|
| `org.matrix.account_deactivate` | The user wishes to deactivate their account. |
|
||||||
|
| `org.matrix.cross_signing_reset` | The user wishes to reset their cross-signing identity. Servers SHOULD use this action in the URL of the [`m.oauth`](#oauth-authentication) UIA type. |
|
||||||
|
|
||||||
### Account moderation
|
### Account moderation
|
||||||
|
|
||||||
#### Account locking
|
#### Account locking
|
||||||
|
|
|
||||||
|
|
@ -87,7 +87,7 @@ Matrix 1.12 is expected to be released in the July-September 2024 calendar quart
|
||||||
The homeserver SHOULD be able to supply thumbnails for uploaded images
|
The homeserver SHOULD be able to supply thumbnails for uploaded images
|
||||||
and videos. The exact file types which can be thumbnailed are not
|
and videos. The exact file types which can be thumbnailed are not
|
||||||
currently specified - see [Issue
|
currently specified - see [Issue
|
||||||
\#1938](https://github.com/matrix-org/matrix-doc/issues/1938) for more
|
\#1938](https://github.com/matrix-org/matrix-spec/issues/453) for more
|
||||||
information.
|
information.
|
||||||
|
|
||||||
The thumbnail methods are "crop" and "scale". "scale" tries to return an
|
The thumbnail methods are "crop" and "scale". "scale" tries to return an
|
||||||
|
|
|
||||||
|
|
@ -921,7 +921,7 @@ collaborate to create a common set of translations for all languages.
|
||||||
|
|
||||||
{{% boxes/note %}}
|
{{% boxes/note %}}
|
||||||
Known translations for the emoji are available from
|
Known translations for the emoji are available from
|
||||||
<https://github.com/matrix-org/matrix-doc/blob/master/data-definitions/>
|
<https://github.com/matrix-org/matrix-spec/tree/main/data-definitions/>
|
||||||
and can be translated online:
|
and can be translated online:
|
||||||
<https://translate.riot.im/projects/matrix-doc/sas-emoji-v1>
|
<https://translate.riot.im/projects/matrix-doc/sas-emoji-v1>
|
||||||
{{% /boxes/note %}}
|
{{% /boxes/note %}}
|
||||||
|
|
|
||||||
|
|
@ -119,7 +119,7 @@ Clients SHOULD verify the structure of incoming events to ensure that
|
||||||
the expected keys exist and that they are of the right type. Clients can
|
the expected keys exist and that they are of the right type. Clients can
|
||||||
discard malformed events or display a placeholder message to the user.
|
discard malformed events or display a placeholder message to the user.
|
||||||
Redacted `m.room.message` events MUST be removed from the client. This
|
Redacted `m.room.message` events MUST be removed from the client. This
|
||||||
can either be replaced with placeholder text (e.g. "\[REDACTED\]") or
|
can either be replaced with placeholder text (e.g. "[REDACTED]") or
|
||||||
the redacted message can be removed entirely from the messages view.
|
the redacted message can be removed entirely from the messages view.
|
||||||
|
|
||||||
Events which have attachments (e.g. `m.image`, `m.file`) SHOULD be
|
Events which have attachments (e.g. `m.image`, `m.file`) SHOULD be
|
||||||
|
|
|
||||||
|
|
@ -139,6 +139,32 @@ paths:
|
||||||
items:
|
items:
|
||||||
type: string
|
type: string
|
||||||
description: A prompt value that the server supports.
|
description: A prompt value that the server supports.
|
||||||
|
account_management_uri:
|
||||||
|
x-addedInMatrixVersion: "1.18"
|
||||||
|
type: string
|
||||||
|
format: uri
|
||||||
|
description: |-
|
||||||
|
The URL where the user is able to access the account management capabilities
|
||||||
|
of the homeserver.
|
||||||
|
|
||||||
|
This is an extension [defined in this specification](/client-server-api/#oauth-20-account-management).
|
||||||
|
account_management_actions_supported:
|
||||||
|
x-addedInMatrixVersion: "1.18"
|
||||||
|
type: array
|
||||||
|
description: |-
|
||||||
|
List of actions that the account management URL supports.
|
||||||
|
|
||||||
|
This is an extension [defined in this specification](/client-server-api/#oauth-20-account-management).
|
||||||
|
items:
|
||||||
|
type: string
|
||||||
|
enum:
|
||||||
|
- "org.matrix.profile"
|
||||||
|
- "org.matrix.devices_list"
|
||||||
|
- "org.matrix.device_view"
|
||||||
|
- "org.matrix.device_delete"
|
||||||
|
- "org.matrix.account_deactivate"
|
||||||
|
- "org.matrix.cross_signing_reset"
|
||||||
|
description: An action that the account management URL supports.
|
||||||
required:
|
required:
|
||||||
- issuer
|
- issuer
|
||||||
- authorization_endpoint
|
- authorization_endpoint
|
||||||
|
|
|
||||||
|
|
@ -223,7 +223,7 @@ paths:
|
||||||
type: string
|
type: string
|
||||||
# XXX: As mentioned in MSC1227, replacing `[not_]membership` with a JSON
|
# XXX: As mentioned in MSC1227, replacing `[not_]membership` with a JSON
|
||||||
# filter might be a better alternative.
|
# filter might be a better alternative.
|
||||||
# See https://github.com/matrix-org/matrix-doc/issues/1337
|
# See https://github.com/matrix-org/matrix-doc/issues/1227
|
||||||
- in: query
|
- in: query
|
||||||
name: membership
|
name: membership
|
||||||
description: |-
|
description: |-
|
||||||
|
|
|
||||||
|
|
@ -78,7 +78,7 @@ paths:
|
||||||
},
|
},
|
||||||
"room": {
|
"room": {
|
||||||
"regexp": "[^\\s]+\\/[^\\s]+",
|
"regexp": "[^\\s]+\\/[^\\s]+",
|
||||||
"placeholder": "matrix-org/matrix-doc"
|
"placeholder": "matrix-org/matrix-spec"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"instances": [
|
"instances": [
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@
|
||||||
* in the specification.
|
* in the specification.
|
||||||
*
|
*
|
||||||
* In detail, it:
|
* In detail, it:
|
||||||
* - fetches all GitHub issues from matrix-doc that have the `proposal` label
|
* - fetches all GitHub issues from matrix-spec-proposals that have the `proposal` label
|
||||||
* - groups them by their state in the MSC process
|
* - groups them by their state in the MSC process
|
||||||
* - does some light massaging of them so it's easier for the Hugo template to work with them
|
* - does some light massaging of them so it's easier for the Hugo template to work with them
|
||||||
* - store them at /data/msc
|
* - store them at /data/msc
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue