cedar-policy 4.10.0

Cedar is a language for defining permissions as policies, which describe who should have access to what.
Documentation
namespace Core {
    type UserId = __cedar::String;

    entity User = {
        "id": UserId,
        "name": __cedar::String
    };
}

namespace App {
    entity Document = {
        "owner": Core::User,
        "editors": Set<Core::User>
    };

    action edit appliesTo {
        principal: [Core::User],
        resource: [Document],
        context: {}
    };
}