Mihiru Kongahage
12/15/2025, 7:47 AMAsk Inkeep
12/15/2025, 7:47 AMAsk Inkeep
12/15/2025, 7:47 AMOPAL_STORE_BACKUP_INTERVAL, default is 60 seconds) and also on graceful shutdown
• You can customize the backup interval and file paths using these environment variables:
• PDP_OFFLINE_MODE_BACKUP_DIR (default /app/backup)
• PDP_OFFLINE_MODE_POLICY_BACKUP_FILENAME (default policy_store_backup.json)
• OPAL_STORE_BACKUP_INTERVAL (default 1 minute)
*Regarding your specific questions:*
1. *Accidental deletions / restoration:* The documentation mentions "point-in-time restore to recover previous authorization states" and Git-backed policies for auditing. (1) However, specific details on restoring from accidental deletions aren't explicitly documented in the available sources.
2. *Maintaining your own backup copy for compliance:* The PDP configuration backup file is encrypted on disk using a key derived from your PDP_API_KEY. Currently, OPAL's policy store backup file is *not encrypted*, so you should secure the mounted host directory/volume where backup files are stored. (2)
*What's not explicitly documented:*
• A specific RPO guarantee (e.g., every 4 hours) from Permit's cloud side
• A platform-level mechanism for exporting/maintaining compliance copies beyond the local PDP backups
For more details on compliance-specific backup requirements or cloud-side RPO guarantees, I'd recommend reaching out via Email .Ask Inkeep
12/15/2025, 7:48 AMAlon Boshi
12/15/2025, 8:44 AMAlon Boshi
12/15/2025, 11:11 AMBashwara Undupitiya
12/15/2025, 3:03 PMOr Weis
12/15/2025, 4:46 PMWhat’s the default RPO on your end?Our Soc2 enforced RPO is 24 hours
Docs mention about a PDP offline mode which uses a backup file in a mounted volume. Where can I get this backup?That backup is stored locally on the volume the PDP is using per the configuration See
PDP_OFFLINE_MODE_BACKUP_DIR . It is literally included in this thread.
For some additional context, the reason for asking this question is, we’re planning to use permit.io exclusively WITHOUT storing permission related relationship data (eg: role assignments) in our application database. Based on your response, it seems like you’re advising against that. Could you please confirm?That is very common usage pattern, and we encourage it - Permit can be your single source of truth for anything for permissions. Note: this isn’t the same as storing all the data you want to have permissions for in Permit.
If we were to export the data that we have in our permit workspace, any suggestions for a good way to do it? (based on your experience maybe?)Per environment in your workspace you have 3 options (ordered by recommendation): 1. Via the PDP offline mode as described above 2. Via exposing OPA directly in the PDP and using its data API 3. Via the PDP API 4. Via the Permit control plane API
Bashwara Undupitiya
12/16/2025, 7:37 AMBashwara Undupitiya
12/16/2025, 7:47 AMAsk Inkeep
12/16/2025, 7:47 AMAsk Inkeep
12/16/2025, 7:48 AMAsk Inkeep
12/16/2025, 7:48 AMAlon Boshi
12/16/2025, 8:33 AMBashwara Undupitiya
12/16/2025, 8:57 AMOr Weis
12/16/2025, 9:39 AMFrom the AI explanations it seems like a PDP offline backup cannot be used to restore an permit environment to a previous state (and that’s by design since that’s not it’s intended purpose) -- correct?There’s no automatic way to do it ; but you can use the exported data through the API to recreate the stored state.
Regarding my requirement of restoring the state of a permit environment (similar to a point-in-time restore), My understanding is that I’ll have to rely on the permit cloud APIs (like the bulk operation APIs) and build my own backup & restore solution on top of it which backs up the permit environment state (policies and data) periodically, could you please confirm?That’s essentially correct. But a more important question, is why would you need to backup and restore Permit environments?
has any of your existing customers requested this kind of a feature and what was your recommendation regarding that?While requested from time to time (for different reasons), this is not a highly requested feature. Recommendations are as you received here.
is there a way to add delete locks to permit projects or environments?• There’s the policy guard feature (currently API only) - https://docs.permit.io/how-to/policy-guard/policy_guard ◦ it allows you to lock policy objects from being changed • You can limit Editor (which includes delete) access to a project / environment only to a specific user or API-key
Bashwara Undupitiya
12/16/2025, 10:53 AMBut a more important question, is why would you need to backup and restore Permit environments?It's for insurance during a DR, breach or a mishap scenario. To make sure that we can revert back to a desired state. Additionally, it's also required to satisfy some compliance requirements. Thanks for the explanations Or. We'll try out some of these recommended approaches and reach out if we have any further questions.