Skip to content

Add admin.users service accounts that bypass group authz#2

Draft
johnworth wants to merge 2 commits into
mainfrom
admin-users
Draft

Add admin.users service accounts that bypass group authz#2
johnworth wants to merge 2 commits into
mainfrom
admin-users

Conversation

@johnworth

Copy link
Copy Markdown

Summary

  • Add an admin.users configuration key: a list of trusted service account usernames that bypass all per-group permission checks (requireLevel and requireReadOrMember)
  • Listed accounts get full administrative control over every group — intended for internal DE services such as the permissions service, which needs to read any group's membership when resolving permissions
  • Default is empty, which disables the bypass entirely; the user query parameter requirement still applies to admin accounts
  • No HTTP API surface changes

This is the groups-service half of letting the DE permissions service resolve group memberships through this service instead of the Grouper database (see cyverse-de/permissions#groups-backend).

Test plan

  • New authz tests: admin bypasses the member-read path and the write-level path; non-admin, non-member users still get 403
  • Full suite via just test; golangci-lint run clean

🤖 Generated with Claude Code

John Wregglesworth and others added 2 commits July 24, 2026 10:16
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

1 participant