Documentation
¶
Overview ¶
Base on https://github.com/martini-contrib/sessionauth 这里不能随便自定义,否则,需要改的好多地方,如 模板
Index ¶
Constants ¶
View Source
const (
DefaultKey = "github.com/foxiswho/echo-go/modules/auth_admin"
)
Variables ¶
View Source
var ( // RedirectUrl should be the relative URL for your login route RedirectUrl string = "/admin/login" // RedirectParam is the query string parameter that will be set // with the page the user_service was trying to visit before they were // intercepted. RedirectParam string = "return_url" // SessionKey is the key containing the unique ID in your session SessionKey string = "ADMINAUTHUNIQUEID" )
Functions ¶
func AuthenticateSession ¶
AuthenticateSession will mark the session and user_service object as authenticated. Then the Login() user_service function will be called. This function should be called after you have validated a user_service.
func LoginRequired ¶
func LoginRequired() echo.MiddlewareFunc
LoginRequired verifies that the current user_service is authenticated. Any routes that require a login should have this handler placed in the flow. If the user_service is not authenticated, they will be redirected to /login with the "next" get parameter set to the attempted URL.
func New ¶
func New(newAdmin func() Admin) echo.MiddlewareFunc
Types ¶
type Admin ¶
type Admin interface {
// Return whether this user_service is logged in or not
IsAuthenticated() bool
// Set any flags or extra data that should be available
Login()
// Clear any sensitive data out of the user_service
Logout()
// Return the unique identifier of this user_service object
UniqueId() interface{}
RoleId() int
// Populate this user_service object with values
GetById(id interface{}) error
}
Click to show internal directories.
Click to hide internal directories.