syntax = "proto2"; package org.webswing.server.common.model.security.proto; message WebswingTokenClaimProtoProto { repeated AbstractWebswingUserProtoProto userMap = 1; repeated MapProtoProto attributes = 2; optional string host = 3; } message WebswingLoginSessionTokenClaimProtoProto { repeated MapProtoProto attributes = 1; } message AbstractWebswingUserProtoProto { optional string securedPath = 1; optional string userId = 2; repeated string roles = 3; repeated string permissions = 4; repeated WebswingActionProto webswingActionPermissions = 5; repeated MapProtoProto userAttributes = 6; } enum WebswingActionProto { master_admin_access = 1; master_support_access = 2; master_basic_access = 3; rest_getPaths = 4; rest_getAppInfo = 5; rest_getSession = 6; rest_getStats = 7; rest_startRecording = 8; rest_sessionShutdown = 9; rest_sessionShutdownForce = 10; rest_getConfig = 11; rest_setConfig = 12; rest_startApp = 13; rest_stopApp = 14; rest_createApp = 15; rest_removeApp = 16; rest_getThreadDump = 17; rest_requestThreadDump = 18; rest_toggleStatisticsLogging = 19; rest_getOverview = 20; rest_viewLogs = 21; rest_getApps = 22; rest_getOneTimePassword = 23; websocket_connect = 24; websocket_startRecordingPlayback = 25; websocket_startSwingApplication = 26; websocket_startMirrorView = 27; file_download = 28; file_upload = 29; rest_controlSessionPool = 30; } message MapProtoProto { optional string key = 1; optional bytes value = 2; }