Skip to main content
The c.technology platform implements a sophisticated role-based access control (RBAC) system that provides granular control over what users can see and do within the platform. This permission system operates at multiple levels, from high-level feature access down to individual sensor data fields, ensuring appropriate data visibility while maintaining security and compliance requirements.

Permission system architecture

The permission system is built on three core concepts that work together to provide flexible and scalable access control:
  1. Permissions - Atomic capabilities that define specific actions or access rights (down to temporally restricted access to individual data fields)
  2. Roles - Collections of permissions that represent common job functions or access patterns
  3. Assignments - The binding of roles to users for specific contexts (vehicles, organizations)
Additionally, permissions are transitive through organizational hierarchies, meaning that users inherit permissions based on their organization memberships and the roles assigned to those organizations for specific vehicles. This architecture enables fine-grained control while remaining manageable for administrators and intuitive for end users.

Permission categories

The platform organizes permissions into distinct categories that makes permissions easy to understand and manage:

User permissions

General permissions that control a user’s access to platform-wide functionality:
These permissions control access to personal settings, notification management, geofencing configuration, and other user-centric features.

Vehicle permissions

Permissions that control access to specific vehicle data and functionality:
Vehicle permissions provide the core access control for vehicle data, from basic status viewing to detailed operational control.

UI user permissions

Permissions that control which user interface elements are visible in web applications:
These permissions enable customization of the user interface based on user roles and organizational needs.

UI vehicle permissions

Permissions that control vehicle-specific UI elements and data presentation:

App permissions

Permissions specific to mobile application functionality:

Organization permissions

Permissions that control organizational management and administration:

Sensor-Level Permissions

Beyond functional permissions, the platform implements granular sensor-level permissions that control access to individual data fields within vehicle status models. This capability is essential for data privacy compliance by restricting access to location or personal data, commercial data protection for proprietary sensor information, role-based data filtering where different users see different data sets, and regulatory compliance for industry-specific data access requirements.

Sensor Permission Structure

Sensor permissions are defined by specifying the exact model and field combination:

Predefined Roles

The platform includes a comprehensive set of predefined roles that cover common use cases and organizational structures. For user roles, these include:
  • USER_STANDARD: Standard user role.
  • USER_READ_ONLY: Read-only user role.
  • USER_MAP_ONLY: User cannot do anything except for looking at the map. Useful for on-vehicle displays in shared vehicles.
For vehicle (access) roles, these include:
  • VEHICLE_OWNER: Owner of the vehicle.
  • VEHICLE_USER: User of the vehicle - the same as OWNER in terms of access, but without admin rights, such as to add or remove other users.
  • VEHICLE_MAINTAINER: Person responsible for the maintenance of the vehicle.
  • VEHICLE_MANUFACTURER: Person responsible for the manufacturing of the vehicle.
  • VEHICLE_MANUFACTURER_UPLOAD: Person responsible for the manufacturing of the vehicle (can upload data for this vehicle).
  • VEHICLE_READ_ONLY: Person can only observe the data of the vehicle, but cannot edit anything.
  • VEHICLE_NO_DETAIL_NO_EDIT: User can not see details of trips nor edit vehicle profile.
  • VEHICLE_ONLY_CURRENT: User can not see anything except the current position and data.
  • VEHICLE_UPLOAD_DATA: Vehicle can upload data. Used for API keys.
  • VEHICLE_OWNER_GROUP_FOLLOWER: Owner of a vehicle, but many functions are disabled to make it clear a vehicle is part of a group (and only the group leader can be used for common tasks, such as notes, documents, etc.).
For organization roles, these include:
  • USER_ORG_STANDARD: Standard user org access role
  • USER_ORG_ADMIN: Admin user org access role
  • USER_ORG_READ_ONLY: Read-only user org access role
  • USER_ORG_SERVICE: Service user org access role
  • USER_ORG_MARKETING: Marketing user org access role
  • USER_ORG_ENGINEER: Engineer user org access role

Permission Auditing and Compliance

The platform maintains comprehensive audit trails for all permission-related activities. Audit trail components include permission grants and revocations with timestamps and responsible parties, role assignments and modifications including custom role changes, access attempts and authorization decisions for compliance monitoring, and administrative actions affecting permissions and roles. Compliance features include data access logging for regulatory compliance (GDPR, CCPA, etc.), permission reports for organizational audits, access certification workflows for periodic reviews, and automated alerts for unusual permission patterns.