MCPcopy Create free account

hub / github.com/Smith-Cruise/Spring-Boot-Shiro / functions

Functions49 in github.com/Smith-Cruise/Spring-Boot-Shiro

↓ 3 callersMethodgetUser
(String username)
src/main/java/org/inlighting/database/UserService.java:10
↓ 2 callersMethodgetData
()
src/main/java/org/inlighting/database/DataSource.java:24
↓ 2 callersMethodgetPassword
()
src/main/java/org/inlighting/database/UserBean.java:20
↓ 2 callersMethodgetUsername
获得token中的信息无需secret解密也能获得 @return token中包含的用户名
src/main/java/org/inlighting/util/JWTUtil.java:40
↓ 1 callersMethodexecuteLogin
(ServletRequest request, ServletResponse response)
src/main/java/org/inlighting/shiro/JWTFilter.java:33
↓ 1 callersMethodgetCredentials
()
src/main/java/org/inlighting/shiro/JWTToken.java:19
↓ 1 callersMethodgetPermission
()
src/main/java/org/inlighting/database/UserBean.java:36
↓ 1 callersMethodgetRole
()
src/main/java/org/inlighting/database/UserBean.java:28
↓ 1 callersMethodgetStatus
(HttpServletRequest request)
src/main/java/org/inlighting/controller/ExceptionController.java:35
↓ 1 callersMethodisLoginAttempt
判断用户是否想要登入。 检测header里面是否包含Authorization字段即可
src/main/java/org/inlighting/shiro/JWTFilter.java:23
↓ 1 callersMethodlogin
(@RequestParam("username") String username, @RequestParam("password") String pas
src/main/java/org/inlighting/controller/WebController.java:29
↓ 1 callersMethodresponse401
将非法请求跳转到 /401
src/main/java/org/inlighting/shiro/JWTFilter.java:87
↓ 1 callersMethodsetPassword
(String password)
src/main/java/org/inlighting/database/UserBean.java:24
↓ 1 callersMethodsetPermission
(String permission)
src/main/java/org/inlighting/database/UserBean.java:40
↓ 1 callersMethodsetRole
(String role)
src/main/java/org/inlighting/database/UserBean.java:32
↓ 1 callersMethodsetUsername
(String username)
src/main/java/org/inlighting/database/UserBean.java:16
↓ 1 callersMethodsign
生成签名,5min后过期 @param username 用户名 @param secret 用户的密码 @return 加密的token
src/main/java/org/inlighting/util/JWTUtil.java:55
↓ 1 callersMethodverify
校验token是否正确 @param token 密钥 @param secret 用户的密码 @return 是否正确
src/main/java/org/inlighting/util/JWTUtil.java:23
MethodJWTToken
(String token)
src/main/java/org/inlighting/shiro/JWTToken.java:10
MethodResponseBean
(int code, String msg, Object data)
src/main/java/org/inlighting/bean/ResponseBean.java:14
MethodUnauthorizedException
(String msg)
src/main/java/org/inlighting/exception/UnauthorizedException.java:4
Methodarticle
()
src/main/java/org/inlighting/controller/WebController.java:40
MethodauthorizationAttributeSourceAdvisor
(DefaultWebSecurityManager securityManager)
src/main/java/org/inlighting/shiro/ShiroConfig.java:83
MethoddefaultAdvisorAutoProxyCreator
下面的代码是添加注解支持
src/main/java/org/inlighting/shiro/ShiroConfig.java:68
MethoddoGetAuthenticationInfo
默认使用此方法进行用户名正确与否验证,错误抛出异常即可。
src/main/java/org/inlighting/shiro/MyRealm.java:57
MethoddoGetAuthorizationInfo
只有当需要检测用户权限的时候才会调用此方法,例如checkRole,checkPermission之类的
src/main/java/org/inlighting/shiro/MyRealm.java:43
Methodfactory
(DefaultWebSecurityManager securityManager)
src/main/java/org/inlighting/shiro/ShiroConfig.java:40
MethodgetCode
()
src/main/java/org/inlighting/bean/ResponseBean.java:20
MethodgetData
()
src/main/java/org/inlighting/bean/ResponseBean.java:36
MethodgetManager
(MyRealm realm)
src/main/java/org/inlighting/shiro/ShiroConfig.java:21
MethodgetMsg
()
src/main/java/org/inlighting/bean/ResponseBean.java:28
MethodgetPrincipal
()
src/main/java/org/inlighting/shiro/JWTToken.java:14
MethodgetUsername
()
src/main/java/org/inlighting/database/UserBean.java:12
MethodglobalException
(HttpServletRequest request, Throwable ex)
src/main/java/org/inlighting/controller/ExceptionController.java:29
Methodhandle401
(ShiroException e)
src/main/java/org/inlighting/controller/ExceptionController.java:15
MethodisAccessAllowed
这里我们详细说明下为什么最终返回的都是true,即允许访问 例如我们提供一个地址 GET /article 登入用户和游客看到的内容是不同的 如果在这里返回了false,请求会被直接拦截,用户看不到任何东西 所以我们在这里返回true,Controller中可以通过 subject.isAuthen
src/main/java/org/inlighting/shiro/JWTFilter.java:54
MethodlifecycleBeanPostProcessor
()
src/main/java/org/inlighting/shiro/ShiroConfig.java:78
Methodmain
(String[] args)
src/main/java/org/inlighting/WebApplication.java:9
MethodpreHandle
对跨域提供支持
src/main/java/org/inlighting/shiro/JWTFilter.java:69
MethodrequireAuth
()
src/main/java/org/inlighting/controller/WebController.java:50
MethodrequirePermission
()
src/main/java/org/inlighting/controller/WebController.java:62
MethodrequireRole
()
src/main/java/org/inlighting/controller/WebController.java:56
MethodsetCode
(int code)
src/main/java/org/inlighting/bean/ResponseBean.java:24
MethodsetData
(Object data)
src/main/java/org/inlighting/bean/ResponseBean.java:40
MethodsetMsg
(String msg)
src/main/java/org/inlighting/bean/ResponseBean.java:32
MethodsetService
(UserService userService)
src/main/java/org/inlighting/controller/WebController.java:24
MethodsetUserService
(UserService userService)
src/main/java/org/inlighting/shiro/MyRealm.java:27
Methodsupports
大坑!,必须重写此方法,不然Shiro会报错
src/main/java/org/inlighting/shiro/MyRealm.java:35
Methodunauthorized
()
src/main/java/org/inlighting/controller/WebController.java:68