| [request_definition] | |
| r = sub, dom, obj, act | |
| [policy_definition] | |
| p = sub, dom, obj, act, eft | |
| [role_definition] | |
| g = _, _ | |
| g2 = _, _, _ | |
| g3 = _, _, _ | |
| [policy_effect] | |
| e = some(where (p.eft == allow)) && !some(where (p.eft == deny)) | |
| [matchers] | |
| m = (g(r.sub, p.sub) || g2(r.sub, p.sub, r.dom)) \ | |
| && (keyMatch(r.obj, p.obj) || g3(r.obj, p.obj, r.dom)) \ | |
| && (p.dom == 'public' || r.dom == p.dom)\ | |
| && keyMatch(r.act, p.act) \ |