Kim Alvefur <zash@zash.se> [Wed, 16 Aug 2023 23:56:40 +0200] rev 5637
mod_http_oauth2: Allow omitting application type for native apps
This derives "application_type":"native" from the first redirect URI
when registering a client, so that it can be omitted without the default
value of "web" causing the very same redirect URIs to be rejected.
Kim Alvefur <zash@zash.se> [Wed, 16 Aug 2023 11:17:28 +0200] rev 5636
mod_client_management: Show timestamp of first client appearance
Kim Alvefur <zash@zash.se> [Tue, 08 Aug 2023 17:04:50 +0200] rev 5635
mod_http_oauth2: Improve templates
XML-ness by avoiding value-less attributes or whatever they're called
Plus some Aria label tweaks
Kim Alvefur <zash@zash.se> [Mon, 07 Aug 2023 22:52:14 +0200] rev 5634
mod_http_oauth2: Add autocomplete hint to username field
Kim Alvefur <zash@zash.se> [Sun, 06 Aug 2023 12:07:05 +0200] rev 5633
mod_http_oauth2: Make storage of various code more consistent
I'm not sure how any of this worked at all.
Kim Alvefur <zash@zash.se> [Fri, 04 Aug 2023 01:11:01 +0200] rev 5632
mod_http_oauth2: Bail on invalid or expired device flow state token
Kim Alvefur <zash@zash.se> [Mon, 31 Jul 2023 07:28:09 +0200] rev 5631
mod_http_oauth2: Tweak method of centering the UI
The percentage here was relative to the viewport width, which on some
very wide screens may put the UI slightly outside of the view, requiring
scrolling to see.
By using a unit relative to the height of the viewport, this is avoided
and should work better. But no guarantees, it's still possible to resize
the browser or adjust font sizes so that the UI goes out of view.
Kim Alvefur <zash@zash.se> [Mon, 31 Jul 2023 02:07:58 +0200] rev 5630
mod_http_oauth2: Optionally enforce authentication on revocation endpoint
But why do OAuth require this? If a token leaks, why couldn't anyone
revoke it?
Kim Alvefur <zash@zash.se> [Mon, 31 Jul 2023 02:07:24 +0200] rev 5629
mod_http_oauth2: Present errors in HTML <dialog>
Nice semantic things that don't require JavaScript
Kim Alvefur <zash@zash.se> [Mon, 31 Jul 2023 02:05:49 +0200] rev 5628
mod_http_oauth2: Move site name into <header>
Because it's the site header
Kim Alvefur <zash@zash.se> [Mon, 31 Jul 2023 02:04:05 +0200] rev 5627
mod_http_oauth2: Conform to XHTML in templates
Mostly because pedantic. Seems appropriate.
Nice to be able to use an XML parser.
Kim Alvefur <zash@zash.se> [Thu, 27 Jul 2023 15:04:38 +0200] rev 5626
mod_s2sout_override: Add support for one-level wildcards (e.g. *.example.net)
Kim Alvefur <zash@zash.se> [Thu, 27 Jul 2023 15:00:26 +0200] rev 5625
mod_s2sout_override: Add support for a catch-all target
Kim Alvefur <zash@zash.se> [Wed, 26 Jul 2023 16:23:13 +0200] rev 5624
mod_invites_page: Produce URL without config from prosodyctl in trunk
Requires Prosody trunk rev 5884d58707fa or later.
Kim Alvefur <zash@zash.se> [Tue, 25 Jul 2023 11:01:58 +0200] rev 5623
mod_http_oauth2: Don't use new time period API just yet
Mistake in commit splitting, this was meant for later.
On the other hand, this is trunk only anyway.
Kim Alvefur <zash@zash.se> [Mon, 24 Jul 2023 01:26:41 +0200] rev 5622
mod_http_oauth2: Clean cache less frequently
Seems unlikely that enough unused and expired codes accumulate to
warrant an hourly job.
Kim Alvefur <zash@zash.se> [Mon, 24 Jul 2023 01:30:14 +0200] rev 5621
mod_http_oauth2: Shorten default token validity periods
With refresh tokens, short lifetime for access tokens is not a problem.
The arbitrary choice of one hour seems reasonable. RFC 6749 has it as
example value.
One week for refresh tokens matching the default archive retention
period. This means that a client that remains unused for one week will
have to sign in again. An actively used client will continually push
that forward with each used refresh token.
Kim Alvefur <zash@zash.se> [Sun, 23 Jul 2023 02:56:08 +0200] rev 5620
mod_http_oauth2: Implement refresh token rotation
Makes refresh tokens one-time-use, handing out a new refresh token with
each access token. Thus if a refresh token is stolen and used by an
attacker, the next time the legitimate client tries to use the previous
refresh token, it will not work and the attack will be noticed. If the
attacker does not use the refresh token, it becomes invalid after the
legitimate client uses it.
This behavior is recommended by draft-ietf-oauth-security-topics
Kim Alvefur <zash@zash.se> [Fri, 21 Jul 2023 00:38:04 +0200] rev 5619
mod_http_oauth2: Hint at future deprecation of resource owner password grant
It is strongly discouraged by all the modern OAuth 2.0 (and 2.1) documents.
Kim Alvefur <zash@zash.se> [Fri, 21 Jul 2023 00:37:34 +0200] rev 5618
mod_http_oauth2: Allow a shorter form of the device grant in config
Long URI is long
Kim Alvefur <zash@zash.se> [Fri, 21 Jul 2023 00:29:24 +0200] rev 5617
mod_http_oauth2: Mention Device flow in list of flows in README
Kim Alvefur <zash@zash.se> [Thu, 20 Jul 2023 10:38:33 +0200] rev 5616
mod_muc_moderation: Stamp XEP-0421 occupant-id for the acting moderator
Gives clients some hint about which moderator it was who did the deed.
The @by attribute does have the nick of the actor, but they could change
their nickname at some point, which is what occupant-id solves.
Ref #1816
Kim Alvefur <zash@zash.se> [Thu, 20 Jul 2023 10:37:27 +0200] rev 5615
mod_muc_moderation: Copy XEP-0421 occupant-id from retracted message
Lets clients correlate the sender of whatever was retracted by
moderators. Behavior limited to Prosody 0.12, otherwise there are no
assurances of the origin of the occupant-id tag.
Ref #1816
Kim Alvefur <zash@zash.se> [Wed, 19 Jul 2023 17:01:40 +0200] rev 5614
mod_muc_block_pm: Advertise that Moderators are allowed to send PMs
But there appears to be no way in XEP-0045 to advertise that Anyone can
send PMs *to* Moderators.
Kim Alvefur <zash@zash.se> [Wed, 19 Jul 2023 16:59:16 +0200] rev 5613
mod_muc_block_pm: Allow private messages to yourself
No harm in it.
Beagle apparently uses it for XEP-0333 in public channels
Kim Alvefur <zash@zash.se> [Wed, 19 Jul 2023 13:05:47 +0200] rev 5612
mod_http_oauth2: Show errors on device flow user code entry page
If the user enters the code incorrectly, having to click back to try
again is no fun. Instead, show the error and the code entry form again.
Kim Alvefur <zash@zash.se> [Wed, 19 Jul 2023 12:58:04 +0200] rev 5611
mod_http_oauth2: Namespace the various codes to minimize confusion
Both for the programmer and in OAuth flows.
While unlikely, it should not be possible to cause weirdness e.g. by
typing a client id and authorization code into the device code entry.
Kim Alvefur <zash@zash.se> [Mon, 17 Jul 2023 16:40:45 +0200] rev 5610
mod_default_bookmarks: Include 'autojoin' in examples
The text does mention this, but who reads that?
Kim Alvefur <zash@zash.se> [Sat, 15 Jul 2023 12:27:24 +0200] rev 5609
mod_http_oauth2: Improve a description in schema
Kim Alvefur <zash@zash.se> [Sat, 15 Jul 2023 10:45:26 +0200] rev 5608
editorconfig: Document established conventions