Skip to main content

What are Role-Based Permissions?

Role-based permissions (also known as Role-Based Access Control or RBAC) is a security model that restricts system access based on a user’s role within an organization. Instead of assigning permissions to individual users, permissions are assigned to roles, and users are then assigned to appropriate roles based on their job functions.

Key Benefits

  • Simplified Management: Assign permissions once to a role, then add users to that role rather than managing permissions for each individual user
  • Consistency: Ensures all users with the same role have identical access rights
  • Scalability: Easy to onboard new team members by assigning them to pre-configured roles
  • Security: Follows the principle of least privilege by granting only the permissions necessary for each role
  • Audit & Compliance: Simplifies access reviews and compliance reporting by organizing permissions around job functions

How It Works in Corgea

In Corgea, you create Permission Groups that correspond to different roles in your organization (e.g., Admin, Developer, Security Manager). Each Permission Group is assigned a specific set of permissions that define what actions users in that role can perform. Users are then added to one or more Permission Groups, inheriting all permissions from those groups.
Permissions are additive - if a user belongs to multiple Permission Groups, they receive all permissions from all groups they are a member of.

Role-Based Permission Recommendations

Based on the permissions defined in the Corgea platform, here’s a recommended permission matrix for different roles.

Role Descriptions

Admin

Full system access - can manage all aspects of the platform including company settings, users, permissions, and all security features.

Development Manager

Can manage development teams, users, projects, and view all security issues. Can initiate scans and manage team assignments but cannot modify security policies.

Developer

Read access to issues, scans, policies, and teams. Can initiate scans for their projects but has limited management capabilities. Focus on viewing and understanding security issues in their code.

DevOps

Operational focus with full control over integrations, scheduled scans, agent settings, and PR automation rules. Can manage scans and view issues but cannot modify security policies or delete issues.

Security Manager

Comprehensive security management including all policy controls, SLAs, blocking rules, and user/team management. Cannot delete permission groups or modify company settings.

Security Engineer

Hands-on security role with full control over security issues, policies, scans, and agent settings. Focus on day-to-day security operations but without user/team management responsibilities.

Permission Groups Overview

The following are suggested Permission Groups to setup. Corgea comes with the Admin permission out of the box.
PermissionAdmin (Default)Security ManagerSecurity EngineerDevelopment ManagerDeveloperDevOps
User Management
Create User
Edit User
Delete User
View User
Issue Management (SAST)
Create Issue
View Issue
Delete Issue
SCA Issue Management
Create SCA Issue
View SCA Issue
Edit SCA Issue
Delete SCA Issue
SAST Scan Management
Create SAST Scan
View SAST Scan
Delete SAST Scan
Project Management
Modify Project Tags
Edit Project
Delete Project
API Token Management
View API Token
Manage API Token
Policy Management
Create Policy
Edit Policy
View Policy
Delete Policy
Issue SLA Management
Create Issue SLA
Edit Issue SLA
View Issue SLA
Delete Issue SLA
Blocking Rule Management
Create Blocking Rule
Edit Blocking Rule
View Blocking Rule
Delete Blocking Rule
PR Scan & Comment Rules
Create PR Scan & Comment Rule
Edit PR Scan & Comment Rule
View PR Scan & Comment Rule
Delete PR Scan & Comment Rule
Scheduled Scan Management
Create Scheduled Scan
Edit Scheduled Scan
View Scheduled Scan
Delete Scheduled Scan
Integration Management
View Integration
Manage Integration
Permission Group Management
Create Permission Group
Edit Permission Group
View Permission Group
Delete Permission Group
Company Management
View Company Settings
Edit Company Settings
Corgea Agent Settings
View Agent Settings
Edit Agent Settings
Team Management
View Team
Create Team
Edit Team
Delete Team
Content Access Management
Manage Content Access

Best Practices

  • Permission Assignment
  • Security Considerations
  • Troubleshooting
1

Identify User Roles

Determine the specific roles and responsibilities within your organization (e.g., Security Analyst, Developer, Manager).
2

Map Permissions to Roles

Assign only the minimum required permissions for each role to follow the principle of least privilege.
3

Create Permission Groups

Create permission groups that correspond to organizational roles and assign the appropriate permissions.
4

Assign Users to Groups

Add users to the appropriate permission groups based on their role and responsibilities.

Permissions Reference

Below is a complete reference of all available permissions in the Corgea platform with their descriptions and use cases.

User Management Permissions

PermissionDescriptionUse Case
Can add userCreate new user accounts in the systemRegister new team members and set up their accounts
Can change userModify existing user account information and settingsUpdate user profiles, change email addresses, modify user roles, or update account details
Can delete userRemove user accounts from the systemDeactivate or permanently delete user accounts when team members leave or accounts are no longer needed
Can view userView user account information and profilesAccess user details, view team member information, or check user status

Issue Management Permissions (SAST)

PermissionDescriptionUse Case
Can add issueCreate new security issues or manually report vulnerabilitiesAllow security team members to manually create issues for discovered vulnerabilities or security concerns
Can view issueView security issues, vulnerabilities, and their detailsAccess issue reports, review vulnerability details, or monitor security status across projects
Can delete issueRemove security issues from the systemClean up false positives, remove resolved issues, or manage issue lifecycle

SCA Issue Management Permissions

PermissionDescriptionUse Case
Can add sca issueCreate new SCA issues or manually report dependency vulnerabilitiesManually flag dependency issues, report newly discovered vulnerabilities in third-party components
Can view sca issueView Software Composition Analysis issues and dependency vulnerabilitiesReview third-party library vulnerabilities, check dependency security status, or analyze open source component risks
Can change sca issueModify SCA issue details, status, or resolution informationUpdate issue status, add resolution notes, or modify vulnerability assessment details
Can delete sca issueRemove SCA issues from the systemClean up false positives, remove resolved dependency issues, or manage SCA issue lifecycle

SAST Scan Management Permissions

PermissionDescriptionUse Case
Can add SAST ScanInitiate new SAST security scans on projectsStart security scans, trigger manual scans, or schedule new security analysis runs
Can view SAST ScanView SAST scan results, reports, and scan historyReview scan results, analyze security findings, or monitor scan progress and outcomes
Can delete SAST ScanRemove SAST scan records and results from the systemClean up old scan data, remove failed scans, or manage scan history storage

Project Management Permissions

PermissionDescriptionUse Case
Can modify project tagsAdd, remove, or modify tags associated with projectsOrganize projects with custom tags, categorize projects by team or technology, or improve project management and filtering
Can edit projectModify project settings and configurationUpdate project details, change project settings, or adjust project parameters
Can delete projectRemove projects from the systemClean up old projects, remove deprecated projects, or manage project lifecycle

API Token Management Permissions

PermissionDescriptionUse Case
Can view tokenView API tokens and their associated permissions and usageReview token usage, audit API access, or check token permissions and status
Can change tokenModify API tokens, including regeneration, expiration, or permission changesUpdate token permissions, regenerate compromised tokens, or modify token expiration settings

Policy Management Permissions

PermissionDescriptionUse Case
Can add PolicyCreate new security policies and compliance rulesDefine new security standards, create compliance policies, or establish organizational security guidelines
Can change PolicyModify existing policies, rules, and compliance settingsUpdate policy requirements, adjust compliance rules, or modify security standards as organizational needs change
Can view PolicyView policies, compliance rules, and security standardsReview current policies, understand compliance requirements, or audit security standards
Can delete PolicyRemove policies and compliance rules from the systemClean up outdated policies, remove deprecated compliance rules, or manage policy lifecycle

Issue SLA Management Permissions

PermissionDescriptionUse Case
Can add Issue SLACreate new issue SLA definitions and response time requirementsDefine response time requirements for different types of security issues, set up escalation procedures
Can change Issue SLAModify existing issue SLA settings and response time requirementsUpdate SLA requirements, adjust response times, or modify escalation procedures
Can view Issue SLAView issue SLA settings and response time requirementsReview SLA requirements, check response time commitments, or audit SLA compliance
Can delete Issue SLARemove issue SLA definitions from the systemClean up outdated SLA requirements or remove deprecated response time standards

Blocking Rule Management Permissions

PermissionDescriptionUse Case
Can add blocking ruleCreate new blocking rules to prevent specific actions or deploymentsSet up rules to block deployments with critical vulnerabilities, prevent releases with compliance violations
Can change blocking ruleModify existing blocking rules and their conditionsUpdate blocking criteria, adjust rule conditions, or modify deployment restrictions
Can view blocking ruleView blocking rules and their current configurationsReview current blocking rules, understand deployment restrictions, or audit rule effectiveness
Can delete blocking ruleRemove blocking rules from the systemClean up outdated rules, remove unnecessary restrictions, or manage rule lifecycle

PR Scan Comment Rule Permissions

PermissionDescriptionUse Case
Can add pr scan comment ruleCreate new rules for automated comments on pull request scansSet up automated feedback for developers, create custom comment templates for different scan results
Can change pr scan comment ruleModify existing PR scan comment rules and templatesUpdate comment templates, adjust feedback rules, or modify automated communication settings
Can view pr scan comment ruleView PR scan comment rules and their configurationsReview current comment rules, understand automated feedback settings, or audit communication policies
Can delete pr scan comment ruleRemove PR scan comment rules from the systemClean up outdated comment rules, remove unnecessary automated feedback, or manage rule lifecycle

Scheduled Scan Management Permissions

PermissionDescriptionUse Case
Can add Scheduled ScanCreate new scheduled security scans with custom timing and parametersSet up regular security scans, create automated scan schedules, or establish recurring security assessments
Can change Scheduled ScanModify existing scheduled scan settings, timing, or parametersUpdate scan frequency, adjust scan parameters, or modify scheduling configurations
Can view Scheduled ScanView scheduled scan configurations and their current settingsReview scan schedules, check upcoming scans, or audit automated scanning configurations
Can delete Scheduled ScanRemove scheduled scans from the systemClean up outdated scan schedules, remove unnecessary automated scans, or manage scan lifecycle

Integration Management Permissions

PermissionDescriptionUse Case
Can view integrationView integration configurations and connection detailsReview current integrations, check integration status, or audit external connections
Can manage integrationCreate, modify, and configure integrations with external systemsSet up new integrations, update integration settings, or manage external system connections

Permission Group Management Permissions

PermissionDescriptionUse Case
Can add Permission GroupCreate new permission groups with custom permission setsSet up role-based access control by creating groups like “Developers”, “Security Team”, or “Managers” with specific permissions
Can change Permission GroupModify existing permission group settings and assigned permissionsUpdate group permissions, change group names, or adjust access levels as organizational needs evolve
Can view Permission GroupView permission group configurations and assigned permissionsReview current group settings, audit permissions, or understand access control structure
Can delete Permission GroupRemove permission groups from the systemClean up unused groups or remove deprecated role configurations

Company Management Permissions

PermissionDescriptionUse Case
Can view companyView company information and settingsAccess company details, review organizational information, or check company-wide settings and policies
Can change companyModify company settings, configuration, and organizational detailsUpdate company information, change billing settings, modify organizational policies, or adjust company-wide configurations

Corgea Agent Settings Permissions

PermissionDescriptionUse Case
Can view agent settingsView Corgea Agent configuration and settingsReview agent configurations, check agent status, or audit agent settings
Can edit agent settingsModify Corgea Agent configuration and settingsUpdate agent parameters, change agent behavior, or adjust automation settings

Team Management Permissions

PermissionDescriptionUse Case
Can view teamView team information, members, and assignmentsAccess team details, review team composition, or check team assignments
Can create teamCreate new teams within the organizationSet up new development teams, security teams, or organizational units
Can edit teamModify team information, members, and assignmentsUpdate team details, add or remove team members, or adjust team configurations
Can delete teamRemove teams from the systemClean up disbanded teams, remove deprecated organizational units, or manage team lifecycle

Content Access Management Permissions

PermissionDescriptionUse Case
Can manage content accessControl access to content and resources within the platformDefine who can access specific projects, repositories, or security data; manage content visibility and access controls