Ios Django:只接受来自我的应用程序的请求
是否可以只接受来自我的申请的请求?比如说,我有一个名为“Best app”的iOS应用程序,它使用Django作为后端。我如何才能做到只接受来自Best App的请求,而拒绝其他所有请求 我正在考虑检查请求中的“HTTP_USER_AGENT”键,如果HTTP_USER_AGENT是“最佳应用”,我将允许请求通过。但我最近发现,任何人都可以从Chrome等应用程序中修改他们的用户代理,并请求访问我们的资源 有没有其他方法可以限制对特定应用程序的访问?我想通过提供白名单访问权限向其他开发人员开放我的后端服务。但现在,我想保持对我们后端的访问是私有的Ios Django:只接受来自我的应用程序的请求,ios,django,security,Ios,Django,Security,是否可以只接受来自我的申请的请求?比如说,我有一个名为“Best app”的iOS应用程序,它使用Django作为后端。我如何才能做到只接受来自Best App的请求,而拒绝其他所有请求 我正在考虑检查请求中的“HTTP_USER_AGENT”键,如果HTTP_USER_AGENT是“最佳应用”,我将允许请求通过。但我最近发现,任何人都可以从Chrome等应用程序中修改他们的用户代理,并请求访问我们的资源 有没有其他方法可以限制对特定应用程序的访问?我想通过提供白名单访问权限向其他开发人员开放我
非常感谢您对这一问题的建议和见解。好的应用程序安全解决方案是非常重要的。您不能使用任何简单的纯文本对象,如HTTP\U USER\U代理。一种常见的方法是“API密钥”——从注册页面获得的密钥随请求一起提供,但除非您将其与其他“秘密”结合起来,否则“假”应用程序很容易复制和提供该密钥 一个相当强大的解决方案是使用共享秘密进行某种形式的挑战/响应。理论上,坚定的攻击者可以从你的应用程序中提取并使用你的秘密,但这需要付出合理的努力——首先他们需要解密你的应用程序包,然后提取秘密。这种流动有点像-
您还应该实施某种形式的防止暴力尝试的保护,例如在“x”挑战失败后锁定API密钥您是否建议我为其类型的场景实施OAuth 2.0?您可以使用OAuth对用户进行身份验证并授予他们访问API的权限,但is无法控制他们是在使用你的应用程序还是其他方法。你可以使用OAuth来验证你的应用程序的身份,但实际上你的应用程序中有用户名和密码,所以我认为这不是最好的方法