casbin.go 512 B

1234567891011121314151617181920
  1. package global
  2. import (
  3. "IotAdmin/core/sdk"
  4. "IotAdmin/core/sdk/api"
  5. "github.com/casbin/casbin/v2"
  6. "github.com/gin-gonic/gin"
  7. )
  8. // LoadPolicy 加载casbin权限策略
  9. func LoadPolicy(c *gin.Context) (*casbin.SyncedEnforcer, error) {
  10. log := api.GetRequestLogger(c)
  11. if err := sdk.Runtime.GetCasbinKey(c.Request.Host).LoadPolicy(); err == nil {
  12. return sdk.Runtime.GetCasbinKey(c.Request.Host), err
  13. } else {
  14. log.Errorf("casbin rbac_model 策略初始化错误, %s ", err.Error())
  15. return nil, err
  16. }
  17. }