Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/Smith-Cruise/Spring-Boot-Shiro
/ functions
Functions
49 in github.com/Smith-Cruise/Spring-Boot-Shiro
⨍
Functions
49
◇
Types & classes
13
↓ 3 callers
Method
getUser
(String username)
src/main/java/org/inlighting/database/UserService.java:10
↓ 2 callers
Method
getData
()
src/main/java/org/inlighting/database/DataSource.java:24
↓ 2 callers
Method
getPassword
()
src/main/java/org/inlighting/database/UserBean.java:20
↓ 2 callers
Method
getUsername
获得token中的信息无需secret解密也能获得 @return token中包含的用户名
src/main/java/org/inlighting/util/JWTUtil.java:40
↓ 1 callers
Method
executeLogin
(ServletRequest request, ServletResponse response)
src/main/java/org/inlighting/shiro/JWTFilter.java:33
↓ 1 callers
Method
getCredentials
()
src/main/java/org/inlighting/shiro/JWTToken.java:19
↓ 1 callers
Method
getPermission
()
src/main/java/org/inlighting/database/UserBean.java:36
↓ 1 callers
Method
getRole
()
src/main/java/org/inlighting/database/UserBean.java:28
↓ 1 callers
Method
getStatus
(HttpServletRequest request)
src/main/java/org/inlighting/controller/ExceptionController.java:35
↓ 1 callers
Method
isLoginAttempt
判断用户是否想要登入。 检测header里面是否包含Authorization字段即可
src/main/java/org/inlighting/shiro/JWTFilter.java:23
↓ 1 callers
Method
login
(@RequestParam("username") String username, @RequestParam("password") String pas
src/main/java/org/inlighting/controller/WebController.java:29
↓ 1 callers
Method
response401
将非法请求跳转到 /401
src/main/java/org/inlighting/shiro/JWTFilter.java:87
↓ 1 callers
Method
setPassword
(String password)
src/main/java/org/inlighting/database/UserBean.java:24
↓ 1 callers
Method
setPermission
(String permission)
src/main/java/org/inlighting/database/UserBean.java:40
↓ 1 callers
Method
setRole
(String role)
src/main/java/org/inlighting/database/UserBean.java:32
↓ 1 callers
Method
setUsername
(String username)
src/main/java/org/inlighting/database/UserBean.java:16
↓ 1 callers
Method
sign
生成签名,5min后过期 @param username 用户名 @param secret 用户的密码 @return 加密的token
src/main/java/org/inlighting/util/JWTUtil.java:55
↓ 1 callers
Method
verify
校验token是否正确 @param token 密钥 @param secret 用户的密码 @return 是否正确
src/main/java/org/inlighting/util/JWTUtil.java:23
Method
JWTToken
(String token)
src/main/java/org/inlighting/shiro/JWTToken.java:10
Method
ResponseBean
(int code, String msg, Object data)
src/main/java/org/inlighting/bean/ResponseBean.java:14
Method
UnauthorizedException
(String msg)
src/main/java/org/inlighting/exception/UnauthorizedException.java:4
Method
article
()
src/main/java/org/inlighting/controller/WebController.java:40
Method
authorizationAttributeSourceAdvisor
(DefaultWebSecurityManager securityManager)
src/main/java/org/inlighting/shiro/ShiroConfig.java:83
Method
defaultAdvisorAutoProxyCreator
下面的代码是添加注解支持
src/main/java/org/inlighting/shiro/ShiroConfig.java:68
Method
doGetAuthenticationInfo
默认使用此方法进行用户名正确与否验证,错误抛出异常即可。
src/main/java/org/inlighting/shiro/MyRealm.java:57
Method
doGetAuthorizationInfo
只有当需要检测用户权限的时候才会调用此方法,例如checkRole,checkPermission之类的
src/main/java/org/inlighting/shiro/MyRealm.java:43
Method
factory
(DefaultWebSecurityManager securityManager)
src/main/java/org/inlighting/shiro/ShiroConfig.java:40
Method
getCode
()
src/main/java/org/inlighting/bean/ResponseBean.java:20
Method
getData
()
src/main/java/org/inlighting/bean/ResponseBean.java:36
Method
getManager
(MyRealm realm)
src/main/java/org/inlighting/shiro/ShiroConfig.java:21
Method
getMsg
()
src/main/java/org/inlighting/bean/ResponseBean.java:28
Method
getPrincipal
()
src/main/java/org/inlighting/shiro/JWTToken.java:14
Method
getUsername
()
src/main/java/org/inlighting/database/UserBean.java:12
Method
globalException
(HttpServletRequest request, Throwable ex)
src/main/java/org/inlighting/controller/ExceptionController.java:29
Method
handle401
(ShiroException e)
src/main/java/org/inlighting/controller/ExceptionController.java:15
Method
isAccessAllowed
这里我们详细说明下为什么最终返回的都是true,即允许访问 例如我们提供一个地址 GET /article 登入用户和游客看到的内容是不同的 如果在这里返回了false,请求会被直接拦截,用户看不到任何东西 所以我们在这里返回true,Controller中可以通过 subject.isAuthen
src/main/java/org/inlighting/shiro/JWTFilter.java:54
Method
lifecycleBeanPostProcessor
()
src/main/java/org/inlighting/shiro/ShiroConfig.java:78
Method
main
(String[] args)
src/main/java/org/inlighting/WebApplication.java:9
Method
preHandle
对跨域提供支持
src/main/java/org/inlighting/shiro/JWTFilter.java:69
Method
requireAuth
()
src/main/java/org/inlighting/controller/WebController.java:50
Method
requirePermission
()
src/main/java/org/inlighting/controller/WebController.java:62
Method
requireRole
()
src/main/java/org/inlighting/controller/WebController.java:56
Method
setCode
(int code)
src/main/java/org/inlighting/bean/ResponseBean.java:24
Method
setData
(Object data)
src/main/java/org/inlighting/bean/ResponseBean.java:40
Method
setMsg
(String msg)
src/main/java/org/inlighting/bean/ResponseBean.java:32
Method
setService
(UserService userService)
src/main/java/org/inlighting/controller/WebController.java:24
Method
setUserService
(UserService userService)
src/main/java/org/inlighting/shiro/MyRealm.java:27
Method
supports
大坑!,必须重写此方法,不然Shiro会报错
src/main/java/org/inlighting/shiro/MyRealm.java:35
Method
unauthorized
()
src/main/java/org/inlighting/controller/WebController.java:68