API网关设计
非原创
API所需安全功能
身份和访问控制
认证
授权
通信安全
威胁防护
输入控制
消息限制
SQL注入
JSON防护
XML防护
输出控制
日志记录
黑白名单
API监控
API限速
API接口调用方式
HTTP+请求签名机制
特点
所有携带接口信息的HTTP头内容都必须参与签名计算
不同HTTP头内容也需要按照一定规则排序
优点
缺点
签名算法太复杂,易用性贼差
响应包可被窃听、伪造、需要防范Replay(重放)攻击
HTTP+参数签名机制
特点
只有GET和POST参数的内容需要参与签名计算
优点
签名算法想对简单,易用性有较大提升
缺点
响应包可被窃听、伪造、需要防范Replay(重放)攻击
HTTPS+访问令牌机制
特点
无需签名计算
依靠传输层加密和访问令牌的不可伪造性保证安全
优点
相对安全,无法通过网络抓包方式窃听或伪造数据
易用性高,无需再为签名头疼,无需考虑Replay攻击
缺点
安全性建立在用户不被中间人攻击和令牌不被泄漏的情况下
更好的方案
牺牲易用性换取安全性
HTTPS+内容签名机制
HTTPS+内容加密机制
降低令牌泄漏带来的风险
为开发者提供绑定服务器IP列表、限制refer等支持
针对不同应用场景颁发不同有效期等访问令牌
针对不同安全级别的数据授权颁发不同有效期的访问令牌
为开发者和用户提供令牌作废支持
关于认证
JWT
JWT:Json Web Token 跨域认证解决方案
JWT数据格式
以一个很长的字符串代表,中间用.分割成三个部分
关于Base64URL
JWT特点
OAuth
参考资料
最后更新于
这有帮助吗?