-
Notifications
You must be signed in to change notification settings - Fork 369
Description
Preflight checklist
- I could not find a solution in the existing issues, docs, nor discussions.
- I agree to follow this project's Code of Conduct.
- I have read and am following this repository's Contribution Guidelines.
- I have joined the Ory Community Slack.
- I am signed up to the Ory Security Patch Newsletter.
Ory Network Project
No response
Describe your problem
I am looking at various languages to describe permissions which I could use in my own Go project. I found Ory Permission Language and I was intrigued by it and was thinking that I could maybe use it instead of casbin to embed into my project a way to have permissions configurable.
Describe your ideal solution
Keto would expose Ory Permission Language as a Go module one could use to parse the specification and then run them against a list of stored permissions to check if a subject has permission to do an action on an object. So all storage and everything else would be abstracted away, only engine to execution the specification for check queries.
Workarounds or alternatives
I could use casbin, but I find its language complicated. On the other hand, I want to have an embedded solution inside my own program and not an external service like Keto, because I would like to update permissions inside one database transaction together with the rest of my data and do not want to deal with complexities of having external data store which I have to assure consistency.
Version
none
Additional Context
No response