保护后端API的最佳方法--Angular

问题描述 投票:0回答:1

目前,我正在开发一个Angular应用,它使用Laravel后端来完成所有与服务器相关的任务。我利用laravel中的API路由来完成大部分事情,这些路由由Bearer Tokens来保证。对于每个API Call, 浏览器调用Apache服务器, 通过使用反向代理, 将请求重定向到API Host (在另一个端口). 然后,一个中间件检查Token及其有效性。另外,API已经实现了SSL。

然而,我觉得还是担心多个API Calls的攻击。用户可以从浏览器的请求检查中获取JWT Token,然后在token过期前用脚本进行多次请求。API也有一个速率限制。

怎样才能保证这个安全呢? 当Laravel使用默认的Blade模板引擎时,默认使用CSRF Token来保证这个安全。这将是正确的方法?

angular laravel api security
1个回答
0
投票

CSRF (Cross Site Request Forgery)应该可以保护你不被其他网站在URL上进行恶意活动,如果用户已经登录到你的网站,并且你在cookie中管理token。但你所说的情况是,如果你的用户很聪明,他从cookie中获取了你的jwt token。那么他也可以复制你的xsrf token。你要找的答案是:-

适当的跨源策略(CORS),这样他的脚本就不能攻击你的API。

同时浏览器也会阻止用户在一个域名上并行发出过多的并发请求。最多一次允许6个请求进入服务器,6个请求之后,其他的请求会一直处于待处理状态,直到某个api返回响应。

在有适当的CORS设置后,你应该完成。

其他与性能有关的参数,比如在哪里限制或扩展,这取决于你的选择和应用。

© www.soinside.com 2019 - 2024. All rights reserved.