我有一个struts应用程序,我需要通过http转移用户名和密码。但可以通过按Control + Shift + J查看以纯文本格式传输的用户名和密码。
任何建议如何保护登录数据?也就是说,它不应以纯文本格式显示]
注意-登录凭据已使用数据库和LDAP进行验证
预先感谢!
您可以对密码进行哈希处理,然后将用户名+密码哈希发送到服务器。
我假设您正在使用login.jsp中的表单提交来提交用户名和密码。
使用HTTP POST而不是GET:
在您的login.jsp中,使用http方法作为POST
<form action="welcome.jsp" method="post">
GET和POST方法都用于通过HTTP协议将数据从客户端传输到服务器,但是POST和GET方法之间的主要区别在于GET带有附加在URL字符串中的请求参数(作为纯文本,可以从浏览器查看),而POST带有消息正文中的request参数,这使它更安全地使用http协议从客户端到服务器传输数据。
更多有关邮政的资料:https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods/POST
编辑:
在浏览器中加密数据(JavaScript方式:]
<html>
<head>
<script src="md5.js" language="javascript" >
console.log("md5.js script loaded");
</script>
<script language="javascript" type="text/javascript">
function doLogin()
{
document.formname.hash.value=MD5(document.formname.password.value);
document.formname.password.value = "";
document.formname.submit();
}
</script>
用于表单提交按钮,
<input onClick="doLogin(); return true;" type="submit" value="Login">