blob: 8f82b7cf1e429579197f355b52bee6b58e35021e [file] [log] [blame]
William Kurkianea869482019-04-09 15:16:11 -04001syntax = "proto3";
2package authpb;
3
4import "gogoproto/gogo.proto";
5
6option (gogoproto.marshaler_all) = true;
7option (gogoproto.sizer_all) = true;
8option (gogoproto.unmarshaler_all) = true;
9option (gogoproto.goproto_getters_all) = false;
10option (gogoproto.goproto_enum_prefix_all) = false;
11
Abhilash S.L3b494632019-07-16 15:51:09 +053012message UserAddOptions {
13 bool no_password = 1;
14};
15
William Kurkianea869482019-04-09 15:16:11 -040016// User is a single entry in the bucket authUsers
17message User {
18 bytes name = 1;
19 bytes password = 2;
20 repeated string roles = 3;
Abhilash S.L3b494632019-07-16 15:51:09 +053021 UserAddOptions options = 4;
William Kurkianea869482019-04-09 15:16:11 -040022}
23
24// Permission is a single entity
25message Permission {
26 enum Type {
27 READ = 0;
28 WRITE = 1;
29 READWRITE = 2;
30 }
31 Type permType = 1;
32
33 bytes key = 2;
34 bytes range_end = 3;
35}
36
37// Role is a single entry in the bucket authRoles
38message Role {
39 bytes name = 1;
40
41 repeated Permission keyPermission = 2;
42}