Skip to main content
Version: 1.0

The Platform's Dataspace Concept in FROST

To configure the dataspace model of the platform in FROST, we manage the key entities of the FROST (SensorThings) model within Projects. Users are then assigned project-specific roles that define their access to the sensors, data streams, and observations within each project. This ensures that data access and manipulation are tightly controlled through role-based permissions, allowing users to interact only with the entities relevant to dataspaces they have access to.

How the Platform's Dataspace Concept Maps to FROST

For each Project in FROST, users are assigned UserProjectRoles that define their access to sensors, data streams, and observations in this project (dataspace).

  • Entities: Core data objects in FROST consist of Things, Sensors, DataStreams, Observations, FeaturesOfInterest, Locations, HistoricalLocations, and ObservedProperties. These elements form the Frost API model, which is part of the FROST-Server, a server implementation for the OGC SensorThings API.
  • Project: A project serves as a grouping mechanism for these entities. Projects are seperated schemas on database level. Users must be assigned specific roles within a project to access and manipulate linked entities.
  • UserProjectRole: This component ensures that each user has a specific role within the project (dataspace), governing their ability to read, write, or manage sensor data streams and related entities.
  • Roles: Roles define a user's permissions independently from the project. For example, certain roles might grant permissions to view sensors and observations, while others allow configuration or deletion of entities.

The mapping between platform components and FROST’s data model is illustrated in the diagram below, using color to represent corresponding objects.

FROST-Entities

Setting Up Dataspaces in FROST

Based on the roles assigned in Keycloak, project-specific roles are created in FROST. These roles define the user's permissions within the data space, enabling them to interact with Things, Sensors, DataStreams, and Observations associated with the project (dataspace). Each user will have a corresponding UserProjectRole in FROST that mirrors the role granted in Keycloak.

For more information about how to admin the FROST server, please refer to the Admin Guide.