summaryrefslogtreecommitdiff
path: root/pkg/authz/casbin.go
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-05-02 14:29:41 -0600
committermo khan <mo@mokhan.ca>2025-05-02 14:29:41 -0600
commitc583bcd1473205104a1e1af812ed4976d30c7baa (patch)
tree933edf78a4ac8aea55256e42641e56bbb4c58834 /pkg/authz/casbin.go
parent91defaefca47e9cebbe92c6abf33c4423df9bc7d (diff)
refactor: remove anything unrelated to the authz daemon
Diffstat (limited to 'pkg/authz/casbin.go')
-rw-r--r--pkg/authz/casbin.go43
1 files changed, 0 insertions, 43 deletions
diff --git a/pkg/authz/casbin.go b/pkg/authz/casbin.go
deleted file mode 100644
index 140bdb98..00000000
--- a/pkg/authz/casbin.go
+++ /dev/null
@@ -1,43 +0,0 @@
-package authz
-
-import (
- "fmt"
- "net"
- "net/http"
-
- "github.com/casbin/casbin/v3"
- "github.com/xlgmokha/x/pkg/log"
- "github.com/xlgmokha/x/pkg/x"
-)
-
-func WithCasbin() Authorizer {
- enforcer := x.Must(casbin.NewEnforcer("casbin.conf", "casbin.csv"))
-
- return AuthorizerFunc(func(r *http.Request) bool {
- host, _, err := net.SplitHostPort(r.Host)
- if err != nil {
- log.WithFields(r.Context(), log.Fields{"error": err})
- return false
- }
-
- subject, found := TokenFrom(r).Subject()
- if !found {
- subject = "*"
- }
- ok, err := enforcer.Enforce(subject, host, r.Method, r.URL.Path)
- if err != nil {
- log.WithFields(r.Context(), log.Fields{"error": err})
- return false
- }
-
- fmt.Printf("%v: %v -> %v %v%v\n", ok, subject, r.Method, host, r.URL.Path)
- log.WithFields(r.Context(), log.Fields{
- "authz": ok,
- "subject": subject,
- "action": r.Method,
- "domain": host,
- "object": r.URL.Path,
- })
- return ok
- })
-}