gpt4 book ai didi

android - 确保从 android 到 web 服务的通信

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:22:14 25 4
gpt4 key购买 nike

我是 Web 和移动开发的新手,尤其是安全方面的新手,所以仍然感谢显而易见的答案。

我希望我的 Android 应用能够使用用户名和密码登录到一个简单的 Web 服务。

安全发送此信息并使用户在整个 session 期间保持登录状态的最佳方式是什么?

最佳答案

您控制网络服务吗?否则,您将需要使用 Web 服务提供的任何身份验证机制。

如果您自己编写网络服务,您有很多选择。

最简单的方法是通过 SSL 将用户的用户名和密码作为 HTTP Authorization: header 发送给每个请求。这里的缺点是您需要将用户名和密码保存在设备上。话虽如此,由于 Android 权限系统的工作方式,只要用户未启用根访问权限,攻击者窃取设备凭据的风险就很小。

如果您仍想避免以纯文本形式存储密码,您可以发送一次用户名/密码(再次使用 SSL),让服务器返回一个加密的授权 token ,然后发送该 token 代替用户名/密码。参见谷歌的 ClientLogin举个例子。如果攻击者可以物理访问设备,他们仍然可以窃取 token ,但至少攻击者不能使用它来访问使用相同密码的任何其他站点。

还有其他选择,比如使用质询/响应来防止服务器看到用户密码,使用 OAuth 提供通用授权 API,等等。这完全取决于您的具体要求。

关于android - 确保从 android 到 web 服务的通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2320937/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com