类 JwtLoginFilterImpl
java.lang.Object
org.springframework.web.filter.GenericFilterBean
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter
com.xumumi.filter.AbstractJsonAuthenticationFilter
com.xumumi.filter.impl.JwtLoginFilterImpl
- 所有已实现的接口:
JwtLoginFilter,javax.servlet.Filter,org.springframework.beans.factory.Aware,org.springframework.beans.factory.BeanNameAware,org.springframework.beans.factory.DisposableBean,org.springframework.beans.factory.InitializingBean,org.springframework.context.ApplicationEventPublisherAware,org.springframework.context.EnvironmentAware,org.springframework.context.MessageSourceAware,org.springframework.core.env.EnvironmentCapable,org.springframework.web.context.ServletContextAware
public final class JwtLoginFilterImpl extends AbstractJsonAuthenticationFilter implements JwtLoginFilter
Json 请求过滤器, 继承于
AbstractJsonAuthenticationFilter
此过滤器的配置使用了链式方法,可参考 BaseJwtSecurityConfigurerAdapter 进行配置- 从以下版本开始:
- 1.9
- 作者:
- XUMUMI
- 另请参阅:
BaseJwtSecurityConfigurerAdapter
-
字段概要
从类继承的字段 org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter
authenticationDetailsSource, eventPublisher, messages从类继承的字段 org.springframework.web.filter.GenericFilterBean
logger -
方法概要
修饰符和类型 方法 说明 static JwtLoginFiltercreateJwtLoginFilter(org.springframework.security.authentication.AuthenticationManager manager, String loginProcessingUrl, Function<? super javax.servlet.http.HttpServletRequest,String> secret)JwtLoginFilter生成器List<javax.servlet.http.Cookie>getCookies(javax.servlet.http.HttpServletRequest request, org.springframework.security.core.Authentication authResult)成功时 cookies 的内容,在此基础上加入 tokenvoidsetClaimCallback(Function<? super org.springframework.security.core.Authentication,? extends Map<String,String>> claim)自定义 token 中存放的额外信息voidsetDefaultExpireTime(long time)自定义默认超时时长voidsetRmbExpireTime(long time)自定义记住我超时时间,默认值为 7 天voidsetRmbParameter(String parameter)自定义记住我的字段名,默认值为 "remember"voidsetRmbValue(String value)自定义当记住我字段的值为和值时为启用记住我功能,默认值为 "true"voidsetRoleParameter(String parameter)自定义角色字段名voidsetTokenName(String name)自定义 token 名从类继承的方法 com.xumumi.filter.AbstractJsonAuthenticationFilter
attemptAuthentication, setCookiesCallback, setFailureCallback, setGuardCallback, setPasswordParameter, setSuccessCallback, setUsernameParameter, successfulAuthentication, unsuccessfulAuthentication从类继承的方法 org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter
afterPropertiesSet, doFilter, getAllowSessionCreation, getAuthenticationManager, getFailureHandler, getRememberMeServices, getSuccessHandler, requiresAuthentication, setAllowSessionCreation, setApplicationEventPublisher, setAuthenticationDetailsSource, setAuthenticationFailureHandler, setAuthenticationManager, setAuthenticationSuccessHandler, setContinueChainBeforeSuccessfulAuthentication, setFilterProcessesUrl, setMessageSource, setRememberMeServices, setRequiresAuthenticationRequestMatcher, setSessionAuthenticationStrategy从类继承的方法 org.springframework.web.filter.GenericFilterBean
addRequiredProperty, createEnvironment, destroy, getEnvironment, getFilterConfig, getFilterName, getServletContext, init, initBeanWrapper, initFilterBean, setBeanName, setEnvironment, setServletContext从类继承的方法 java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait从接口继承的方法 javax.servlet.Filter
destroy, doFilter, init从接口继承的方法 com.xumumi.filter.JwtLoginFilter
setCookiesCallback, setFailureCallback, setGuardCallback, setPasswordParameter, setSuccessCallback, setUsernameParameter
-
方法详细资料
-
createJwtLoginFilter
public static JwtLoginFilter createJwtLoginFilter(org.springframework.security.authentication.AuthenticationManager manager, String loginProcessingUrl, Function<? super javax.servlet.http.HttpServletRequest,String> secret)JwtLoginFilter生成器- 参数:
manager- 认证管理器loginProcessingUrl- 登录页地址secret- 用于生成密钥的回调函数- 返回:
JwtLoginFilter对象
-
setRmbExpireTime
public void setRmbExpireTime(long time)自定义记住我超时时间,默认值为 7 天- 指定者:
setRmbExpireTime在接口中JwtLoginFilter- 参数:
time- 超时时长,单位为毫秒
-
setDefaultExpireTime
public void setDefaultExpireTime(long time)自定义默认超时时长- 指定者:
setDefaultExpireTime在接口中JwtLoginFilter- 参数:
time- 自定义 token 默认超时时长,单位为毫秒
-
setRmbValue
自定义当记住我字段的值为和值时为启用记住我功能,默认值为 "true"- 指定者:
setRmbValue在接口中JwtLoginFilter- 参数:
value- 字段值
-
setTokenName
自定义 token 名- 指定者:
setTokenName在接口中JwtLoginFilter- 参数:
name- 自定义 token 的 cookie 名
-
setRoleParameter
自定义角色字段名- 指定者:
setRoleParameter在接口中JwtLoginFilter- 参数:
parameter- 角色字段名
-
setRmbParameter
自定义记住我的字段名,默认值为 "remember"- 指定者:
setRmbParameter在接口中JwtLoginFilter- 参数:
parameter- 字段名
-
setClaimCallback
public void setClaimCallback(Function<? super org.springframework.security.core.Authentication,? extends Map<String,String>> claim)自定义 token 中存放的额外信息- 指定者:
setClaimCallback在接口中JwtLoginFilter- 参数:
claim- 返回信息键值对的回调函数 该回调函数需要传入一个包含登录成功后的实体信息Authentication并生成一系列需要存入 token 的额外信息 claim 键值对表并返回
-
getCookies
public List<javax.servlet.http.Cookie> getCookies(javax.servlet.http.HttpServletRequest request, org.springframework.security.core.Authentication authResult)成功时 cookies 的内容,在此基础上加入 token- 指定者:
getCookies在接口中JwtLoginFilter- 覆盖:
getCookies在类中AbstractJsonAuthenticationFilter- 参数:
request- 登录请求内容authResult- 认证成功获得的实体信息- 返回:
- cookie 列表
-