blob: 9702d16d83d09df83db3e9179d3046928cea3886 [file] [log] [blame]
// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
syntax = "proto3";
package monorail.v3;
option go_package = "infra/monorailv2/api/v3/api_proto";
import "google/api/field_behavior.proto";
import "api/v3/api_proto/permission_objects.proto";
// ***DO NOT CALL rpcs IN THIS SERVICE.***
// This service is for Monorail's frontend only.
// Permissions service includes all methods needed for fetching permissions.
service Permissions {
// status: DO NOT USE
// Returns the requester's permissions for the given resource.
//
// Raises:
// PERMISSION_DENIED if the given resource does not exist and/or the
// requester does not have permission to view the resource's name space.
// NOT_FOUND if the given resource does not exist.
rpc GetPermissionSet (GetPermissionSetRequest) returns (PermissionSet) {}
// status: DO NOT USE
// Returns the requester's permissions for all the given resources.
//
// Raises:
// PERMISSION_DENIED if any of the given resources do not exist and/or the
// requester does not have permission to view one of the resource's
// name space.
// NOT_FOUND if one of the given resources do not exist.
rpc BatchGetPermissionSets (BatchGetPermissionSetsRequest) returns (BatchGetPermissionSetsResponse) {}
}
// Request message for the GetPermissionSet emthod.
// Next available tag: 2
message GetPermissionSetRequest {
// The resource name of the resource permissions to retrieve.
string name = 1 [ (google.api.field_behavior) = REQUIRED ];
}
// Request message for the BatchGetPermissionSets method.
// Next available tag: 2
message BatchGetPermissionSetsRequest {
// The resource names of the resource permissions to retrieve.
repeated string names = 1 [ (google.api.field_behavior) = REQUIRED ];
}
// Response message for the BatchGetPermissionSets method.
// Next available tag: 2
message BatchGetPermissionSetsResponse {
// The Permissions, one for each of the given resources.
repeated PermissionSet permission_sets = 1;
}