User Group Commands
π₯ Manage user groups in Kavach - create, list, delete, and manage group members.
Overviewβ
User groups are collections of users that can be assigned permissions together. Instead of managing permissions for each user individually, you can create user groups and assign permissions to the entire group at once.
Key Conceptsβ
- User groups belong to organizations and contain multiple users
- Group-based permissions simplify access control management
- Users can belong to multiple groups for different permission sets
- Group permissions work alongside individual permissions
- Efficient team management for large organizations
Available Rolesβ
Role | Permissions |
---|---|
owner | Full administrative access (create, delete, manage members, grant permissions) |
admin | Administrative access (manage members and permissions, but cannot delete the resource they were granted admin on) |
editor | Write access (modify resources, but cannot assign permissions to others) |
viewer | Read-only access (view group only) |
Commandsβ
kavach user-group create
β
ποΈ Create a new user group
Usageβ
kavach user-group create <name> [flags]
Argumentsβ
Argument | Description | Required |
---|---|---|
name | Name of the user group | Yes |
Flagsβ
Flag | Description | Required | Default |
---|---|---|---|
--description | Description of the user group | No | "" |
--organization, -o | Organization under which to create the user group | No | Active organization |
Examplesβ
# Create user group with description
kavach user-group create developers --description "Development team"
# Create user group without description
kavach user-group create qa-team --description "QA team"
# Create user group in specific organization
kavach user-group create ops-team --description "Operations team" --organization mycompany
Example Outputβ
π User group 'developers' created successfully under organization 'mycompany'.
kavach user-group list
β
π List your user groups
Usageβ
kavach user-group list [flags]
Flagsβ
Flag | Description | Required | Default |
---|---|---|---|
--organization, -o | Organization under which to list user groups | No | Active organization |
Examplesβ
# List all user groups in current organization
kavach user-group list
# List user groups in specific organization
kavach user-group list --organization mycompany
Example Outputβ
βββββββββββββββββββββββββββββββββββββββ¬ββββββββββββββββββ¬ββββββββββββββββββββββ¬βββββββββββββββββββ
β User Group Id β User Group Name β Description β Organization Nameβ
βββββββββββββββββββββββββββββββββββββββΌββββββββββββββββββΌββββββββββββββββββββββΌβββββββββββββββββββ€
β 550e8400-e29b-41d4-a716-446655440000β developers β Development team β mycompany β
β 550e8400-e29b-41d4-a716-446655440001β qa-team β QA team β mycompany β
βββββββββββββββββββββββββββββββββββββββ΄ββββββββββββββββββ΄ββββββββββββββββββββββ΄βββββββββββββββββββ
kavach user-group delete
β
ποΈ Delete a user group by name
Usageβ
kavach user-group delete <name> [flags]
Argumentsβ
Argument | Description | Required |
---|---|---|
name | Name of the user group to delete | Yes |
Flagsβ
Flag | Description | Required | Default |
---|---|---|---|
--organization, -o | Organization under which to delete the user group | No | Active organization |
Examplesβ
# Delete user group (with confirmation)
kavach user-group delete qa-team
# Delete user group in specific organization
kavach user-group delete ops-team --organization mycompany
Confirmation Promptβ
When deleting a user group, you'll see a confirmation prompt:
are you sure to delete user group qa-team under org mycompany if yes click on proceed otherwise cancel
UserGroup 'qa-team' deleted successfully.
kavach user-group members add
β
β Add a user to a user group
Usageβ
kavach user-group members add [flags]
Flagsβ
Flag | Description | Required |
---|---|---|
--user-group, -g | Name of the user group | Yes |
--user, -u | Name of the user to add | Yes |
--organization, -o | Organization under which the user group exists | No |
Examplesβ
# Add user to user group
kavach user-group members add --user-group developers --user john
# Add user to user group in specific organization
kavach user-group members add --user-group qa-team --user sarah --organization mycompany
# Add user to admin group
kavach user-group members add --user-group admins --user mike
Example Outputβ
π Member 'john' added successfully to user group 'developers'.
kavach user-group members list
β
π List members of a user group
Usageβ
kavach user-group members list [flags]
Flagsβ
Flag | Description | Required |
---|---|---|
--user-group, -g | Name of the user group | Yes |
--organization, -o | Organization under which the user group exists | No |
Examplesβ
# List members of a user group
kavach user-group members list --user-group developers
# List members in specific organization
kavach user-group members list --user-group qa-team --organization mycompany
# List members of admin group
kavach user-group members list --user-group admins
Example Outputβ
βββββββββββββββββββββββ¬βββββββββββββ¬ββββββββββββββββββ
β UserEmail β UserName β UserGroupName β
βββββββββββββββββββββββΌβββββββββββββΌββββββββββββββββββ€
β john@company.com β John Doe β developers β
β jane@company.com β Jane Smith β developers β
β mike@company.com β Mike Brown β developers β
βββββββββββββββββββββββ΄βββββββββββββ΄ββββββββββββββββββ
kavach user-group members remove
β
β Remove a user from a user group
Usageβ
kavach user-group members remove [flags]
Flagsβ
Flag | Description | Required |
---|---|---|
--user-group, -g | Name of the user group | Yes |
--user, -u | Name of the user to remove | Yes |
--organization, -o | Organization under which the user group exists | No |
Examplesβ
# Remove user from user group
kavach user-group members remove --user-group developers --user john
# Remove user from user group in specific organization
kavach user-group members remove --user-group qa-team --user sarah --organization mycompany
# Remove user from admin group
kavach user-group members remove --user-group admins --user mike
Example Outputβ
π Member 'john' removed successfully from user group 'developers'.
Workflow Examplesβ
Complete User Group Setupβ
# 1. Create user groups
kavach user-group create developers --description "Development team"
kavach user-group create qa-team --description "QA team"
kavach user-group create ops-team --description "Operations team"
# 2. List user groups
kavach user-group list
# 3. Add team members
kavach user-group members add --user-group developers --user "john@company.com"
kavach user-group members add --user-group developers --user "jane@company.com"
kavach user-group members add --user-group qa-team --user "sarah@company.com"
# 4. List members
kavach user-group members list --user-group developers
Permission Managementβ
# 1. Create role-based user groups
kavach user-group create admins --description "Administrators"
kavach user-group create editors --description "Content editors"
kavach user-group create viewers --description "Read-only users"
# 2. Add users to appropriate groups
kavach user-group members add --user-group admins --user "admin@company.com"
kavach user-group members add --user-group editors --user "editor@company.com"
kavach user-group members add --user-group viewers --user "viewer@company.com"
# 3. Grant group permissions to resources
kavach group grant --group "admins" --role admin --group "myapp"
kavach env grant --group "editors" --role editor --env "development"
kavach env grant --group "viewers" --role viewer --env "production"
Best Practicesβ
1. User Group Namingβ
# Good naming conventions
kavach user-group create developers --description "Development team"
kavach user-group create qa-team --description "QA team"
kavach user-group create ops-team --description "Operations team"
# Avoid generic names
kavach user-group create group --description "User group" # Too generic
2. Role-Based Organizationβ
# Create groups by role
kavach user-group create admins --description "System administrators"
kavach user-group create developers --description "Software developers"
kavach user-group create qa-engineers --description "Quality assurance engineers"
kavach user-group create devops --description "DevOps engineers"
Next Stepsβ
After setting up your user groups:
- Grant Permissions: Organization Management
- Manage Secret Groups: Secret Group Management
- Configure Environments: Environment Management
- Set Up Providers: Provider Integration