syntax = "proto3"; package go.micro.auth; import "auth/service/proto/auth.proto"; service Rules { rpc Create(CreateRequest) returns (CreateResponse) {}; rpc Delete(DeleteRequest) returns (DeleteResponse) {}; rpc List(ListRequest) returns (ListResponse) {}; } enum Access { UNKNOWN = 0; GRANTED = 1; DENIED = 2; } message Rule { string id = 1; string role = 2; Resource resource = 3; Access access = 4; } message CreateRequest { string role = 1; Resource resource = 2; Access access = 3; } message CreateResponse {} message DeleteRequest { string role = 1; Resource resource = 2; Access access = 3; } message DeleteResponse {} message ListRequest { } message ListResponse { repeated Rule rules = 1; }