Ну у меня есть прототип на основе выражений. Я хз как можно описать.
Короче есть выражение типа
* -> registration/perform
* -> authentification/perform
authenticated -> post/read, create
(Псевдокод) и вот подобными выражениями можно регулировать доступ к сущностям. Очень сырое пока оно у меня, по тому пока даже не опубликовал
Вообще пытался сделать что-то типа графа/многомерной матрицы, где по свойствам актора можно было бы сматчить его с входами, а на выходе получить список того что он может, а что не может (опять же чтобы и на том конце можно было матчить)
Типа
*[not "age">=18 ] -< *[~"18+"]/*
(Типа кто угодно, у кого нет свойства возраста со значением >=18 не может ничего делать с любыми сущностями, у которых есть свойство "18+")