-
Notifications
You must be signed in to change notification settings - Fork 2
/
permission.proto
158 lines (123 loc) · 5.37 KB
/
permission.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
/* Permissions limit what a user can do through the API.
*/
syntax = "proto3";
package hiber;
option java_multiple_files = true;
option java_package = "global.hiber.api.grpc";
option go_package = ".;hiber";
/* OrganizationPermissions limit what a user can do in an Organization.
* By default, everyone who has access to an organization, can access basic organization data.
*/
enum OrganizationPermission {
PERMISSION_DEFAULT = 0;
/* Create a new child organization. */
ORGANIZATION_CREATE = 1;
/* Update the organizations data, such as billing information, address, and contact. */
ORGANIZATION_UPDATE = 2;
/* Delete child organizations.
* You cannot delete your own organization. To delete your organization, contact support.
*/
ORGANIZATION_DELETE = 3;
/* List assets, see their details */
ASSETS = 53;
/* Create and update assets, such as their display name and tags. Includes ASSETS permission. */
ASSETS_UPDATE = 54;
/* Read asset values, i.e. pressure measurements. */
ASSETS_VALUES = 55;
/* List modems, see their details and health */
MODEMS = 10;
/* Create new modems. Includes MODEMS permission. */
MODEMS_CREATE = 50;
/* Update modems, such as their peripherals, display name and tags. Includes MODEMS permission. */
MODEMS_UPDATE = 11;
/* Show and regenerate license keys. Includes MODEMS permission. */
MODEMS_LICENSE_KEYS = 12;
/* Manage and assign message body parsers. Includes MODEMS permission. */
MODEMS_MESSAGE_BODY_PARSERS = 43;
/* Show and update secure notes. Includes MODEMS permission. */
MODEMS_SECURE_NOTES = 42;
/* View and assign (with the ASSIGNMENTS permission) alarms. Includes MODEMS permission. */
MODEMS_ALARMS = 44;
/* Manage alarms. Includes MODEMS permission. */
MODEMS_ALARMS_UPDATE = 56;
/* Read modem values. */
MODEM_VALUES = 17;
/* Read modem messages. */
MODEM_MESSAGES = 15;
/* Send modem messages using the TestingService. Does not include MODEMS or MESSAGES permission. */
MODEM_MESSAGES_SEND_TEST_MESSAGES = 16;
/* Send modem messages using real message sources (i.e. gateway). Does not include MODEMS or MESSAGES permission. */
MODEM_MESSAGES_SEND_REAL_MESSAGES = 41;
/* Send modem downlink messages. */
MODEM_DOWNLINK_MESSAGES = 51;
/* See the transfers to/from other organizations. */
TRANSFERS = 20;
/* Transfer devices to another organization. */
TRANSFERS_SEND = 21;
/* List all users, see their names and email addresses. */
USERS = 30;
/* Approve or create new users, remove users from the organization. Includes users permission. */
USERS_MANAGE = 31;
/* Manage publishers: webhooks, MQTT integration and custom email publishers. */
PUBLISHERS = 35;
/* Manage tokens. */
TOKENS = 36;
/* Read and use uploaded certificates (i.e. for publishers). */
CERTIFICATES = 38;
/* Upload certificates, and update or delete uploaded certificates. */
CERTIFICATES_MANAGE = 39;
/* Manage assignments using the assignment services and individual calls on, for example, ModemService. */
ASSIGNMENTS = 45;
/* Manage simulations, like modem message simulation. */
SIMULATION_MANAGE = 46;
/* Manage custom health levels. */
HEALTH_MANAGE = 47;
/* Manage saved locations using the OrganizationLocationService. */
LOCATIONS_MANAGE = 48;
/* Create, access and download exports. */
EXPORT = 49;
/* Create, edit and delete tags. Viewing tags is always allowed. */
TAGS_MANAGE = 52;
reserved 14, 22, 25, 40, 37;
}
/* UserPermissions are generally used to limit what a token can do to its user.
* By default, a user has all UserPermissions, which apply only to himself.
* When creating a token, however, the token typically does not need permission to affect the user at all.
*/
enum UserPermission {
/* Read your name, email, linked organizations and mission-control settings. */
READ = 0;
/* Update your personal information, mission-control settings and default organization. Includes read permission. */
UPDATE = 1;
/* Request access to an organization and cancel open requests. Does not include read permission. */
REQUEST_ACCESS = 2;
/* Delete your user account permanently. Includes read permission. */
DELETE = 3;
}
/* SupportPermissions are used for features typically reserved for customer support, or that behave differently
* when used by a customer support operator.
*/
enum SupportPermission {
/* Allow Customer Support functions. */
CUSTOMER_SUPPORT = 0;
/* Manage organization feature flags. */
MANAGE_ORGANIZATION_FEATURE = 1;
/* Change the device type for devices. */
MANAGE_DEVICE_TYPE = 2;
/* Create and assign custom tags. */
CUSTOM_TAGS = 3;
/* Manage Shell SSIP integration. */
INTEGRATION_SHELL_SSIP = 4;
/* Manage device transmission interval (actual interval). */
MANAGE_DEVICE_TRANSMISSION_INTERVAL = 5;
/* Manage device SLA values (minimum messages per day). */
MANAGE_DEVICE_SLA = 6;
/* View all lifecycles. Without this permission, you can only see INSTALLED and PAUSED. */
DEVICE_VIEW_ALL_LIFECYCLES = 7;
/* Assign device notes. */
MANAGE_DEVICE_NOTES = 8;
/* Assign device time zones. */
MANAGE_DEVICE_TIME_ZONE = 9;
/* Manage organization contract info. */
MANAGE_ORGANIZATION_CONTRACT = 10;
}