57 lines
3.1 KiB
Markdown
57 lines
3.1 KiB
Markdown
# MSC4127: Removal of query string auth
|
|
|
|
See [MSC4126](https://github.com/matrix-org/matrix-spec-proposals/pull/4126) for details on query
|
|
string authentication and the prerequisite deprecation.
|
|
|
|
## Proposal
|
|
|
|
Query string authentication becomes *removed* from the [Client-Server API](https://spec.matrix.org/v1.10/client-server-api/#using-access-tokens)
|
|
and [Identity Service API](https://spec.matrix.org/v1.10/identity-service-api/#authentication).
|
|
|
|
The prior deprecation required by the [deprecation policy](https://spec.matrix.org/v1.10/#deprecation-policy)
|
|
is described by [MSC4126](https://github.com/matrix-org/matrix-spec-proposals/pull/4126).
|
|
|
|
As a process note, it was considered to bundle the deprecation and removal into MSC4126 instead of
|
|
having two separate MSCs, breaking the deprecation policy slightly, though this introduces consequences
|
|
which are, in the author's opinion, undesirable. Specifically, the spec release changelog for the
|
|
deprecation would say "as per MSC4126" and imply the MSC being moved to the [merged](https://spec.matrix.org/proposals/#process)
|
|
state, however the second half of the MSC (the feature removal) would not have landed yet. This would
|
|
leave the MSC stuck in an awkward `spec-pr-missing` state because half of it had not been written up
|
|
or landed yet. To maintain a clearer changelog, ease process considerations, and give clients another
|
|
opportunity to object to the removal, the two MSC approach required by the deprecation policy is best.
|
|
|
|
## Potential issues
|
|
|
|
See [MSC4126](https://github.com/matrix-org/matrix-spec-proposals/pull/4126).
|
|
|
|
## Alternatives
|
|
|
|
See [MSC4126](https://github.com/matrix-org/matrix-spec-proposals/pull/4126).
|
|
|
|
More of a process note, during drafting of this proposal the author considered combining the deprecation
|
|
and removal into a single MSC, against the advice of the deprecation policy. The aim was to reduce
|
|
process burden and more quickly get the security risk removed from the specification, though merging
|
|
both operations into a single MSC potentially makes the spec release changelog unclear and leaves the
|
|
MSC in an awkward released-but-not-merged state. To avoid figuring out how to navigate the process
|
|
states, increasing the process burden rather than decreasing it, the deprecation policy's two MSC
|
|
requirement has been followed here. However, there are still other process efficiencies which can
|
|
take place - see the "Dependencies" section of this MSC for details.
|
|
|
|
## Security considerations
|
|
|
|
See [MSC4126](https://github.com/matrix-org/matrix-spec-proposals/pull/4126).
|
|
|
|
## Unstable prefix
|
|
|
|
This proposal cannot feasibly have an unstable prefix. Clients are already discouraged from using
|
|
query string authentication and should switch to `Authorization` as soon as possible, regardless of
|
|
this MSC.
|
|
|
|
See [MSC4126](https://github.com/matrix-org/matrix-spec-proposals/pull/4126) for related details.
|
|
|
|
## Dependencies
|
|
|
|
[MSC4126](https://github.com/matrix-org/matrix-spec-proposals/pull/4126) must be *released* in the
|
|
specification before this proposal can be merged, though this MSC *may* progress through Final Comment
|
|
Period concurrent to MSC4126 if desirable.
|