当前位置: 首页 > 知识库问答 >
问题:

如何应用Spring Security的密码加密?

梁季
2023-03-14

我最近开始在现有的web应用程序中添加安全性。应用程序使用jcryption对散列口令进行加密,然后将其发送到服务器端,然后在服务器端进行解密,得到散列值,并将该散列值与db口令字段(MD5散列值)进行比较。这样我们就可以处理“中间人攻击”。在我在应用程序中引入Spring Security layer(使用Java配置的Spring Security 3.2.7)之前,设置工作很好,现在我在加密部分遇到了问题,我真的不知道如何继续。

其他的一切都在工作,我使用了Md5PasswordEncoder对密码进行散列。问题是用户名和密码是以纯文本发送的。我不明白如何在通过网络发送密码之前对密码进行加密。我如何将用户名/密码字段的AES加密/解密与Spring Security体系结构一起应用?

请理解我已经在使用MD5哈希在我的应用程序,我想要一个加密层上面。还有一件事,因为它是一个遗留应用程序,我不能强迫每个人都使用HTTPS,HTTPS是启用的,但这并不是所有人都必须的。我更关心的是那些将使用普通旧HTTP访问应用程序的人。

共有1个答案

岳良策
2023-03-14

>

  • 您需要使用HTTPS通过Internet发送用户的密码。

    说真的,如果你不这样做,你的用户可以/将会起诉你。LinkedIn最近放弃了几百万美元,因为他们没有对用户的密码给予应有的注意。

    LetsEncrypt是免费的,应用广泛。

  •  类似资料:
    • 问题内容: 我正在使用JConsole访问我的应用程序MBean,并且使用了password.properties文件。但是根据Sun的规范,此文件仅包含明文格式的密码。 现在,我想对密码进行加密并将其用于JConsole的JMX用户身份验证(“远程”部分中的“用户名”和“密码”字段)。我可以使用任何预定义的加密逻辑或自己的加密算法。 是否有人知道将这种纯文本密码更改为加密密码,这样JMX Fra

    • 第一次尝试将SAML实现为SP。我们决定尝试在定制的MVC框架中使用SimpleSAMLphp,因为我们认为这会节省时间。 我的问题是,我最终进入了一个无限循环,或者属性是空的。 我已经在SimpleSAMLphp中配置了元数据,并从authenticate接口对其进行了测试。idP有一个回发URL集,与我们开始的位置不同,因此: 用户点击域名。com/sso我们创建了新的 如果我们这样做,我们必

    • 问题内容: 我正在使用ExtJS框架。我在 JavaScript中 有MD5函数来加密某些JSON。我的后端使用Java,所以我想知道如何使用 Java 解密MD5 Javascript加密? 这是我正在使用的MD5函数的JS等效项: 问题答案: MD5是 哈希 (即单向转换),因此您无法对其进行解密。您可以将已知哈希与从明文计算出的哈希进行比较,以验证输入的有效性。Java已经为此内置了库。我在

    • 问题内容: 目前,我将密码[未加密]保留在属性文件中。使用ant将该密码原样放置在配置xml中。 [配置xml用于数据源,它正在创建dbcp.BasicDataSource的对象] 现在,是否有可能在ant目标之后以加密形式复制密码。听说Jasypt可以做到!直到现在我还没有尝试过。但是,问题不止于此。BasicDataSource不接受加密的密码。是否可以替代BasicDatasource。 仅

    • 我试图理解Maven 3的[password encryption(密码加密)功能。我发现这个功能的文档记录很差,令人困惑。例如,功能文档和该功能作者的博客文章在几个方面相互矛盾。 这个问题比maven-encrypt master password如何工作更广泛,maven encrypt master password选择密码的良好实践没有涵盖。 具体来说,我试图回答以下文件中未涉及的问题。我

    • 在“摘要认证的密码加密”一节,我们讲到了如何在摘要认证中使用密码加密。但同时也提到了一些限制,比如,该加密方式只能适用于摘要认证,而且摘要认证,只能采用该种方式进行密码加密。那幺,我们如何在其他认证类型(如基本认证、Form表单认证)中进行用户信息的加密呢?本节为你揭开谜底。 在 basic-authentication项目的基础上,我们构建了一个password-encoder项目。 build