| syntax = "proto3"; |
| package authpb; |
| |
| import "gogoproto/gogo.proto"; |
| |
| option (gogoproto.marshaler_all) = true; |
| option (gogoproto.sizer_all) = true; |
| option (gogoproto.unmarshaler_all) = true; |
| option (gogoproto.goproto_getters_all) = false; |
| option (gogoproto.goproto_enum_prefix_all) = false; |
| |
| message UserAddOptions { |
| bool no_password = 1; |
| }; |
| |
| // User is a single entry in the bucket authUsers |
| message User { |
| bytes name = 1; |
| bytes password = 2; |
| repeated string roles = 3; |
| UserAddOptions options = 4; |
| } |
| |
| // Permission is a single entity |
| message Permission { |
| enum Type { |
| READ = 0; |
| WRITE = 1; |
| READWRITE = 2; |
| } |
| Type permType = 1; |
| |
| bytes key = 2; |
| bytes range_end = 3; |
| } |
| |
| // Role is a single entry in the bucket authRoles |
| message Role { |
| bytes name = 1; |
| |
| repeated Permission keyPermission = 2; |
| } |