feat(manage): per-user access: roles, access, grant, revoke #248
Loading…
Reference in a new issue
No description provided.
Delete branch "jfraeys/feat/manage-user-access"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Requested: access management for users. 'manage user' gets four subcommands built on the LLDAP groups the Authelia admin-panel rules and the Headscale login policy (#247) already use.
Files: scripts/lib/manage/user_access.sh (new), user.sh (usage + dispatch), roles/manage_cli (file list), runbook (onboard-client-user.md), lint.yml.
Checked: test-user-access.sh (22 cases against stubbed LLDAP/Headscale; disabling the last-admin guard and mis-mapping the client role are both caught); the report run against the real LLDAP user, Headscale users/nodes and loaded policy from my machine (output correct; it reports that the live ACL has no admin group yet, which #246 fixes); shellcheck -S error clean via the official image (and non-zero on a seeded error); ansible-lint on roles/manage_cli passes.
Not checked: grant/revoke against the real LLDAP (needs the new manage installed on services). After merge, promotion, then ./infra deploy --tags manage_cli --limit services, try 'manage user roles' and 'manage user access jfraeys', then a grant/revoke on a throwaway test user.
Depends on: nothing hard; the access report is most useful after #246/#247 are deployed.
🤖 Generated with Claude Code
https://claude.ai/code/session_01Ge5tovcwdEUBtPwUktsZZZ