我正在使用带有 FORM 身份验证的 Tomcat 领域。身份验证完成后,我想在会话中保存一个对象,但不知道如何获取会话。
import org.apache.catalina.realm.RealmBase;
public class MyRealm extends RealmBase {
@Override
public Principal authenticate(String username, String credentials) {
// get session here
return super.authenticate(username, credentials);
}
原因是我之前有一个登录 servlet 并使用我自己的身份验证,现在我需要切换到 Tomcat 领域并将登录 servlet 代码基本上迁移到我的自定义领域类。登录成功后,我需要创建一个包含会话特定对象的对象并将其放入当前会话中。而且我需要用户名和密码来创建它,所以 authenticate() 方法似乎是唯一的地方。