在flex中保存用户凭据的最佳方法是什么?本地存储似乎不是存储机密数据的好地方,因为它将信息保存为纯文本。
答案 0 :(得分:2)
你不应该。使用浏览器cookie或会话令牌来标识服务器的用户。例如:
答案 1 :(得分:1)
您可以使用ExternalInterface与JavaScript通信并在浏览器Cookie中存储数据。
不要在cookie中存储用户的名字或密码 - 在服务器中创建包含凭据的会话,并将会话ID存储在浏览器cookie中。
答案 2 :(得分:1)
如果您的服务不支持凭据,那么唯一可以认为您可以在SharedObject
中保存用户登录状态。
您可以将UserName + Random Token
的哈希值保存到SharedObject
并在UserName
中保存SharedObject
的副本,然后在创建应用程序creationComplete
时检查哈希值与保存的用户名匹配。
这里有点难以解释,您可以查看here,源代码可供下载。
答案 3 :(得分:0)
用户凭据通常存储在会话变量中。
答案 4 :(得分:0)
您不一定需要将凭据保存为本地存储中的纯文本;实际上,Local Storage(SharedObject)实际上是序列化为AMF,因此它不是纯文本。无论您使用哪种媒体来存储敏感数据,都应该考虑使用某种散列或加密技术,如SHA1或RSA。
散列和加密之间的区别在于:
这实际上取决于你想要做什么。
希望你来吧
答案 5 :(得分:0)
SharedObject是一个非常糟糕的存储密码的地方。
请看这个:
http://livedocs.adobe.com/flex/3/html/help.html?content=security2_22.html