让我们想象下面的场景:调用API的web-app。 由于可以在网络浏览器中访问网络应用程序代码,我们可以说任何人都可以复制其代码并开始调用我们的API,我们无法检测它是否来自我们的网络应用程序。 / p>
我该如何预防?
答案 0 :(得分:1)
非公共REST服务必须在每个API端点执行访问控制。单片应用程序中的Web服务通过用户身份验证,授权逻辑和会话管理来实现。对于遵循RESTful风格构成多个微服务的现代架构,这有几个缺点。
您也可以使用API密钥。 API密钥可以减少拒绝服务攻击的影响。但是,当它们发给第三方客户时,它们相对容易妥协(如果您不打算这样做,那么关键劫持应该没有任何问题。)
您可以在OWASP's official article上阅读更多优秀的安全措施。
我希望这会有所帮助。