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.