简介
我们的Web应用程序的用户必须登录才能使用该应用程序。通信使用(以及XMLHttpRequest
)WebSocket API。
问题
是否将用户名和密码存储在<input type="hidden">
的{{1}}中,然后将其数据值发送到足够安全的登录脚本中?如果没有,我们在这里可以做什么?
是否可以在WebSocket的Session中存储任意对象(例如<form>
),以便我可以输入登录脚本:
class User {...}
session.setAttribute("web_app_user", user)
这样就不可能以任何方式对Web应用程序进行黑客攻击吗?
答案 0 :(得分:0)
通常来说,只要您使用的是WSS协议(而不是WS),就以安全和加密的方式与服务器进行通信。也就是说,有很多不同的方法可以进一步确保安全。
我认为一种相当可接受的方法是一次发送用户名和密码,以及某种客户端唯一的会话ID。如果凭据被服务器验证为可接受,则仅会话ID可以与其他调用一起传递给服务器。这样可以减少您暴露用户密码的次数。
您可能希望使用某种加密算法(例如SALT)来进一步保护您的凭据验证方法。