我正在编写iPhone应用程序作为我网站的移动版本。
我打算公开一些REST API,以便应用程序可以更新用户的数据。
我不希望用户每次都登录,但我想保存他的令牌/ cookie并将其重新用于将来的所有请求。
我可以设置一个随机令牌并将其与用户ID一起传递,但它不是很安全,因为它可以在越狱设备上轻松访问它。我无法使用IP来限制它,因为IP可能会经常更改(因为它是移动设备)。
实施此类身份验证的最佳方式是什么?这种身份验证足够安全,但通过让用户经常验证自己而不会让用户烦恼?
答案 0 :(得分:5)
将带有初始登录详细信息的UDID或mac地址发送到您的服务器。如果username / pass成功,则为此用户/ UDID(或mac)组合创建唯一令牌,并将其发送回(加密)到设备。在后续访问中,设备发送加密的令牌和UDID / mac(通过安全连接)以进行重新认证。
如果你想让偏执的人放心跟踪UDID,你可以使用UDID / mac加密加密的令牌,但这不会那么安全,但是应该继续工作。