[英]How to secure Web API for android/ios apps with basic authentication
我正在尝试保护一个Web API
,该Web API
将由在Android
和iOS
上运行的移动应用程序使用。 它现在的工作方式是使用SSL
进行Basic Authentication
,它会将每个请求的username
和password
发送到Web API
。 在调用action
之前,我在filter
验证Web API
中的凭据。 这非常有效。 问题是,在用户登录后,我必须将密码存储在设备( Android
/ iOS
)上以保存会话,否则他们将不得不一直登录。 这不安全,因为如果设备被黑客入侵,则可以访问凭证。 我正在寻找一种方法来使用基本身份验证,而无需在设备上存储密码。
我认为在解决这个文章可以工作,但我不清楚如何使它发挥作用。 在接受的答案中,它说
为每个应用生成一个密钥,让他们将每个请求中的密钥作为令牌传递。 然后,您的服务器可以验证密钥并验证请求。
请查看ASP.NET站点中的“ 基本身份验证”模块。 该示例使用'basic'作为授权方案,但您可以使用'token'来改变它。
我不清楚这里的过程。 在此示例中,即使在初始登录期间也似乎没有涉及任何用户名/密码。 用户如何在不登录的情况下获取密钥? 然后,报价中提到的“关键”究竟是什么。 那可能是像Guid
这样的东西? 我也不理解这比如果被黑客攻击在设备上存储用户名和密码更安全。 黑客可以使用“密钥”,就像用户名和密码一样正确吗?
这是身份验证的基础知识,我将以简单的方式解释这个过程。 希望你能理解。
使用加密完成所有这些操作。 一切!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.