- Workspaces Access Rights - Role overview and concepts
- Complete Permissions Matrix - Detailed permission specifications
- Permission Reference Guide - Technical implementation details
- Role Selection Guide (Current) - Practical scenarios and best practices
Role selection decision tree
Use this decision tree to quickly identify the appropriate role:Role selection by persona
Platform administrators
Organization Administrator
org_adminTypical Responsibilities:- Managing the entire FlowX platform
- Creating and organizing workspaces
- Managing organization-wide users and groups
- Overseeing system health and configurations
- Implementing organization-wide policies
- Platform administrators
- IT managers
- System architects
- Assign sparingly - only to users needing cross-workspace access
- Has access to ALL projects across ALL workspaces
- Should be limited to 2-3 trusted individuals
Business unit managers
Workspace Administrator
workspace_adminTypical Responsibilities:- Managing workspace users and access
- Overseeing all workspace projects
- Managing workspace themes and branding
- Configuring workspace-level settings
- Handling workspace resource allocation
- Department heads
- Business unit managers
- Team leads with administrative duties
- Has admin access to all projects in their workspace
- Cannot access other workspaces without explicit assignment
- Should be assigned to responsible leaders only
Developers and configurators
Project Owner
project_ownerAssignment: Automatic (assigned to project creator)Typical Responsibilities:- Complete project governance
- Managing project team access
- Final approval on project changes
- Project lifecycle management
- Project leads
- Technical architects
- Product owners
- Automatically assigned at project creation
- Can transfer ownership to another user
- Only one owner per project
Project Editor
project_editorTypical Responsibilities:- Building and configuring processes
- Designing workflows
- Creating UI configurations
- Managing integrations
- Creating builds and deployments
- Senior developers
- Business analysts
- Technical configurators
- Full configuration access without ownership
- Cannot grant/revoke project access
- Standard role for project team members
- Configurators who need to change active policy should be assigned
workspace_runtime_editorrole in their workspace - Even if they only have
project_vieweraccess on specific projects, the workspace-level runtime role allows policy changes
Specialized roles
UI/UX Designer
theme_editorTypical Responsibilities:- Designing application themes
- Managing brand assets
- Creating and organizing fonts
- Managing media library
- Ensuring visual consistency
- UI/UX designers
- Brand managers
- Visual designers
- Marketing team members
- Extends workspace_user with design permissions
- Can create projects but focused on visual aspects
- Read-only for projects without explicit access
DevOps Engineer
workspace_runtime_editorTypical Responsibilities:- Creating and managing builds
- Configuring runtime environments
- Managing deployment policies
- Overriding configuration parameters
- Monitoring process instances
- DevOps engineers
- Release managers
- Technical operations staff
- System administrators
- Extends workspace_user with runtime permissions
- Can manage deployments across workspace
- Does not grant automatic project configuration access
Operations Engineer
workspace_operations_editorTypical Responsibilities:- Managing process instance operations (migration & move token)
- Editing process variables on active instances
- Managing operational tasks across the workspace
- Supporting process migrations and token movements
- Support engineers
- Operations team members
- Technical support staff
- Process operations managers
- Extends workspace_user with operations permissions
- Can manage operations across workspace
- Does not include broader runtime capabilities (builds, policies)
- Available starting in FlowX 5.3
Stakeholders and reviewers
General Workspace User
workspace_userTypical Responsibilities:- Creating new projects
- Working on assigned projects
- Viewing workspace resources
- Basic workspace participation
- Junior developers
- Business analysts
- Process designers
- General team members
- Default role for most workspace members
- Can create projects (becomes owner automatically)
- Needs explicit project access to work on others’ projects
Viewer / Auditor
project_viewerTypical Responsibilities:- Reviewing project configurations
- Auditing processes and workflows
- Compliance checking
- Documentation and training
- Business stakeholders
- Quality assurance personnel
- Compliance officers
- External consultants
- New team members (onboarding)
- Completely read-only access
- Can test processes through interface
- Safe for sensitive stakeholders
Common role assignment scenarios
Scenario 1: New employee onboarding
Day 1: View-only access
workspace_user role at workspace levelGrant project_viewer role for relevant projectsRationale: Allow new employee to explore and learn without riskWeek 2-4: Limited editing
project_editor role for specific training projectsKeep viewer access for production projectsRationale: Hands-on learning in safe environmentScenario 2: External consultant engagement
Short-term review (1-2 weeks)
Short-term review (1-2 weeks)
project_viewerAccess Pattern:- Grant access only to specific projects under review
- No workspace-level role assignment
- Time-bound access (remove after engagement)
- Complete visibility for review purposes
- No risk of accidental modifications
- Easy to audit consultant’s activities
Implementation project (3-6 months)
Implementation project (3-6 months)
- Workspace level:
workspace_user - Project level:
project_editorfor specific projects
- Create dedicated workspace for consultant projects
- Grant editor access only to contracted projects
- Regular access reviews during engagement
- Consultant can work independently
- Clear boundaries on accessible projects
- Easy cleanup after engagement ends
Long-term partnership (6+ months)
Long-term partnership (6+ months)
- Workspace level:
workspace_useror specialized role - Project level:
project_editororproject_owneras needed
- Treat similar to internal team member
- Consider dedicated workspace for partner projects
- Quarterly access reviews and adjustments
- Full integration with team workflows
- Appropriate access for extended engagement
- Maintains security through regular reviews
Scenario 3: Cross-functional team project
- Small Project (2-5 people)
- Medium Project (5-15 people)
- Large Project (15+ people)
- 1 Project Owner (automatically assigned to creator)
- 2-3 Project Editors (developers/analysts)
- 1 Project Viewer (stakeholder)
- Keep team small and roles simple
- Regular sync meetings reduce need for complex permissions
- Document decisions in project comments
Scenario 4: Multi-workspace organization
Enterprise Organization Structure
- 2-3
org_admin(Platform administrators)
- 1
workspace_admin(Business unit manager) - 15-30
workspace_user(Standard members) - 2-3
theme_editor(Design team) - 1-2
workspace_runtime_editor(DevOps team) - 1-2
workspace_operations_editor(Operations/Support team)
- Projects follow patterns from Scenario 3
- Each business unit has dedicated workspace
- Cross-workspace collaboration via library sharing
- Central DevOps team has runtime_editor in all workspaces
- Central design team has theme_editor in relevant workspaces
- Central operations team has operations_editor for process management
- Monthly access reviews by workspace_admin
- Quarterly organization-wide audit by org_admin
- Automated alerts for inactive users
- Clear documentation of cross-workspace access
Role escalation matrix
When should you upgrade a user’s role?| Current Role | Escalate To | Trigger Conditions | Approval Required |
|---|---|---|---|
project_viewer | project_editor | User needs to make configuration changes Completed onboarding period | Project Owner |
workspace_user | theme_editor | User assigned to design responsibilities Demonstrated design skills | Workspace Admin |
workspace_user | runtime_editor | User assigned to DevOps responsibilities Deployment management needed | Workspace Admin |
workspace_user | operations_editor | User assigned to operations responsibilities Process migration needs | Workspace Admin |
project_editor | project_owner | Original owner leaving User taking over project leadership | Current Owner or Workspace Admin |
workspace_user | workspace_admin | User promoted to management Administrative duties assigned | Organization Admin |
workspace_admin | org_admin | User taking platform-wide responsibilities Multi-workspace management | Existing Org Admin + Management |
Role de-escalation and removal
When to downgrade roles
Project Completion
Project Completion
- Downgrade most
project_editortoproject_viewer - Keep 1-2 editors for maintenance
- Keep project_owner for governance
Role Change
Role Change
- Remove access to old projects
- Assign appropriate role for new responsibilities
- Transfer project_owner if applicable
Contractor End
Contractor End
- Remove all workspace access
- Document contractor’s contributions
- Archive or transfer project ownership if needed
Security Incident
Security Incident
- Immediate suspension of access
- Investigation by security/admin team
- Appropriate remediation based on findings
Access removal checklist
Identify all access points
- List all workspaces user has access to
- Identify all projects with direct access
- Check group memberships
- Review project ownership assignments
Transfer ownership
- Transfer project_owner role if user owns projects
- Update project documentation with new owner
- Notify project stakeholders of change
Remove access
- Remove from workspace-level roles
- Remove from project-level access
- Remove from all groups
- Verify removal in system
Role assignment anti-patterns
Anti-pattern 1: Everyone is an admin
Problem:- Assigning
workspace_adminororg_adminto too many users - “Just in case” administrative access
- Reduced security and accountability
- Increased risk of accidental changes
- Difficult to audit who made changes
- Limit admin roles to actual administrators
- Use
project_editororproject_ownerfor project-level needs - Implement proper access request workflow
Anti-pattern 2: Never updating roles
Problem:- Roles assigned during onboarding never reviewed
- Users retain access after role changes
- Inactive users still have full access
- Security vulnerabilities accumulate
- Compliance issues with access audits
- Potential data breaches
- Quarterly access reviews
- Automated inactive user detection
- Role-based access recertification
Anti-pattern 3: Individual assignments instead of groups
Problem:- Assigning roles to individual users instead of groups
- Not using the “Everyone in workspace” group
- Managing access one user at a time
- High administrative overhead
- Inconsistent access patterns
- Difficult to scale
- Create groups for teams and functions
- Use groups for project access
- Individual assignments only for exceptions
Anti-pattern 4: Too granular or too broad
Problem:- Creating overly complex permission structures
- OR giving everyone the same high-level access
- Confusion about who can do what
- Either too restrictive or too permissive
- Difficult to maintain
- Start with predefined roles
- Use workspace/project boundaries naturally
- Add granularity only when truly needed
Anti-pattern 5: No documentation
Problem:- Access decisions not documented
- No record of why users have certain roles
- No clear ownership of access management
- Cannot audit access decisions
- Difficult to troubleshoot access issues
- Compliance problems
- Document all non-standard role assignments
- Maintain role assignment justifications
- Clear ownership of access management process
Groups and access management
Built-in workspace groups
Everyone in workspace group
Every workspace automatically includes a special system-managed group for all workspace members:all_users_[workspace_name]
Everyone from <workspace name>Purpose:
Provides convenient access management for all users associated with a workspace.Automatic Behavior:- Created automatically during workspace provisioning
- Cannot be edited, deleted, or duplicated
- Users automatically added when granted workspace access (direct or through another group)
- Users automatically removed when workspace access is revoked
- Pre-selected by default when creating new projects/libraries
- Appears in user/group search results when granting project access
- Grant all workspace members read access to reference projects
- Provide baseline visibility across all workspace projects
- Simplify onboarding by giving new users automatic access to shared resources
- Create workspace-wide announcements or shared libraries
Custom groups
- Creating Groups
- Managing Groups
- Group Strategies
When to create custom groups
Create custom groups when you need:- Team-based access (e.g., “Development Team”, “QA Team”)
- Role-based access (e.g., “Senior Developers”, “Stakeholders”)
- Project-specific access (e.g., “Project Alpha Team”)
- Cross-functional teams (e.g., “Release Management”, “Architecture Board”)
Group creation best practices
Plan group structure
dev_team_frontendstakeholders_finance_deptproject_phoenix_core_team
random_userstemp_group_1johns_team(too specific, not transferable)
Use descriptive names
[function]_[department/project]_[sub-group]Examples:developers_mobile_iosviewers_executive_leadershipeditors_project_migration
Document group purpose
- Who should be members
- What access the group provides
- When to use the group for access grants
Group vs. individual assignment decision matrix
| Scenario | Use Group | Use Individual Assignment |
|---|---|---|
| 5+ users need same access | ✅ Yes | ❌ No |
| Access pattern is temporary (< 1 month) | ❌ No | ✅ Yes |
| Access follows team structure | ✅ Yes | ❌ No |
| One-off exception for specific user | ❌ No | ✅ Yes |
| Access will change frequently | ❌ No | ✅ Yes |
| Multiple projects need same team access | ✅ Yes | ❌ No |
| Executive/stakeholder with unique access | ❌ No | ✅ Yes |
| New team being formed | ✅ Yes | ❌ No |
Troubleshooting permission issues
Common error scenarios
Error: "Cannot see Projects menu"
Error: "Cannot see Projects menu"
Error: "Can see project but cannot edit"
Error: "Can see project but cannot edit"
- Project appears in list
- Can open project but all controls disabled
- Configure shows as “View” instead
- No Save buttons visible
- Have
project_viewerrole instead ofproject_editor - Have read-only permissions on project
- Project is locked or archived
Check project role
- Open project
- Look for edit controls (should be hidden if viewer)
- Check contextual menu (Configure vs View)
Request role upgrade
- Identify project owner (automatic creator or transferred owner)
- Request
project_editorrole - Provide business justification for edit access
Error: "Cannot create builds"
Error: "Cannot create builds"
- No “Create build” button visible
- Import build action missing
- Runtime menu entries not accessible
- Missing
wks_builds_createpermission - Don’t have
workspace_runtime_editorrole - Workspace-level runtime access not granted
Request runtime access
- Explain need for build creation
- Request
workspace_runtime_editorrole - Alternative: Request specific
wks_builds_createpermission
Error: "User added to group but still no access"
Error: "User added to group but still no access"
- User appears in group membership list
- User still cannot access expected resources
- Group-based permissions not applying
- Group not assigned to project
- Group has insufficient permissions
- Permission cache not refreshed
- Individual permission overrides group
Verify group assignments
- Check project-level access for group
- Verify group has appropriate roles assigned
Check permission hierarchy
- Individual permissions may override group
- Multiple groups combine permissions
- A user’s permissions in the context of a project is the reunion of their permissions given though groups or individual assignments
Force refresh
- User logs out completely
- Clear browser cache and cookies
- User logs back in
- Permissions should refresh from backend
Error: "Project owner left, cannot manage access"
Error: "Project owner left, cannot manage access"
- Original project owner no longer with organization
- Cannot grant/revoke project access
- Project governance blocked
- Project ownership not transferred
- No other users have admin rights on project
- Workspace admin access not configured
Contact workspace administrator
- Has
projects_adminpermission - Can grant access to projects
- Can help identify new owner
Transfer project ownership
- Assign new project owner
- Transfer governance rights
- Update project documentation
Best practices summary
Start Conservative
project_viewer or workspace_user and escalate as needed based on demonstrated needsUse Groups
Regular Reviews
Document Decisions
Use Automation
Plan for Transitions
Keycloak roles vs Designer roles
FlowX uses two separate role systems. Understanding the difference prevents common confusion:| Aspect | Keycloak realm roles | FlowX Designer roles |
|---|---|---|
| Managed in | Keycloak Admin Console | FlowX Designer (Workspaces) |
| Purpose | Service authentication, runtime process access | Designer UI access, project permissions |
| Assigned to | Users and service accounts | Users and groups within workspaces |
| Examples | SA_FLOWX, default-roles-flowx | org_admin, workspace_admin, project_editor |
Keycloak realm roles quick reference
| Role | Purpose | Who needs it |
|---|---|---|
SA_FLOWX | Service account role. Identifies FlowX platform services for inter-service communication. | Service accounts only, not human users |
default-roles-flowx | Default realm role automatically assigned to new users in the FlowX Keycloak realm. | All users (assigned automatically) |
FLOWX_ADMIN, FLOWX_CONFIGURATOR, and FLOWX_VIEWER were Keycloak realm roles that controlled Designer access. In FlowX 5.0+, these have been replaced by the Designer role system (workspace_admin, project_editor, etc.). See the migration mapping for the full conversion table.
