42 lines
822 B
Protocol Buffer
42 lines
822 B
Protocol Buffer
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;
|
|
}
|