CodeIgniter安全相关设置汇总


Posted in PHP onJuly 03, 2014

CodeIgniter框架自身提供了一些安全设置如针对XSS和CSRF攻击的防范,针对SQL注入攻击的防范等。

就配置文件而言:

在application/config/config.php中

$config['encryption_key'] = '';//这个一定要设置 以加密自己的cookie等
$config['cookie_secure'] = TRUE;//设置为TRUE
/*
|--------------------------------------------------------------------------
| Global XSS Filtering全局XSS过滤设置为TRUE
|--------------------------------------------------------------------------
|
| Determines whether the XSS filter is always active when GET, POST or
| COOKIE data is encountered
|
*/
$config['global_xss_filtering'] = TRUE;
//防范csrf攻击
$config['csrf_protection'] = TRUE;
$config['csrf_token_name'] = 'mall_tooken';
$config['csrf_cookie_name'] = 'mall_cookie';
$config['csrf_expire'] = 7200;//设置适当的时间

打开system/core/Input.php

将get和post方法中的$xss_clean设置为true 当然你的站点如果是安全无所谓的 那就不设置或是在调用get或是post取参数时明确设置就可以了

开发中需要注意:

1.使用

$this->input->get( 'name', true );

而不使用$_GET[ 'name' ];

2.使用

$this->input->post( 'name', true );

而不使用$_POST[ 'name' ];

3.使用ActiveRecord查询语句而尽量不用select之类的语句

PHP 相关文章推荐
使用 php4 加速 web 传输
Oct 09 PHP
一周学会PHP(视频)Http下载
Dec 12 PHP
PHP 替换模板变量实现步骤
Aug 24 PHP
解决cPanel无法安装php5.2.17
Jun 22 PHP
CodeIgniter中使用cookie的三种方式详解
Jul 18 PHP
PHP实现的简易版图片相似度比较
Jan 07 PHP
php两种无限分类方法实例
Apr 21 PHP
作为程序员必知的16个最佳PHP库
Dec 09 PHP
关于PHP 如何用 curl 读取 HTTP chunked 数据
Feb 26 PHP
Zend Framework教程之连接数据库并执行增删查的方法(附demo源码下载)
Mar 21 PHP
PHP获取不了React Native Fecth参数的解决办法
Aug 26 PHP
laravel通过a标签从视图向控制器实现传值
Oct 15 PHP
php使用pack处理二进制文件的方法
Jul 03 #PHP
PHP源码分析之变量的存储过程分解
Jul 03 #PHP
ThinkPHP让分页保持搜索状态的方法
Jul 02 #PHP
ThinkPHP实现批量删除数据的代码实例
Jul 02 #PHP
Thinkphp中import的几个用法详细介绍
Jul 02 #PHP
改写ThinkPHP的U方法使其路由下分页正常
Jul 02 #PHP
PHP反射使用实例和PHP反射API的中文说明
Jul 02 #PHP
You might like
php xml-rpc远程调用
2008/12/19 PHP
PHP 在5.1.* 和5.2.*之间 PDO数据库操作中的不同之处小结
2012/03/07 PHP
ThinkPHP3.1新特性之动态设置自动完成及自动验证示例代码
2014/06/23 PHP
php采用session实现防止页面重复刷新
2015/12/24 PHP
Symfony2中被遗弃的getRequest()方法分析
2016/03/17 PHP
PDO::_construct讲解
2019/01/27 PHP
PHP常用函数之base64图片上传功能详解
2019/10/21 PHP
javascript中日期转换成时间戳的小例子
2013/03/21 Javascript
setTimeout()与setInterval()方法区别介绍
2013/12/24 Javascript
JS点击链接后慢慢展开隐藏着图片的方法
2015/02/17 Javascript
深入分析Javascript事件代理
2016/01/30 Javascript
jQuery学习笔记之入门
2016/12/14 Javascript
Ionic 2 实现列表滑动删除按钮的方法
2017/01/22 Javascript
vue组件间通信解析
2017/03/01 Javascript
关于vue中watch检测到不到对象属性的变化的解决方法
2018/02/08 Javascript
Vue的elementUI实现自定义主题方法
2018/02/23 Javascript
angularjs手动识别字符串中的换行符方法
2018/10/02 Javascript
[04:44]DOTA2英雄梦之声_第12期_矮人直升机
2014/06/21 DOTA
python端口扫描系统实现方法
2014/11/19 Python
python文件的md5加密方法
2016/04/06 Python
python字典快速保存于读取的方法
2018/03/23 Python
python 不以科学计数法输出的方法
2018/07/16 Python
对python中xlsx,csv以及json文件的相互转化方法详解
2018/12/25 Python
Python程序包的构建和发布过程示例详解
2019/06/09 Python
python 多进程并行编程 ProcessPoolExecutor的实现
2019/10/11 Python
150行python代码实现贪吃蛇游戏
2020/04/24 Python
Booking.com西班牙:全球酒店预订
2018/03/30 全球购物
波兰家居饰品和厨房配件网上商店:Maleomi
2020/12/15 全球购物
大学生党员自我批评
2014/02/14 职场文书
税务会计岗位职责
2014/02/18 职场文书
行政管理专业求职信
2014/07/06 职场文书
公司委托书范本5篇
2014/09/20 职场文书
民族学专业大学生职业规划范文:清晰未来的构想
2014/09/20 职场文书
2014年社区工作总结
2014/11/18 职场文书
漫改真人电影「萌系男友是燃燃的橘色」公开先导视觉图
2022/03/21 日漫
java版 简单三子棋游戏
2022/05/04 Java/Android