| Interface | Description |
|---|---|
| TokenServiceInf | |
| TokenStore | |
| ValidateApplication |
Title: ValidateApplication.java
|
| Class | Description |
|---|---|
| Application | |
| AppValidateResult | |
| BaseTokenStore | |
| BaseTokenStore.TokenInfo | |
| DBTokenStore | |
| DummyTokenService | |
| MemToken | |
| MemTokenStore | |
| MongodbTokenStore | |
| NullValidateApplication |
Title: NullValidateApplication.java
|
| RedisTokenStore | |
| SecurityMonitorServlet |
独立的token生命周期管理服务,在启用统一的mongodb存储token和ticket情况下有用
|
| Ticket |
Title: Ticket.java
|
| TokenFilter |
防止跨站请求过滤器
bboss防止跨站请求过滤器的机制如下:
采用动态令牌和session相结合的方式产生客户端令牌,一次请求产生一个唯一令牌
令牌识别采用客户端令牌和服务端session标识混合的方式进行判别,如果客户端令牌和服务端令牌正确匹配,则允许访问,否则认为用户为非法用户并阻止用户访问并跳转到
redirectpath参数对应的地址,默认为/login.jsp。
令牌存储机制通过参数tokenstore指定,包括两种,内存存储和session存储,默认为session存储,当令牌失效(匹配后立即失效,或者超时失效)后,系统自动清除失效的令牌;采用session方式
存储令牌时,如果客户端页面没有启用session,那么令牌还是会存储在内存中。
令牌生命周期:客户端的令牌在服务器端留有存根,当令牌失效(匹配后立即失效,或者超时失效)后,系统自动清除失效的令牌;
当客户端并没有正确提交请求,会导致服务端令牌存根变为垃圾令牌,需要定时清除这些
垃圾令牌;如果令牌存储在session中,那么令牌的生命周期和session的生命周期保持一致,无需额外清除机制;
如果令牌存储在内存中,那么令牌的清除由令牌管理组件自己定时扫描清除,定时扫描时间间隔为由tokenscaninterval参数指定,单位为毫秒,默认为30分钟,存根保存时间由tokendualtime参数指定,默认为1个小时
可以通过enableToken参数配置指定是否启用令牌检测机制,true检测,false不检测,默认为false不检测
|
| TokenHelper |
Title: TokenHelper.java
|
| TokenResult |
Title: TokenResult.java
|
| TokenService |
Title: TokenService.java
|
| TokenStoreFactory |
| Exception | Description |
|---|---|
| DTokenValidateFailedException |
Title: DTokenValidateFailedException.java
|
| TokenException |