Can user U perform action Y in resource Z ?Which resources can user U edit ?edit action. Let’s say we have a model as follows
document:12 belongs, and owners of the document:12 can edit. Permify runs two concurrent queries for parent.admin and owner:
Q1: Get the owners of the document:12.
Q2: Get admins of the organization where document:12 belongs to.
Since edit action consist or between owner and parent.admin, if Permify Engine found user:3 in results of one of these queries then it terminates the other ongoing queries and returns authorized true to the client.
Rather than or, if we had an and relation then Permify Engine waits the results of these queries to returning a decision.
Identifier of the tenant, if you are not using multi-tenancy (have only one tenant) use pre-inserted tenant t1 for this field. Required, and must match the pattern \“[a-zA-Z0-9-,]+\“, max 64 bytes.
PermissionCheckRequest is the request message for the Check method in the Permission service.
PermissionCheckRequestMetadata metadata for the PermissionCheckRequest.
Entity represents an entity with a type and an identifier.
The action the user wants to perform on the resource
Subject represents an entity subject with a type, an identifier, and a relation.
Context encapsulates the information related to a single operation, including the tuples involved and the associated attributes.
Additional arguments associated with this request.
A successful response.
PermissionCheckResponse is the response message for the Check method in the Permission service.
Enumerates results of a check operation.
CHECK_RESULT_UNSPECIFIED, CHECK_RESULT_ALLOWED, CHECK_RESULT_DENIED PermissionCheckResponseMetadata metadata for the PermissionCheckResponse.