Skip to content

Spec for MSC4341: Support for RFC 8628 Device Authorization Grant#2320

Open
hughns wants to merge 2 commits intomatrix-org:mainfrom
hughns:msc4341
Open

Spec for MSC4341: Support for RFC 8628 Device Authorization Grant#2320
hughns wants to merge 2 commits intomatrix-org:mainfrom
hughns:msc4341

Conversation

@hughns
Copy link
Member

@hughns hughns commented Feb 23, 2026

For MSC4341.

Pull Request Checklist

Signed-off-by: Hugh Nimmo-Smith hughns@element.io

Preview: https://pr2320--matrix-spec-previews.netlify.app

{{% added-in v="1.18" %}}

The device authorization flow allows clients on devices with limited input
capabilities (such as CLI applications or embedded devices) to obtain an
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would argue that it's also useful for native desktop apps. I can see how Element Web could switch to it on desktop, as sometimes the redirect isn't reliable

| `device_code` | The device verification code. |
| `user_code` | An end-user verification code. |
| `verification_uri` | The end-user verification URI on the authorization server. |
| `verification_uri_complete` | Optionally, the URI including the `user_code`, so the user does not need to type it in manually. |
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It technically doesn't require the user_code in the URI but rather information that substitutes the end-user entering that code

The RFC says

OPTIONAL. A verification URI that includes the "user_code" (or
other information with the same function as the "user_code"),
which is designed for non-textual transmission.

Suggested change
| `verification_uri_complete` | Optionally, the URI including the `user_code`, so the user does not need to type it in manually. |
| `verification_uri_complete` | Optionally, the URI which doesn't require the user to manually type the `user_code`, designed for non-textual transmission. |

Comment on lines +70 to +71
URL of the token endpoint, necessary to use the authorization code grant,
device authorization grant and the refresh token grant.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
URL of the token endpoint, necessary to use the authorization code grant,
device authorization grant and the refresh token grant.
URL of the token endpoint, necessary to use the authorization code grant,
device authorization grant and refresh token grant.

or

Suggested change
URL of the token endpoint, necessary to use the authorization code grant,
device authorization grant and the refresh token grant.
URL of the token endpoint, necessary to use the authorization code grant,
the device authorization grant and the refresh token grant.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants