Bálint Richly
08/26/2025, 6:22 AMAsk Inkeep
08/26/2025, 6:22 AMAsk Inkeep
08/26/2025, 6:22 AMawait permit.api.resource_roles.update(
"file",
"editor",
{
"granted_to": {
"users_with_role": [
{
"linked_by_relation": "parent",
"on_resource": "folder",
"role": "editor",
},
],
},
}
)
(4)
This allows creating specialized roles (like your concreteOrgAdmin) that inherit base permissions while adding specific rules.
Subscription Tiers and Quotas
Permit.io recently introduced quota management in their pricing model (5) . They handle quotas on resources and rules that clients can define within the system .
For subscription-based limitations, you can:
• Use user attributes to store quota values (2)
• Create ABAC policies that check these attributes against resource usage (3)
• Define conditions like checking if a user's subscription tier allows certain actions (6)
Example ABAC approach for quota checking:
• Store quotas as user attributes (e.g., maxQueries, dataLimit) (2)
• Create resource sets based on data volume (6)
• Define user sets based on subscription attributes
• Create policies linking user sets to resource sets with specific conditions
Flexible Permission Mapping
Permit.io provides:
• A no-code UI for managing roles and permissions (3)
• GitOps workflows for version-controlled permission changes (5)
• Dynamic policy adjustments without code changes (3)
• Real-time policy updates to your application
This flexibility is crucial for your early-stage development where permissions frequently change.
The platform supports combining RBAC, ABAC, and ReBAC in one interface , allowing smooth transitions between authorization models without application code changes .Ask Inkeep
08/26/2025, 6:23 AMAlon Boshi
08/26/2025, 6:28 AMOr Weis
08/26/2025, 6:30 AM