$ qctl rbac role list
NAME DESCRIPTION PERMISSIONS MEMBERS
viewer Read-only access 5 12
developer Development access 15 8
operator Operations access 25 4
admin Administrative access 40 2
owner Full access * 1
$ qctl rbac role show developer
Name: developer
Description: Development access for dev/staging environments
Created: 2026-01-01
Modified: 2026-01-03
Permissions:
apps:read:* Read all applications
apps:deploy:dev Deploy to dev environment
apps:deploy:staging Deploy to staging environment
logs:read:* Read all logs
packages:* Full package management
configs:read:* Read all configs
configs:update:dev Update dev configs
Members (8):
james.maes, alice.smith, bob.jones, ...
$ qctl rbac whoami
User: james.maes@acme.com
Organization: ACME Corp
Team: Platform Engineering
Roles:
- developer (team scope)
- operator (app:orders-api scope)
Effective Permissions:
apps:read:*
apps:deploy:dev
apps:deploy:staging
apps:deploy:orders-api:prod
apps:scale:orders-api:*
logs:read:*
packages:*
configs:read:*
API Integration
POST /v1/roles
GET /v1/roles
GET /v1/roles/{name}
DELETE /v1/roles/{name}
POST /v1/roles/{name}/permissions
DELETE /v1/roles/{name}/permissions/{permission}
POST /v1/users/{userId}/roles
DELETE /v1/users/{userId}/roles/{roleName}
GET /v1/users/{userId}/permissions
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
User Story
As a team administrator, I want to define roles and permissions for team members so that developers only have access to the resources they need.
Design
Command Interface
RBAC Model
Built-in Roles
Output Format
API Integration
Files to Create/Modify
qctl-core/src/main/java/io/qrun/qctl/core/rbac/RBACCommand.javaqctl-core/src/main/java/io/qrun/qctl/core/rbac/RoleCommand.javaqctl-core/src/main/java/io/qrun/qctl/core/rbac/PermissionCommand.javaqctl-core/src/main/java/io/qrun/qctl/core/rbac/AssignCommand.javaqctl-core/src/main/java/io/qrun/qctl/core/rbac/WhoamiCommand.javaqctl-core/src/main/java/io/qrun/qctl/core/rbac/Role.javaqctl-core/src/main/java/io/qrun/qctl/core/rbac/Permission.javaqctl-core/src/main/java/io/qrun/qctl/core/rbac/PermissionParser.javaqctl-core/src/main/java/io/qrun/qctl/core/rbac/PermissionChecker.javaImplementation Tasks
Acceptance Criteria
whoamishows effective permissions