课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,越来越多的企业在开发应用软件的时候都要求程序员把软件安全问题一起纳入开发范围之内,而本文我们就通过案例分析来简单了解一下,web前端API安全问题都有哪些。
1、使用HTTPS
现在的Web已经不是之前那个年代,标准的HTTP满足不了Web安全需求。而各大浏览器供应商开始标记不使用安全层的URL,你的API也可以考虑开始动手做这件事——用HTTPS。HTTPS采用传输层安全性协议(TLS)对传输进行加密。这意味着HTTPS对客户端和服务器之间的通信进行加密。
2、认证
说到访问凭证,避免意外使用API的直接的方法便是确保正确的身份验证。身份验证决定了你是否可访问API及如何访问某个API,即便是对外开放的免费API理论上也应当考虑采用身份验证策略以保证安全性。有了身份认证,你可以限制或删除滥用API的使用者,让使用者在需要时重新设置凭证,从而保护他们的安全。
3、授权
起到和身份验证类似作用的是授权。身份验证和授权的区别在于,身份验证关注的是API的使用者是谁,而授权关注的是他们能够访问的内容。举个例子,免费计划用户可能被授权只能访问你所有API的某个子集。当你想集成诸如社交登录此类API时,用户授权可让应用从社交平台读取他们的配置文件数据。
4、安全endpoints和资源(对象级授权)
一般来说,我们会通过授权来保护endpoint/endpoints,但更长远来说,我们需要确保单个资源的安全。单个资源的安全可以防止错误配置的endpoint级授权访问数据。此外,它还意味着endpoint本身不受用户类型的限制,而是由资源控制谁能查看它,谁不能查看它。
5、限速
一说到安全,我们常会想到不适当的访问。当然,如何处理不适当的访问对管理资源也很有用。限速是一种限制API使用的技术。它不仅在经济上保护资源,但也保证了服务器不会因某次大量的请求而超载。大多数限速的方法都基于时间的——一般会设置一个账单周期来处理API总体使用情况,也会用“突发”方法来限制大量涌入的请求。
6、验证和净化输入
要攻击Web程序古老的方式之一是输入,即:我们访问数据的方式可能已经改变,但是验证任意用户输入的需要还没有改变。客户端验证有助于防止错误和改善用户体验,但是API还需要在对输入执行操作前验证和净化(sanitize)输入——净化策略为删除请求中的恶意或无效代码。验证确保数据满足资源期望的必要条件,例如:类型、形式,甚至是密码结构等因素。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。