package rpc import ( context "context" "net/http" "github.com/xlgmokha/x/pkg/x" "gitlab.com/mokhax/spike/pkg/authz" ) type AbilityHandler struct { authorizer authz.Authorizer UnimplementedAbilityServer } func (h *AbilityHandler) Allowed(ctx context.Context, req *AllowRequest) (*AllowReply, error) { // TODO:: Replace http.Request with authz.Request request := x.Must(http.NewRequestWithContext(ctx, req.Permission, req.Resource, nil)) return &AllowReply{Result: h.authorizer.Authorize(request)}, nil }