问题描述
目前我们在我们的产品中使用 wso2is v5.8 来验证来自 AD/LDAP 的用户。
在登录时,我们以简单的文本格式发送登录表单数据,它按预期工作,但由于漏洞,我们遇到了问题,我们希望将登录表单数据密码字段作为加密格式发送。我将如何实现这一点,请帮助我。提前致谢。
解决方法
在来自用户商店经理的 WSO2IS 中,可以加密密码,因此无需从登录页面或注册页面发送加密密码。
1.在主用户商店管理器中加密密码
转到 /repository/conf/user-mgt.xml 文件,然后在那里取消注释以下行
<Property name="PasswordHashMethod">PLAIN_TEXT</Property>
对于散列方法,您可以使用
- SHA - 使用 SHA 摘要方法。 SHA-1、SHA-256
- MD5 - 使用 MD 5 摘要方法。
- PLAIN_TEXT - 纯文本密码。
2.在二级用户商店管理器中加密密码
在二级用户存储管理器中有一个选项“PasswordHashMethod”可供配置,如果没有配置它不会对用户密码做任何散列。
但是在那里可以指定密码散列算法在将密码存储到用户存储之前使用散列的密码。
可能的值:
- SHA - 使用 SHA 摘要方法。 SHA-1、SHA-256
- MD5 - 使用 MD 5 摘要方法。
- PLAIN_TEXT - 纯文本密码。
注意: 如果只是将其配置为 SHA,则将其视为 SHA-1。配置具有更高位值的算法总是更好,因为摘要位大小会增加。