diff --git a/servlet-core/src/main/java/tech/smartboot/servlet/plugins/security/SecurityProviderImpl.java b/servlet-core/src/main/java/tech/smartboot/servlet/plugins/security/SecurityProviderImpl.java index a71a1cf..264108e 100644 --- a/servlet-core/src/main/java/tech/smartboot/servlet/plugins/security/SecurityProviderImpl.java +++ b/servlet-core/src/main/java/tech/smartboot/servlet/plugins/security/SecurityProviderImpl.java @@ -79,8 +79,13 @@ public boolean isUserInRole(String role, LoginAccount loginAccount, HttpServletR return true; } } + String roleLink = httpServletRequest.getServletInfo().getSecurityRoles().get(role); + if (roleLink == null) { + return loginAccount.getRoles().contains(role); + } + System.out.println(roleLink); System.out.println(httpServletRequest.getServletInfo().getSecurityRoles()); - return loginAccount.getMatches().contains(role); + return loginAccount.getRoles().contains(roleLink) || loginAccount.getRoles().contains(role); } @Override