Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Delegate authorization from groups.$DOMAIN to $DOMAIN #157

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

horazont
Copy link
Contributor

@horazont horazont commented Mar 29, 2023

This allows us to set the avatar of circles both from the app and from
the web portal (with snikket-web-portal#150).

However, this also makes all admins owners in all circles. To mitigate the potential unfortunate side-effects, affiliation changes (both direct and indirect through invites) are blocked, unless caused by prosody code.

@horazont horazont force-pushed the feature/delegate-authz branch 2 times, most recently from 70bf19d to e6bfde8 Compare March 31, 2023 15:00
@horazont horazont marked this pull request as ready for review March 31, 2023 15:00
horazont added 2 commits April 1, 2023 12:09
This allows us to set the avatar of circles both from the app and from
the web portal (with snikket-web-portal#150).

However, this also makes all admins owners in all circles. This may be
problematic, or may not be. The upside is that it also automatically
allows managing the avatar through the apps. The downside is that it
exposes a bunch of dangerous controls (banning, kicking) which desyncs
the group membership from MUC membership.

We might want a reconciliation loop for that, or figure out something
else which overrides outcast-ness or forbids banning or stuff like that,
*or* which alternatively reflects that change in the circle UI.
With mod_authz_delegate (see parent commit), all Snikket admins are now
owners in all circle MUCs (and non-circle MUCs, for that matter). This
implies that they're able to change affiliations.

As that is a footgun which may cause desyncs between the circle state
and the MUC membership list, we block both invites and affiliation
changes, unless triggered by code.
@horazont horazont force-pushed the feature/delegate-authz branch from e6bfde8 to 0e2b7fc Compare April 1, 2023 10:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants