What is a Resource?
A resource represents an entity in your application that you want to protect with permissions. Documents, projects, users, reports, jobs—anything that subjects need permission to access is a resource.Resource Types
Define categories of resources
Resource Hierarchies
Model parent-child resource relationships
Resource Scope Links
Share resources across scopes
Resource Collections
Dynamic resource grouping with match rules
Resource Policies
Fine-grained allow/deny on resources
Tags
Classify resources with tags
Resource Properties
Creating Resources
Resource-Based Permissions
Permissions can target specific resources or resource patterns:Evaluating Against Resources
When checking permissions, you can specify the resource:Resource Ownership
A resource’sownerScopeId is the scope that owns it (it also serves as the always-reachable scope for the reachability gate—see Resource Scope Links). It is a scope, not a subject.
To make a subject an owner of a resource—so the engine grants that subject an owner
role’s permissions on it—use a resource-ownership grant (
owns(subject, resource, role)),
which the engine evaluates as its own leg. That is distinct from ownerScopeId.Common Patterns
Pattern 1: Document Management
Pattern 2: Project Management
Pattern 3: E-Commerce
API Reference
Create Resource Type
Define a new resource type
Create Resource
Create a resource instance
Get Resources
List resources
Resource Types API
All resource type operations
Next Steps
Resource Types
Learn how to define resource type schemas