php获取ios,安全地发送PHP从iOS获取信息

本文讨论了如何通过在服务器端引入OAuth2身份验证来提高API的安全性,推荐使用特定的OAuth2Server实现。工作流程包括通过API端点发送凭证获取token,并在后续请求中使用该token。强调OAuth2不提供机密性,建议结合HTTPS以增强通信安全性,防止中间人攻击。同时,提出了考虑应用安全性的全面方法,包括避免硬编码API密钥和使用HTTPS的HSTS和HPKP头部。
摘要由CSDN通过智能技术生成

确保这一点的最佳方法是将服务器端组件(即PHP部分)锁定在OAuth2身份验证层之后.我个人推荐

this OAuth2 Server用于此目的.

一般工作流程如下:

1. Send an API key/username/password/etc to an API endpoint (i.e. a URL)

2. Get a token, store it in memory for future use

3. Send this token on subsequent requests

此解决方案优于发送数据的散列(例如MD5),因为这不会对任何内容进行身份验证.它还解决了潜在的问题,而不是隐藏它(例如,POST而不是GET不会保护您的通信).但是,OAuth2不提供机密性.中间的人仍然可以看到/破坏你的请求.

为了更好地保护您的用户,您应该在您的应用上使用HTTPS(TLSv1.2和PFS).只.甚至没有端口80 HTTP服务器执行任何操作,而不是重定向到您的HTTPS服务器.如果iOS支持,还发送HSTS和HPKP标题.

如果您需要比HTTPS OAuth2提供的更好的安全性,我建议learning application security全职,因为如果您对该主题有广泛的知识,那么更详细和复杂的解决方案才有意义. (当然,这取决于你的threat model!)

例如,防御攻击者逆向工程您的应用程序以恢复硬编码的API密钥根本就没有它们,这使您的工作流程变得复杂并且可能需要对每个用户进行身份验证.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值