我创建了一个需要身份验证的 GWT 项目。最初,用户的密码是纯文本的,但现在我想用 BCrypt 对它们进行哈希处理。我进行了搜索,但找不到描述如何使 Jetty 针对 BCrypt 散列密码进行身份验证的地方。
我使用纯文本格式和 SSL 将密码发送到服务器。我需要做什么才能使 Jetty 散列此密码并将其与数据库中的密码进行比较?
谢谢;
我创建了一个需要身份验证的 GWT 项目。最初,用户的密码是纯文本的,但现在我想用 BCrypt 对它们进行哈希处理。我进行了搜索,但找不到描述如何使 Jetty 针对 BCrypt 散列密码进行身份验证的地方。
我使用纯文本格式和 SSL 将密码发送到服务器。我需要做什么才能使 Jetty 散列此密码并将其与数据库中的密码进行比较?
谢谢;
在 JAAS 中,这是由 LoginModule 完成的。Jetty 特定的JAAS教程(实际上我只是看了一眼)解释了如何实现自己的,并配置 Jetty 以使用它。
正如 Igor 在他链接的帖子中已经指出并解释的那样,仅容器会话管理不足以防御 XSRF。您仍然可以使用 JAAS - 但请确保您的服务器调用受到未存储在 cookie 中的令牌的额外保护。
我个人会使用与 cookie 中使用的不同的令牌。这有助于保护一点免受 XSS 的攻击(否则,您将破坏 httpOnly cookie的目的)。