我想将 Apache Shiro 封装在 Servlet 环境中。我想创建 MySecurityUtils 并在静态方法中使用 Shiro SecurityUtils.getSubject。我的问题是这是否是在静态方法中使用 SecurityUtils.getSubject 方法的正确方法。这会在多线程 servlet 环境中引起任何问题吗?
MySecurityUtils.java
import org.apache.shiro.subject.Subject;
import org.apache.shiro.SecurityUtils;
public class MySecurityUtils {
public static MyUser getUser() {
Subject currentUser = SecurityUtils.getSubject();
MyUser myUser = new MyUser(currentUser);
...
}
}
我的用户.java
public class MyUser {
// ... constructors
public boolean isPermitted(..) {subject.isPermitted(...)}
}