CodeIgniter安全相关设置汇总
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之类的语句
相关推荐
-
CodeIgniter框架URL路由总结
URI 路由 一般来说,URI字符串有着和它唯一对应的控制器(controller)类/方法.URI的各个部分是如下模式(pattern): 复制代码 代码如下: example.com/class/function/id/ 然而在一些例子中,你也许想重定向这种关系来调用一个不同的类/方法(class/function),而不是与URL一一对应(的调用). 例如,你可能想使你的URL采用这种原型(prototype): 复制代码 代码如下: example.com/product/1/ exam
-
CI(CodeIgniter)框架中的增删改查操作
CodeIgniter的数据函数类在 \system\database\DB_active_rec.php 复制代码 代码如下: <span style="font-size:16px;">class ModelName extends CI_Model { function __construct() { parent::__construct(); } }</span> 连接数据库:$this->load->
-
CI框架安全类Security.php源码分析
CI安全类提供了全局防御CSRF攻击和XSS攻击策略,只需要在配置文件开启即可: 复制代码 代码如下: $config['csrf_protection'] = TRUE; $config['global_xss_filtering'] = TRUE; 并提供了实用方法: 复制代码 代码如下: $this->security->xss_clean($data);//第二个参数为TRUE,验证图片安全 $this->security->sanitize_filename()//过滤文
-
php之CodeIgniter学习笔记
在使用数据库之前,我们最好将数据库进行自动连接:config/autoload.php自动加载 $autoload['libraries'] = array('database');一些常用函数 选择数据$this->db->select();允许你在SQL查询中写 SELECT 部分.$this->db->where();$this->db->or_where();$this->db->where_in();允许你在SQL查询中写 WHERE部分,其余各种
-
CodeIgniter模板引擎使用实例
一.示例: 通常在使用codeigniter的时候经常使用这样的方式载入: $this->load->view('about', $data); 通过这个类库,可以将一个视图载入到这个模板中: $this->template->load('template', 'about', $data); 这里将视图about.php载入到template模板文件中. 二.安装 下载ci_template_library.zip 解压后将Template.php放到application/li
-
解析如何去掉CodeIgniter URL中的index.php
CI默认的rewrite url中是类似这样的,例如你的CI根目录是在/CodeIgniter/下,你的下面的二级url就类似这样http://localhost/CodeIgniter/index.php/welcome.不太好看,怎么把其中的index.php取掉呢?1. 打开apache的配置文件,conf/httpd.conf :LoadModule rewrite_module modules/mod_rewrite.so,把该行前的#去掉.搜索 AllowOverride None(
-
CodeIgniter框架过滤HTML危险代码
CodeIgniter过滤HTML危险代码的方法其实有好几种,其中最常见的有如下几种: 1.可以选择使用htmlspecialchars()方法过滤. 2.可以将config文件夹下面的config.php文件中的$config['global_xss_filtering'] = FALSE;设置为: 复制代码 代码如下: $config['global_xss_filtering'] = true; 但是这样设置后会加大服务器的开销的.所以看情况来设置. 3.可以在$this->input->
-
CI框架的安全性分析
本文分析了CI框架的安全性.分享给大家供大家参考,具体如下: 用过ci框架的人都知道,ci框架能大大缩短你的代码.其实,ci框架更能提高你网站的安全性. 防止对数据库的攻击 数据输入可能引发许多问题.因为 HTML 和数据库的限制,数据中总包含特定的符号-举例来说,省略符号和引号-可能导致你的数据库遭到攻击,最终得到你无法预料的结果. 解决方案是在把这些数据存入数据库前对这些数据进行相关处理.这样做会浪费一些系统时间,增加一些额外编码. CI 的表单辅助函数会自动地完成这些工作.因此,当你编写一
-
CodeIgniter安全相关设置汇总
CodeIgniter框架自身提供了一些安全设置如针对XSS和CSRF攻击的防范,针对SQL注入攻击的防范等. 就配置文件而言: 在application/config/config.php中 $config['encryption_key'] = '';//这个一定要设置 以加密自己的cookie等 $config['cookie_secure'] = TRUE;//设置为TRUE /* |----------------------------------------------------
-
Windows 2003 服务器安全设置图文教程
一.系统的安装 1.按照Windows2003安装光盘的提示安装,默认情况下2003没有把IIS6.0安装在系统里面. 2.IIS6.0的安装 开始菜单->控制面板->添加或删除程序->添加/删除Windows组件 应用程序 ---ASP.NET(可选) |--启用网络 COM+ 访问(必选) |--Internet 信息服务(IIS)---Internet 信息服务管理器(必选) |--公用文件(必选) |--万维网服务---Active Server pages(必选) |--Int
-
Win2003 Server 安全的个人Web服务器
如何才能打造一个安全的个人Web服务器?下面我们简单介绍一下 一.Windows Server2003的安装 1.安装系统最少两需要个分区,分区格式都采用NTFS格式 2.在断开网络的情况安装好2003系统 3.安装IIS,仅安装必要的 IIS 组件(禁用不需要的如FTP 和 SMTP 服务).默认情况下,IIS服务没有安装,在添加/删除Win组件中选择"应用程序服务器",然后点击"详细信息",双击Internet信息服务(iis),勾选以下选项: Internet
-
创建安全的个人Web服务器(winserver2003、sql2000)
一.Windows Server2003的安装 1.最小2个分区,分区格式都采用NTFS格式 2.在断开网络的情况安装好2003系统 3.安装IIS,仅安装必要的 IIS 组件.(禁用不需要的如FTP 和 SMTP 服务) 默认情况下,IIS服务没有安装,在添加/删除Win组件中选择"应用程序服务器",然后点击"详细信息", 双击Internet信息服务(iis),勾选以下选项: Internet 信息服务管理器:公用文件:后台智能传输服务 (BIT
-
Windows2003网络服务器安全攻略
一.Windows Server2003的安装 1.安装系统最少两需要个分区,分区格式都采用NTFS格式 2.在断开网络的情况安装好2003系统 3.安装IIS,仅安装必要的 IIS 组件(禁用不需要的如FTP 和 SMTP 服务).默认情况下,IIS服务没有安装,在添加/删除Win组件中选择"应用程序服务器",然后点击"详细信息",双击Internet信息服务(iis),勾选以下选项: Internet 信息服务管理器: 公用文件: 后台智能传输服务 (BITS)
-
[推荐]Win2003 服务器的详细架设
一.Windows Server2003的安装 1.安装系统最少两需要个分区,分区格式都采用NTFS格式 2.在断开网络的情况安装好2003系统 3.安装IIS,仅安装必要的 IIS 组件(禁用不需要的如FTP 和 SMTP 服务).默认情况下,IIS服务没有安装,在添加/删除Win组件中选择"应用程序服务器",然后点击"详细信息",双击Internet信息服务(iis),勾选以下选项: Internet 信息服务管理器: 公用文件: 后台智能传输服务 (BITS)
-
.NET中字符串比较的最佳用法
目录 对字符串用法的建议 显式指定字符串比较 字符串比较的详细信息 使用当前区域性的字符串比较 序号字符串操作 使用固定区域性的字符串操作 为方法调用选择 StringComparison 成员 .NET 中的常见字符串比较方法 String.Compare String.CompareTo String.Equals String.ToUpper 和 String.ToLower Char.ToUpper 和 Char.ToLower String.StartsWith 和 String.En
-
JS设置CSS样式的方式汇总
1. 直接设置style的属性 某些情况用这个设置 !important值无效 如果属性有'-'号,就写成驼峰的形式(如textAlign) 如果想保留 - 号,就中括号的形式 element.style['text-align'] = '100px'; element.style.height = '100px'; 2. 直接设置属性(只能用于某些属性,相关样式会自动识别) element.setAttribute('height', 100); element.setAttribute
-
codeigniter数据库操作函数汇总
网上倒是有不少Codeigniter数据库操作的介绍,这里做一个汇总. 复制代码 代码如下: //查询: $query = $this->db_query("SELECT * FROM table"); ================================== //result() 返回对象数组$data = $query->result(); //result_array() 返回数据$data = $query->result_array(); //r
-
CodeIgniter删除和设置Cookie的方法
本文实例讲述了CodeIgniter删除和设置Cookie的方法.分享给大家供大家参考.具体如下: $cookie = array( 'name' => 'loggedin', 'value' => 'yes', 'expire' => '86500', 'domain' => '.apol0829.dev', 'prefix' => 'apollidon_' ); set_cookie($cookie); $cookie = array( 'name' => 'log
随机推荐
- Jquery实现视频播放页面的关灯开灯效果
- MSSQL 计算两个日期相差的工作天数的语句
- Ubuntu14.04搭建Caffe(仅CPU)详解教程
- Objective-C封装字符串存储操作示例
- JS小功能(button选择颜色)简单实例
- ASP.NET Core Project.json文件(5)
- 谈谈从phpinfo中能获取哪些值得注意的信息
- Python设计模式之抽象工厂模式
- 用纯CSS+DIV写的漂亮Flash幻灯片及SQL标签教程!
- JS转换HTML转义符的方法
- 根据地区不同显示时间的javascript代码
- 详解Spring 两种注入的方式(Set和构造)实例
- LSI SAS1068 RAID 阵列卡图文配置教程
- MYSQL删除匿名用户的方法(提高安全性)
- jQuery实现可拖拽的许愿墙效果【附demo源码下载】
- Code:findPosX 和 findPosY
- javascript修改IMG标签的src问题
- Windows服务器下升级PHP版本的方法
- Windows下的PHP安装文件线程安全和非线程安全的区别
- python获取list下标及其值的简单方法