Class SessionAuthUserManager

java.lang.Object
cn.coufran.springboot.starter.auth.impl.session.SessionAuthUserManager
All Implemented Interfaces:
AuthUserManager

public class SessionAuthUserManager extends Object implements AuthUserManager
基于Session的权限上下文
Since:
1.0.0
Version:
1.0.0
Author:
Coufran
  • Constructor Details

    • SessionAuthUserManager

      public SessionAuthUserManager(jakarta.servlet.http.HttpSession session)
      构造权限上下文
      Parameters:
      session - Session对象(Spring代理对象)
  • Method Details

    • reloadAuthenticated

      public <D> AuthUser<D> reloadAuthenticated(Certificate certificate)
      重新加载实名用户,从Session中取出数据,重新构造权限用户
      Specified by:
      reloadAuthenticated in interface AuthUserManager
      Type Parameters:
      D - 数据类型
      Parameters:
      certificate - 证书
      Returns:
      权限用户,未认证返回null
    • createAnonymous

      public <D> AuthUser<D> createAnonymous()
      构造匿名权限用户
      Specified by:
      createAnonymous in interface AuthUserManager
      Type Parameters:
      D - 数据类型
      Returns:
      权限用户
    • acceptLogin

      public <U> Certificate acceptLogin(AuthUser<U> authUser, U data)
      接受登录,将数据存入Session中
      Specified by:
      acceptLogin in interface AuthUserManager
      Type Parameters:
      U - 数据类型
      Parameters:
      authUser - 权限用户
      data - 基础数据
      Returns:
      访问证书
    • acceptRefresh

      public <D> Certificate acceptRefresh(AuthUser<D> authUser)
      刷新AccessToken
      Specified by:
      acceptRefresh in interface AuthUserManager
      Type Parameters:
      D - 权限用户基础数据类型
      Parameters:
      authUser - 权限用户
      Returns:
      新的权限证书
    • acceptLogout

      public <U> void acceptLogout(AuthUser<U> authUser)
      权限用户登出上下文,移除Session中的数据
      Specified by:
      acceptLogout in interface AuthUserManager
      Type Parameters:
      U - 权限用户基础数据类型
      Parameters:
      authUser - 权限用户