Remove keyId
from the server keys endpoints (#1350)
* Remove keyId from the server keys endpoints It has been deprecated forever. Besides, the OpenAPI 3 spec doesn't allow optional path parameters. Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr> * Add newsfragment Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr> * Fix broken link Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr> * Mention MSC3938 in newfragment Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr> Signed-off-by: Kévin Commaille <zecakeh@tedomum.fr>
This commit is contained in:
parent
eb2456c7d4
commit
9e45037129
5 changed files with 9 additions and 32 deletions
1
changelogs/server_server/newsfragments/1350.breaking
Normal file
1
changelogs/server_server/newsfragments/1350.breaking
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Remove `keyId` from the server `/keys` endpoints, as per [MSC3938](https://github.com/matrix-org/matrix-spec-proposals/pull/3938).
|
|
@ -3,7 +3,7 @@ When validating event signatures, servers MUST enforce the
|
||||||
`valid_until_ts` property from a key request is at least as large as the
|
`valid_until_ts` property from a key request is at least as large as the
|
||||||
`origin_server_ts` for the event being validated. Servers missing a copy
|
`origin_server_ts` for the event being validated. Servers missing a copy
|
||||||
of the signing key MUST try to obtain one via the [GET
|
of the signing key MUST try to obtain one via the [GET
|
||||||
/\_matrix/key/v2/server](/server-server-api#get_matrixkeyv2serverkeyid)
|
/\_matrix/key/v2/server](/server-server-api#get_matrixkeyv2server)
|
||||||
or [POST
|
or [POST
|
||||||
/\_matrix/key/v2/query](/server-server-api#post_matrixkeyv2query)
|
/\_matrix/key/v2/query](/server-server-api#post_matrixkeyv2query)
|
||||||
APIs. When using the `/query` endpoint, servers MUST set the
|
APIs. When using the `/query` endpoint, servers MUST set the
|
||||||
|
|
|
@ -208,11 +208,11 @@ draft](https://github.com/matrix-org/matrix-doc/blob/51faf8ed2e4a63d4cfd6d231836
|
||||||
{{% /boxes/note %}}
|
{{% /boxes/note %}}
|
||||||
|
|
||||||
Each homeserver publishes its public keys under
|
Each homeserver publishes its public keys under
|
||||||
`/_matrix/key/v2/server/{keyId}`. Homeservers query for keys by either
|
`/_matrix/key/v2/server`. Homeservers query for keys by either
|
||||||
getting `/_matrix/key/v2/server/{keyId}` directly or by querying an
|
getting `/_matrix/key/v2/server` directly or by querying an
|
||||||
intermediate notary server using a
|
intermediate notary server using a
|
||||||
`/_matrix/key/v2/query/{serverName}/{keyId}` API. Intermediate notary
|
`/_matrix/key/v2/query/{serverName}` API. Intermediate notary
|
||||||
servers query the `/_matrix/key/v2/server/{keyId}` API on behalf of
|
servers query the `/_matrix/key/v2/server` API on behalf of
|
||||||
another server and sign the response with their own key. A server may
|
another server and sign the response with their own key. A server may
|
||||||
query multiple notary servers to ensure that they all report the same
|
query multiple notary servers to ensure that they all report the same
|
||||||
public keys.
|
public keys.
|
||||||
|
@ -239,7 +239,7 @@ homeserver and for signing events. It contains a list of
|
||||||
Servers may query another server's keys through a notary server. The
|
Servers may query another server's keys through a notary server. The
|
||||||
notary server may be another homeserver. The notary server will retrieve
|
notary server may be another homeserver. The notary server will retrieve
|
||||||
keys from the queried servers through use of the
|
keys from the queried servers through use of the
|
||||||
`/_matrix/key/v2/server/{keyId}` API. The notary server will
|
`/_matrix/key/v2/server` API. The notary server will
|
||||||
additionally sign the response from the queried server before returning
|
additionally sign the response from the queried server before returning
|
||||||
the results.
|
the results.
|
||||||
|
|
||||||
|
|
|
@ -25,7 +25,7 @@ consumes:
|
||||||
produces:
|
produces:
|
||||||
- application/json
|
- application/json
|
||||||
paths:
|
paths:
|
||||||
"/query/{serverName}/{keyId}":
|
"/query/{serverName}":
|
||||||
get:
|
get:
|
||||||
summary: Query for another server's keys
|
summary: Query for another server's keys
|
||||||
description: |-
|
description: |-
|
||||||
|
@ -39,17 +39,6 @@ paths:
|
||||||
description: The server's DNS name to query
|
description: The server's DNS name to query
|
||||||
required: true
|
required: true
|
||||||
x-example: matrix.org
|
x-example: matrix.org
|
||||||
- in: path
|
|
||||||
name: keyId
|
|
||||||
type: string
|
|
||||||
description: |-
|
|
||||||
**Deprecated**. Servers should not use this parameter and instead
|
|
||||||
opt to return all keys, not just the requested one. The key ID to
|
|
||||||
look up.
|
|
||||||
|
|
||||||
When excluded, the trailing slash on this endpoint is optional.
|
|
||||||
required: false
|
|
||||||
x-example: "ed25519:abc123"
|
|
||||||
- in: query
|
- in: query
|
||||||
name: minimum_valid_until_ts
|
name: minimum_valid_until_ts
|
||||||
type: integer
|
type: integer
|
||||||
|
|
|
@ -23,7 +23,7 @@ basePath: /_matrix/key/v2
|
||||||
produces:
|
produces:
|
||||||
- application/json
|
- application/json
|
||||||
paths:
|
paths:
|
||||||
"/server/{keyId}":
|
"/server":
|
||||||
get:
|
get:
|
||||||
summary: Get the homeserver's public key(s)
|
summary: Get the homeserver's public key(s)
|
||||||
description: |-
|
description: |-
|
||||||
|
@ -43,19 +43,6 @@ paths:
|
||||||
from the server so that the signatures of old events can still be
|
from the server so that the signatures of old events can still be
|
||||||
checked.
|
checked.
|
||||||
operationId: getServerKey
|
operationId: getServerKey
|
||||||
parameters:
|
|
||||||
- in: path
|
|
||||||
name: keyId
|
|
||||||
type: string
|
|
||||||
description: |-
|
|
||||||
**Deprecated**. Servers should not use this parameter and instead
|
|
||||||
opt to return all keys, not just the requested one. The key ID to
|
|
||||||
look up.
|
|
||||||
|
|
||||||
When excluded, the trailing slash on this endpoint is optional.
|
|
||||||
required: false
|
|
||||||
x-example: "ed25519:abc123"
|
|
||||||
deprecated: true
|
|
||||||
responses:
|
responses:
|
||||||
200:
|
200:
|
||||||
description: The homeserver's keys
|
description: The homeserver's keys
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue