2011-04-18 32 views
1

我目前使用CodeIgniter来构建使用沉重AJAX的Web应用程序。我试图看看如何提高网站的安全性。使用带有AJAX请求的CodeIngiter保护应用程序

当前设置使用cookie和会话来验证用户。我最关心如何验证每个POST请求,并且某些操作和值对于特定的登录用户是有效的。

解决安全问题并保持最佳性能的最佳方法是什么?我不想为特定类型的请求手动定制每个验证。

一些选项,我认为:

  1. 验证超类,将所有控制器都
  2. 验证辅助
  3. 把索引功能验证代码,并使用指数函数来调用某些私有函数进行扩展在控制器中。

回答

3

如果您使用CI,最好是通过从基础控制器(MY_Controller)扩展所有控制器,通过主控制器路由所有请求。这样,所有的请求都会通过一个单一的入口点,您可以简单地检查当前会话是否具有执行该操作所需的权限。

+0

这确实是要走的路。 – 2011-04-18 06:32:43

+0

简单而有效的解决方案。非常好 – DonSeba 2011-04-18 07:11:01

1

你所关心的是Cross Site Request Forgery。笨已经建成,以防止它的设施:

Security Class

+0

这个答案更适合于这个问题,因为问题更多的是验证POST请求,所以使用来自安全类的CSRF令牌是最好的方法。 – zokibtmkd 2011-04-18 21:51:06