Token-go: library for login state managing

Github: weloe/token-go: A login authentication library.

What does it do?
This library focuses on solving login authentication problems, such as: login, multi-account login, shared token login, token refresh, double token refresh, QR Code login, logout, kickout, banned, second auth, temp-token, SSO …
Using this library can simplify the authentication and authorization business, and only a few lines of code are needed to implement the above business.
Some using examples:
login token, err := enforcer.Login("1", tokenGo.NewHttpContext(req, w))
logout err := enforcer.Logout(tokenGo.NewHttpContext(req, w))
Banned err = enforcer.Banned("1", "test", 1, 100)
check login b, err := enforcer.IsLogin(tokenGo.NewHttpContext(req, w))

Features

  • multiple login policies, multi-account system login, same-end login, same-end mutually exclusive login, multi-terminal login, multi-terminal mutual exclusion login, scan code login, SSO single sign-on.
  • permission authentication functions, such as temporary tokens, second-level authentication, role authentication, and permission authentication.
  • multiple user session management methods, such as forced logout, kicking people offline, account banning, token auto-renewal, and dual-token renewal.
  • extensions: redisAdapter…