package casbin
import "github.com/labstack/echo-contrib/casbin"
Index ¶
- Variables
- func Middleware(ce *casbin.Enforcer) echo.MiddlewareFunc
- func MiddlewareWithConfig(config Config) echo.MiddlewareFunc
- type Config
Variables ¶
var ( // DefaultConfig is the default CasbinAuth middleware config. DefaultConfig = Config{ Skipper: middleware.DefaultSkipper, UserGetter: func(c echo.Context) (string, error) { username, _, _ := c.Request().BasicAuth() return username, nil }, } )
Functions ¶
func Middleware ¶
func Middleware(ce *casbin.Enforcer) 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 ¶
func MiddlewareWithConfig(config Config) echo.MiddlewareFunc
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 // Enforcer CasbinAuth main rule. // Required. Enforcer *casbin.Enforcer // Method to get the username - defaults to using basic auth UserGetter func(c echo.Context) (string, error) }
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)
func (*Config) GetUserName ¶
GetUserName gets the user name from the request. It calls the UserGetter field of the Config struct that allows the caller to customize user identification.
Source Files ¶
- Version
- v0.10.0
- Published
- Apr 6, 2021
- Platform
- linux/amd64
- Imports
- 4 packages
- Last checked
- now –
Tools for package owners.