2014-09-29 53 views
2

我已经选择了Angular,现在正在开发两个独立的应用程序,前端,Angular应用程序和后端Laravel应用程序。开发两个独立的应用程序时,保护API端点Angular应用程序和Laravel应用程序

截至目前我的后端应用就是处理请求,数据库交互逻辑,验证的API端点等

然而,是什么阻止有人从请求/api/users/1和获得这些数据呢?

现在没有任何措施可以防止这种情况发生。

什么是防止这种情况发生的最好方法,并验证请求是通过应用程序发送的,而不是通过某些随机用户的http://hurl.it之类的东西发送的?

+0

可能重复[?当它是安全,使CORS(http://stackoverflow.com/questions/9713644/when-is-它安全到使-CORS) – 2014-09-29 18:07:07

+2

@PWKad这适用于更多的然后就CORS。 – 2014-09-29 18:15:34

回答

2

您应该首先评估哪些路线需要保护以及谁应该有权访问。有时将它们向公众开放可能会很好。

一旦你知道了你有几个选择。我个人倾向于oAuth 2.0协议。有些人认为它已经过时了。然后还有WSSE,我个人觉得今天有更好的资源来解释oAuth的使用,并且可能会更容易遵循。

您可以在oAuth服务器库中搜索laravel。这样的一个是:https://github.com/lucadegasperi/oauth2-server-laravel

你也可能需要启用CORS,如果你的应用程序的角度上是从您的API不同的域。 IE:api.example.com(拥有api)。而example.com就是你的应用程序所在的地方。

对于CORS laravel也有一些软件包,这样一个存在:https://github.com/barryvdh/laravel-cors