Package com.authzed.api.v1
Interface PermissionsServiceGrpc.AsyncService
- All Known Implementing Classes:
PermissionsServiceGrpc.PermissionsServiceImplBase
- Enclosing class:
- PermissionsServiceGrpc
public static interface PermissionsServiceGrpc.AsyncService
PermissionsService implements a set of RPCs that perform operations on relationships and permissions.
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
checkBulkPermissions
(CheckBulkPermissionsRequest request, io.grpc.stub.StreamObserver<CheckBulkPermissionsResponse> responseObserver) CheckBulkPermissions evaluates the given list of permission checks and returns the list of results.default void
checkPermission
(CheckPermissionRequest request, io.grpc.stub.StreamObserver<CheckPermissionResponse> responseObserver) CheckPermission determines for a given resource whether a subject computes to having a permission or is a direct member of a particular relation.default void
deleteRelationships
(DeleteRelationshipsRequest request, io.grpc.stub.StreamObserver<DeleteRelationshipsResponse> responseObserver) DeleteRelationships atomically bulk deletes all relationships matching the provided filter.default void
expandPermissionTree
(ExpandPermissionTreeRequest request, io.grpc.stub.StreamObserver<ExpandPermissionTreeResponse> responseObserver) ExpandPermissionTree reveals the graph structure for a resource's permission or relation.default void
exportBulkRelationships
(ExportBulkRelationshipsRequest request, io.grpc.stub.StreamObserver<ExportBulkRelationshipsResponse> responseObserver) ExportBulkRelationships is the fastest path available to exporting relationships from the server.default io.grpc.stub.StreamObserver<ImportBulkRelationshipsRequest>
importBulkRelationships
(io.grpc.stub.StreamObserver<ImportBulkRelationshipsResponse> responseObserver) ImportBulkRelationships is a faster path to writing a large number of relationships at once.default void
lookupResources
(LookupResourcesRequest request, io.grpc.stub.StreamObserver<LookupResourcesResponse> responseObserver) LookupResources returns all the resources of a given type that a subject can access whether via a computed permission or relation membership.default void
lookupSubjects
(LookupSubjectsRequest request, io.grpc.stub.StreamObserver<LookupSubjectsResponse> responseObserver) LookupSubjects returns all the subjects of a given type that have access whether via a computed permission or relation membership.default void
readRelationships
(ReadRelationshipsRequest request, io.grpc.stub.StreamObserver<ReadRelationshipsResponse> responseObserver) ReadRelationships reads a set of the relationships matching one or more filters.default void
writeRelationships
(WriteRelationshipsRequest request, io.grpc.stub.StreamObserver<WriteRelationshipsResponse> responseObserver) WriteRelationships atomically writes and/or deletes a set of specified relationships.
-
Method Details
-
readRelationships
default void readRelationships(ReadRelationshipsRequest request, io.grpc.stub.StreamObserver<ReadRelationshipsResponse> responseObserver) ReadRelationships reads a set of the relationships matching one or more filters.
-
writeRelationships
default void writeRelationships(WriteRelationshipsRequest request, io.grpc.stub.StreamObserver<WriteRelationshipsResponse> responseObserver) WriteRelationships atomically writes and/or deletes a set of specified relationships. An optional set of preconditions can be provided that must be satisfied for the operation to commit.
-
deleteRelationships
default void deleteRelationships(DeleteRelationshipsRequest request, io.grpc.stub.StreamObserver<DeleteRelationshipsResponse> responseObserver) DeleteRelationships atomically bulk deletes all relationships matching the provided filter. If no relationships match, none will be deleted and the operation will succeed. An optional set of preconditions can be provided that must be satisfied for the operation to commit.
-
checkPermission
default void checkPermission(CheckPermissionRequest request, io.grpc.stub.StreamObserver<CheckPermissionResponse> responseObserver) CheckPermission determines for a given resource whether a subject computes to having a permission or is a direct member of a particular relation.
-
checkBulkPermissions
default void checkBulkPermissions(CheckBulkPermissionsRequest request, io.grpc.stub.StreamObserver<CheckBulkPermissionsResponse> responseObserver) CheckBulkPermissions evaluates the given list of permission checks and returns the list of results.
-
expandPermissionTree
default void expandPermissionTree(ExpandPermissionTreeRequest request, io.grpc.stub.StreamObserver<ExpandPermissionTreeResponse> responseObserver) ExpandPermissionTree reveals the graph structure for a resource's permission or relation. This RPC does not recurse infinitely deep and may require multiple calls to fully unnest a deeply nested graph.
-
lookupResources
default void lookupResources(LookupResourcesRequest request, io.grpc.stub.StreamObserver<LookupResourcesResponse> responseObserver) LookupResources returns all the resources of a given type that a subject can access whether via a computed permission or relation membership.
-
lookupSubjects
default void lookupSubjects(LookupSubjectsRequest request, io.grpc.stub.StreamObserver<LookupSubjectsResponse> responseObserver) LookupSubjects returns all the subjects of a given type that have access whether via a computed permission or relation membership.
-
importBulkRelationships
default io.grpc.stub.StreamObserver<ImportBulkRelationshipsRequest> importBulkRelationships(io.grpc.stub.StreamObserver<ImportBulkRelationshipsResponse> responseObserver) ImportBulkRelationships is a faster path to writing a large number of relationships at once. It is both batched and streaming. For maximum performance, the caller should attempt to write relationships in as close to relationship sort order as possible: (resource.object_type, resource.object_id, relation, subject.object.object_type, subject.object.object_id, subject.optional_relation). All relationships written are done so under a single transaction.
-
exportBulkRelationships
default void exportBulkRelationships(ExportBulkRelationshipsRequest request, io.grpc.stub.StreamObserver<ExportBulkRelationshipsResponse> responseObserver) ExportBulkRelationships is the fastest path available to exporting relationships from the server. It is resumable, and will return results in an order determined by the server.
-