Skip to main content

Enterprise

Access Control - Clearpoint Systems Docs

Configure fine-grained permissions with custom roles, approval workflows, and IP restrictions for enterprise security requirements.

Role-Based Access Control (RBAC) in Clearpoint Systems Technology allows you to define exactly who can do what across your organization. Enterprise plans include advanced RBAC features like custom roles, approval workflows, and IP restrictions.

Permission Model

Clearpoint uses a hierarchical permission model:

Organization
├── Organization-level permissions
│   ├── Billing
│   ├── SSO configuration
│   └── User management

├── Department-level permissions
│   ├── Department settings
│   └── Department membership

└── Integration-level permissions
    ├── Workflow configuration
    ├── Data source access
    ├── Report generation
    └── Audit log access

Permissions can be granted at any level and cascade down.

Built-in Roles

Clearpoint includes four built-in roles:

RoleDescription
System AdministratorFull control, including billing and organization management
Operations ManagerManage integrations, workflows, and department members
Data AnalystAccess data and create reports
Compliance OfficerView audit logs and compliance documentation
ViewerRead-only access

See User Management for the full permission matrix.

Custom Roles

Enterprise plans can create custom roles tailored to your organization:

Creating a Custom Role

  1. Go to Settings → Roles → Create Role
  2. Name your role (e.g., “Integration Specialist”, “Report Builder”)
  3. Select permissions from the available list
  4. Save the role

Example: Integration Specialist Role

{
  "name": "Integration Specialist",
  "description": "Can configure integrations but not manage users",
  "permissions": [
    "integrations:read",
    "integrations:create",
    "integrations:update",
    "workflows:read",
    "workflows:create",
    "reports:read"
  ]
}

This role can:

  • View and configure system integrations
  • Create and manage workflows
  • View reports and analytics

This role cannot:

  • Manage user accounts
  • Access billing information
  • Modify system settings

Example: Compliance Auditor Role

{
  "name": "Compliance Auditor",
  "description": "Full audit access without configuration permissions",
  "permissions": [
    "audit:read",
    "reports:read",
    "data_lineage:read",
    "compliance:read",
    "integrations:read"
  ]
}

Permission Reference

Organization Permissions

PermissionDescription
org:readView organization settings
org:updateModify organization settings
billing:readView billing information
billing:manageManage subscription and payment
users:readView organization users
users:inviteInvite new users
users:removeRemove users
users:update-roleChange user roles
sso:manageConfigure SSO settings
audit:readView audit logs

Integration Permissions

PermissionDescription
integrations:readView integration details
integrations:createCreate new integrations
integrations:updateModify integration settings
integrations:deleteDelete integrations
workflows:readView workflow configurations
workflows:createCreate new workflows
workflows:updateModify workflow settings
workflows:executeExecute workflows manually
data_sources:readView data source schemas
data_sources:updateModify data source mappings

Reporting Permissions

PermissionDescription
reports:readView existing reports
reports:createCreate new reports
reports:exportExport report data
analytics:readView analytics dashboards
data_lineage:readView data lineage information
compliance:readView compliance documentation

Department-Specific Permissions

Restrict actions to specific departments:

{
  "name": "Finance Data Analyst",
  "permissions": [
    "integrations:read",
    "workflows:read",
    "reports:create",
    "reports:export"
  ],
  "restrictions": {
    "departments": ["finance"],
    "data_sources": ["financial_data", "transactions"]
  }
}

This user can access finance-related data and workflows but not other departments.

Approval Workflows

Require approval for sensitive actions:

Configuring Approval Workflows

  1. Go to Settings → Security → Approval Workflows
  2. Click Create Workflow
  3. Configure the workflow:
{
  "name": "Integration Configuration Approval",
  "trigger": "integrations:update",
  "approvers": {
    "type": "role",
    "roles": ["operations_manager", "system_administrator"],
    "required": 1
  },
  "timeout": "4h",
  "autoReject": true
}

Approval Flow

  1. User initiates integration configuration change
  2. Change enters “Pending Approval” state
  3. Approvers receive notification
  4. Approver reviews and approves/rejects
  5. If approved, change is applied
  6. If rejected or timeout, change is cancelled

Approval via API

# Request configuration change (enters pending state)
POST /api/v1/integrations/sap_erp/config
{
  "sync_frequency": "30m",
  "approval_required": true
}

# Approver approves
POST /api/v1/approvals/{approval_id}/approve
{
  "comment": "Reviewed configuration changes"
}

# Or rejects with reason
POST /api/v1/approvals/{approval_id}/reject
{
  "reason": "Sync frequency too aggressive for production"
}

IP Restrictions

Limit access based on IP address:

Organization-Wide IP Allowlist

{
  "ipAllowlist": {
    "enabled": true,
    "addresses": [
      "203.0.113.0/24",
      "198.51.100.50"
    ],
    "enforceFor": ["dashboard", "api", "cli"]
  }
}

Integration-Specific Restrictions

{
  "integration": "sap_erp",
  "ipAllowlist": {
    "configuration": ["203.0.113.0/24"],
    "monitoring": ["0.0.0.0/0"]
  }
}

Bypass for System Services

Allow monitoring and backup systems to bypass IP restrictions:

# Create a service token with IP bypass
POST /api/v1/tokens
{
  "name": "Monitoring Service",
  "scope": "read",
  "bypass_ip": true
}

Time-Based Access

Grant temporary elevated access:

# Grant admin access for 4 hours
POST /api/v1/users/{user_id}/access
{
  "role": "system_administrator",
  "duration": "4h",
  "reason": "Production incident response"
}

Time-based access:

  • Automatically expires after the specified duration
  • Is logged in the audit trail
  • Can be revoked early if needed

Audit Trail

All RBAC changes are logged:

GET /api/v1/audit-logs?filter=rbac

{
  "logs": [
    {
      "timestamp": "2024-01-15T10:30:00Z",
      "user": "admin@company.com",
      "action": "role.create",
      "details": "Integration Specialist",
      "ip_address": "192.168.1.100"
    },
    {
      "timestamp": "2024-01-15T10:25:00Z",
      "user": "admin@company.com",
      "action": "user.role-change",
      "details": "john@company.com → data_analyst",
      "ip_address": "192.168.1.100"
    }
  ]
}

Best Practices

  1. Principle of least privilege — Start with minimal permissions and add as needed
  2. Use custom roles — Create roles that match your organizational structure
  3. Require approval for production changes — Add a human checkpoint for critical modifications
  4. Enable IP restrictions — Limit access to known networks
  5. Review permissions regularly — Audit who has access to what
  6. Use time-based access — Grant temporary elevated access instead of permanent

Troubleshooting

”Permission denied” errors

Check the user’s effective permissions:

GET /api/v1/users/{user_id}/permissions

Approval workflow not triggering

Verify the workflow is enabled and matches the action:

GET /api/v1/approval-workflows
POST /api/v1/approval-workflows/test
{
  "action": "integrations:update",
  "user": "user@company.com"
}

IP restriction blocking legitimate access

Check if the IP is in the allowlist:

GET /api/v1/security/ip-check?address=203.0.113.50

Add the IP if needed:

POST /api/v1/security/ip-allowlist
{
  "address": "203.0.113.50",
  "reason": "New office location"
}