-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Closed
Labels
Description
Want to prioritize this issue? Try:
Describe the bug
Adding policy programmatically is not applied.
To Reproduce
model.conf file:
[request_definition]
r = sub, obj, dom, act
[policy_definition]
p = sub, obj, dom, act, eft #sub can't change position,must be first
[role_definition]
g = _, _, _
[policy_effect]
e = subjectPriority(p.eft) || deny
[matchers]
m = g(r.sub, p.sub, r.dom) && r.dom == p.dom && r.obj == p.obj && r.act == p.actpolicy.csvfile:
p, usrrole, languages, domain1, read, allow
p, adminrole, languages, domain1, read, allow
p, adminrole, languages, domain1, update, allow
g, adminrole, usrrole, domain1
g, sysadm, adminrole, domain1main.go file :
package main
import (
"github.com/casbin/casbin/v2"
"log"
)
func main() {
e, err := casbin.NewEnforcer("model.conf", "policy.csv")
if err != nil {
log.Fatalf("error: model: %s", err)
}
ok, err := e.AddPolicy("sysadm", "languages", "domain1", "update", "deny")
log.Printf("%v - custom policy: %v", err, ok)
ok, err = e.Enforce("sysadm", "languages", "domain1", "update")
log.Printf("%v - should be false: %v", err, ok)
}Expected behavior
e.Enforce("sysadm", "languages", "domain1", "update") should return false
Screenshots
2022/07/25 15:45:47 <nil> - custom policy: true
2022/07/25 15:45:47 <nil> - should be false: trueReactions are currently unavailable