Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( DefaultLogger = &logger.Zap{} // DefaultConfig is the default CasbinAuth middleware config. DefaultConfig = Config{ Skipper: middleware.DefaultSkipper, Mode: EnforceModeEnforcing, Logger: DefaultLogger, } )
Functions ¶
func Middleware ¶
func Middleware(c client.Client, mode EnforceMode) echo.MiddlewareFunc
Middleware returns a CasbinAuth middleware.
For valid credentials it calls the next handler. For missing or invalid credentials, it sends "401 - Unauthorized" response.
func MiddlewareWithConfig ¶
MiddlewareWithConfig returns a CasbinAuth middleware with config. See `Middleware()`.
Types ¶
type Config ¶
type Config struct { // Skipper defines a function to skip middleware. Skipper middleware.Skipper // Enforce mode Mode EnforceMode // Logger Logger logger.Logger // CtxUserExtractor CtxUserExtractor CtxUserExtractor // Service Name ServiceName string // contains filtered or unexported fields }
Config defines the config for CasbinAuth middleware.
func (*Config) CheckPermission ¶
CheckPermission checks the user/method/path combination from the request. Returns true (permission granted) or false (permission forbidden)
type CtxUserExtractor ¶
type CtxUserExtractor func(c echo.Context) string
type EnforceMode ¶
type EnforceMode int
const ( EnforceModeUnknown EnforceMode = iota EnforceModePermissive EnforceModeEnforcing EnforceModeDisabled )
Click to show internal directories.
Click to hide internal directories.