orbit-db-access-controllers
orbit-db-access-controllers copied to clipboard
Support access revocation in OrbitDB access controller
This PR will add access revocation support for the OrbitDB Access Controller.
This PR, and approach in general, is still very much WIP.
Depends on https://github.com/orbitdb/orbit-db-access-controller-store (new repo coming along with this PR)
There's still bunch of things to consider here and more tests need to be added (especially for access revocation under network partition / when DBs diverge).
I think it'd make sense to reduce the complexity down a bit and remove the "capabilities" part (=various "access" levels) and consider access to write either granted or revoked. The different roles/access levels don't make much sense as they're tied to canAppend()'s functionality (eg. canAppend determines which ac level is allowed to append, so it's always a fixed level/set of levels).