繁体   English   中英

创建包含用户特定数据的WebSocket会话的最安全方法

[英]Safest way to create a WebSocket session containing user-specific data

介绍

我们的Web应用程序的用户必须登录才能使用该应用程序。 通信使用XMLHttpRequest和WebHttp API。

问题

  1. 将用户名和密码存储在<form><input type="hidden">中,然后将其数据值发送到登录脚本是否足够安全? 如果没有,我们在这里可以做什么?

  2. 是否可以在WebSocket的Session中存储任意对象(例如, class User {...} ),以便我可以输入登录脚本:

    session.setAttribute("web_app_user", user)

    user = (User) session.getAttribute("web_app_user")

    这样就不可能以任何方式入侵网络应用程序?

一般来说,只要您使用的是WSS协议(而不是WS),就可以以安全和加密的方式与服务器进行通信。 也就是说,有很多不同的方法可以进一步确保安全。

我认为一种相当可接受的方法是一次发送用户名和密码,以及某种客户端唯一的会话ID。 如果凭据被服务器验证为可接受,则仅会话ID可以与其他调用一起传递给服务器。 这样可以减少您暴露用户密码的时间。

您可能希望使用某种加密算法(例如SALT)进一步保护您的凭据验证方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM