Skip to main content
Version: Next

Permissions

Role Based Permissions System

EAS uses a role based permission system. The system is made up of Permissions, Internal Roles, and External Roles. Internal Roles can be assigned a number of permissions to grant them the ability to perform actions against various resources. An External Role cannot be assigned permissions directly but can be assigned a number of Internal Roles which it will inherit permissions from. A request can provide a number of External Roles by name via its access token. A Request can only provide External Roles, it cannot provide Internal Roles or Permissions directly.

Default Roles

When the EAS database is initialised. The following Roles are created.

Default Internal Roles

Internal RolePermissions
MAP_VIEWER_INTERNALEWB:READ, OPPORTUNITIES:READ
STUDIES_CREATOR_INTERNALSTUDIES:READ, STUDIES:CREATE, STUDIES:DELETE
RUN_HOSTING_CAPACITY_INTERNALHC_WORK_PACKAGE:READ, HC_WORK_PACKAGE:CREATE, HC_WORK_PACKAGE:CANCEL
EWB_ADMIN_INTERNALEWB:SWITCH, EWB:LOCK, EWB:UNLOCK
MODEL_EXPORTER_INTERNALPOWER_FACTORY_MODEL_EXPORT:READ, POWER_FACTORY_MODEL_EXPORT:CREATE, POWER_FACTORY_MODEL_EXPORT:DELETE, POWER_FACTORY_MODEL_EXPORT:UPDATE, POWER_FACTORY_EXPORT_TEMPLATE:READ, POWER_FACTORY_EXPORT_TEMPLATE:CREATE, POWER_FACTORY_EXPORT_TEMPLATE:DELETE, POWER_FACTORY_EXPORT_TEMPLATE:UPDATE, SINCAL_MODEL_EXPORT:READ, SINCAL_MODEL_EXPORT:CREATE, SINCAL_MODEL_EXPORT:DELETE, SINCAL_MODEL_EXPORT:UPDATE, SINCAL_EXPORT_TEMPLATE:READ, SINCAL_EXPORT_TEMPLATE:CREATE, SINCAL_EXPORT_TEMPLATE:DELETE, SINCAL_EXPORT_TEMPLATE:UPDATE
METRICS_VIEWER_INTERNALMETRICS:READ
ALLOW_ALL_INTERNALPOWER_FACTORY_EXPORT_TEMPLATE:READ, POWER_FACTORY_EXPORT_TEMPLATE:CREATE, POWER_FACTORY_EXPORT_TEMPLATE:UPDATE, POWER_FACTORY_EXPORT_TEMPLATE:DELETE, POWER_FACTORY_MODEL_EXPORT:CREATE, POWER_FACTORY_MODEL_EXPORT:READ, POWER_FACTORY_MODEL_EXPORT:UPDATE, POWER_FACTORY_MODEL_EXPORT:DELETE, SINCAL_MODEL_EXPORT:READ, SINCAL_MODEL_EXPORT:CREATE, SINCAL_MODEL_EXPORT:DELETE, SINCAL_MODEL_EXPORT:UPDATE, SINCAL_EXPORT_TEMPLATE:READ, SINCAL_EXPORT_TEMPLATE:CREATE, SINCAL_EXPORT_TEMPLATE:DELETE, SINCAL_EXPORT_TEMPLATE:UPDATE, STUDIES:READ, STUDIES:DELETE, STUDIES:CREATE, EWB:SWITCH, EWB:LOCK, EWB:UNLOCK, HC_WORK_PACKAGE:CREATE, HC_WORK_PACKAGE:READ, HC_WORK_PACKAGE:CANCEL, EWB:READ, METRICS:READ, SINCAL_EXPORTER_LOGS:READ, OPPORTUNITIES:READ

Default External Roles

External RoleInternal RolesOverview
SUPER_ADMINALLOW_ALL_INTERNALProvides complete access to all EAS functionality.
EWB_ADMINEWB_ADMIN_INTERNALThe ability to change the network model currently loaded in EWB.
TIMESERIES_MODELLERRUN_HOSTING_CAPACITY_INTERNALThe ability to start and stop Hosting Capacity work packages.
MODELLERMODEL_EXPORTER_INTERNALThe ability to export Power Factory and Sincal models.
DEVELOPERSTUDIES_CREATOR_INTERNALThe ability to create studies.
MAP_VIEWERMAP_VIEWER_INTERNALThe ability to retrieve any map data from EWB. The ability to retrieve "opportunity" data
METRICS_VIEWERMETRICS_VIEWER_INTERNALThe ability to retrieve any information from the Metrics Database.

Http REST Endpoints

PermissionRequired forProvided by default role
EWB:READapi/network/graphql, api/network/hierarchy, api/network/feeder-assets/{container}/{containerId}, api/network/assets/{assetId}, api/network/find/{search}, api/network/assets/by-location/{locationId}, api/network/trace/upstream/asset/{assetId}, api/network/assets/graphics/geo-json, api/energy/profiles/max-demand/{id}, api/energy/profiles/max-demand, api/energy/profiles/max-demand/combine , api/energy/profiles/min-demand/{id} , api/energy/profiles/profiles/range/{id}/from-date/{fromDate}/to-date/{toDate} , api/energy/profiles/weather/{id}/season/{season}/day/{day}/temperature/{temperature}/variance/{variance}, api/energy/analysis/summary, api/energy/analysis/ev/{chargingBlockKw}, api/map/tile/{z}/{x}/{y}, api/map/symbol/{symbolPath...}SUPER_ADMIN, MAP_VIEWER
POWER_FACTORY_MODEL_EXPORT:READapi/power-factory-model/{id}SUPER_ADMIN, MODELLER
SINCAL_MODEL_EXPORT:READapi/sincal-model/{id}SUPER_ADMIN, MODELLER
SINCAL_EXPORTER_LOGS:READapi/sincal-model/{id}/logsSUPER_ADMIN

GraphQL Queries

The GraphQL API is served at /api/graphql. All GraphQL queries forwarded to the EWB server via api/network/graphql require EWB:READ permissions.

PermissionRequired forProvided by default role
EWB:READgetOpportunities(identifiedObject location information), getOpportunityLocations(identifiedObject location information), getOpportunitiesForEquipment(identifiedObject location information), getOpportunity(identifiedObject location information), getDurationCurves(identifiedObject location information)SUPER_ADMIN, MAP_VIEWER
EWB:SWITCHswitchNetworkModelDatabaseSUPER_ADMIN, EWB_ADMIN
EWB:LOCKlockNetworkModelDatabaseSUPER_ADMIN, EWB_ADMIN
EWB:UNLOCKunlockNetworkModelDatabaseSUPER_ADMIN, EWB_ADMIN
HC_WORK_PACKAGE:CREATErunWorkPackageSUPER_ADMIN, TIMESERIES_MODELLER
HC_WORK_PACKAGE:CANCELcancelWorkPackageSUPER_ADMIN, TIMESERIES_MODELLER
HC_WORK_PACKAGE:READgetWorkPackageProgressSUPER_ADMIN, TIMESERIES_MODELLER
POWER_FACTORY_MODEL_EXPORT:CREATEcreatePowerFactoryModelSUPER_ADMIN, MODELLER
POWER_FACTORY_MODEL_EXPORT:DELETEdeletePowerFactoryModelSUPER_ADMIN, MODELLER
POWER_FACTORY_MODEL_EXPORT:READpowerFactoryModelById, powerFactoryModelsByIds, pagedPowerFactoryModelsSUPER_ADMIN, MODELLER
POWER_FACTORY_EXPORT_TEMPLATE:CREATEcreatePowerFactoryModelTemplateSUPER_ADMIN, MODELLER
POWER_FACTORY_EXPORT_TEMPLATE:UPDATEupdatePowerFactoryModelTemplateSUPER_ADMIN, MODELLER
POWER_FACTORY_EXPORT_TEMPLATE:DELETEdeletePowerFactoryModelTemplateSUPER_ADMIN, MODELLER
POWER_FACTORY_EXPORT_TEMPLATE:READpowerFactoryModelTemplateById, powerFactoryModelTemplatesByIds, pagedPowerFactoryModelTemplatesSUPER_ADMIN, MODELLER
SINCAL_MODEL_EXPORT:CREATEcreateSincalModelSUPER_ADMIN, MODELLER
SINCAL_MODEL_EXPORT:DELETEdeleteSincalModelSUPER_ADMIN, MODELLER
SINCAL_MODEL_EXPORT:READsincalModelById, sincalModelsByIds, pagedSincalModelsSUPER_ADMIN, MODELLER
SINCAL_EXPORT_PRESET:CREATEcreateSincalModelPresetSUPER_ADMIN, MODELLER
SINCAL_EXPORT_PRESET:UPDATEupdateSincalModelPresetSUPER_ADMIN, MODELLER
SINCAL_EXPORT_PRESET:DELETEdeleteSincalModelPresetSUPER_ADMIN, MODELLER
SINCAL_EXPORT_PRESET:READsincalModelPresetById, sincalModelPresetsByIds, pagedSincalModelPresetsSUPER_ADMIN, MODELLER
STUDIES:CREATEaddStudiesSUPER_ADMIN, DEVELOPER
STUDIES:DELETEdeleteStudiesSUPER_ADMIN, DEVELOPER
STUDIES:READstudiesById, studies, pagedStudies, resultsById, stylesByIdSUPER_ADMIN, DEVELOPER
METRICS:READgetAllJobs, getNewestJob, getSources, getMetricsSUPER_ADMIN, METRICS_VIEWER
OPPORTUNITIES:READgetOpportunities, getOpportunityLocations, getOpportunitiesForEquipment, getOpportunity, getDurationCurvesSUPER_ADMIN, MAP_VIEWER