Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/craigpastro/rebac-in-the-logs
https://github.com/craigpastro/rebac-in-the-logs
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/craigpastro/rebac-in-the-logs
- Owner: craigpastro
- License: mit
- Created: 2022-09-27T20:26:42.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-03-23T04:15:21.000Z (almost 2 years ago)
- Last Synced: 2024-04-17T16:11:20.414Z (8 months ago)
- Language: Prolog
- Size: 25.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ReBAC in the Logs
Inspired by the article [Is Datalog a good language for authorization?](https://neilmadden.blog/2022/02/19/is-datalog-a-good-language-for-authorization/) by Neil Madden, I am playing around trying to write a Zanzibar-inspired ReBAC implementation with some of the "...logs".
- [SWI-Prolog](./swipl)
- [Logica](./logica) WIP
- [Souffle](./souffle) WIPThe main difference between the Prolog version and the current Datalog versions is that I can't figure out how to get intersection and exclusion to work in the latter. The current Prolog prolog does not seem to be translatable to Datalog due to "ungrounded variables" in the head of a rule. **If anyone can help with this please let me know!** I would love to talk to someone who knows (or would like to learn) Datalog or Logica or Mangle.
The Prolog version has also been implemented using [Ichiban Prolog](https://github.com/ichiban/prolog) and wrapped in a web app. You can find it at https://github.com/craigpastro/nungwi if you are interested.