Jakarta ee 使用带有哈希密码的request.login()

Jakarta ee 使用带有哈希密码的request.login(),jakarta-ee,authentication,hash,login,servlet-3.0,Jakarta Ee,Authentication,Hash,Login,Servlet 3.0,我想在两种不同的情况下使用request.login()以编程方式登录用户。 (我使用的是Tomcat8中的DataSourceAlm,其中有一个credentialHandler,指定了迭代和saltLength) 第一种情况: 用户在表单中输入用户名和密码并提交。 这很好,因为my context.xml指定了散列算法,DataSourceRealm类使用存储的凭证中指定的salt(即:用于比较的数据库检索密码)执行迭代 第二种情况: 我使用cookie来识别用户。 这与本回答中概述的内容类

我想在两种不同的情况下使用request.login()以编程方式登录用户。 (我使用的是Tomcat8中的DataSourceAlm,其中有一个credentialHandler,指定了迭代和saltLength)

第一种情况: 用户在表单中输入用户名和密码并提交。 这很好,因为my context.xml指定了散列算法,DataSourceRealm类使用存储的凭证中指定的salt(即:用于比较的数据库检索密码)执行迭代

第二种情况: 我使用cookie来识别用户。 这与本回答中概述的内容类似: 但是,使用散列、迭代、盐析密码调用request.login()方法显然不会成功登录,因为登录方法应该接受cleantext(unhashed、unsalted、uniterated)密码

我如何克服这个问题? 如果在第二种情况下没有密码就可以登录,那就足够了(因为我实际上是用login()方法检索的相同凭证登录的)

多谢各位