File tree Expand file tree Collapse file tree 1 file changed +12
-1
lines changed
Expand file tree Collapse file tree 1 file changed +12
-1
lines changed Original file line number Diff line number Diff line change 11package rbac
22
33import (
4+ _ "embed"
45 "fmt"
56 "log/slog"
67
78 "github.com/casbin/casbin/v2"
9+ "github.com/casbin/casbin/v2/model"
810 gormadapter "github.com/casbin/gorm-adapter/v3"
911 "github.com/google/uuid"
1012 "gorm.io/gorm"
1113)
1214
15+ //go:embed model.conf
16+ var modelConf string
17+
1318var enforcer * casbin.Enforcer
1419
1520// InitEnforcer initializes the Casbin enforcer
@@ -19,7 +24,13 @@ func InitEnforcer(db *gorm.DB, logger *slog.Logger) error {
1924 return fmt .Errorf ("failed to create casbin adapter: %w" , err )
2025 }
2126
22- e , err := casbin .NewEnforcer ("internal/rbac/model.conf" , adapter )
27+ // Load model from embedded string
28+ m , err := model .NewModelFromString (modelConf )
29+ if err != nil {
30+ return fmt .Errorf ("failed to parse casbin model: %w" , err )
31+ }
32+
33+ e , err := casbin .NewEnforcer (m , adapter )
2334 if err != nil {
2435 return fmt .Errorf ("failed to create casbin enforcer: %w" , err )
2536 }
You can’t perform that action at this time.
0 commit comments