【文件属性】:
文件名称:表单令牌-图像目标检测技术及应用
文件大小:2.49MB
文件格式:PDF
更新时间:2021-06-04 00:04:34
ThinkPHP3.1
ThinkPHP3.1 完全开发手册
317
第 14 章 安全
在项目开发完成准备部署之前,应该检查下是否存在安全隐患,这一部分内容帮助你一起来加强项目的安
全问题,指导你如何使用表单令牌、字段类型验证、输入过滤、上传安全、防止 XSS 攻击和目录安全保护
等功能。
14.1 表单令牌
ThinkPHP 内置了表单令牌验证功能,可以有效防止表单的重复提交等安全防护。
表单令牌验证相关的配置参数有:
1. 'TOKEN_ON'=>true, // 是否开启令牌验证
2. 'TOKEN_NAME'=>'__hash__', // 令牌验证的表单隐藏字段名称
3. 'TOKEN_TYPE'=>'md5', //令牌哈希验证规则 默认为 MD5
4. 'TOKEN_RESET'=>true, //令牌验证出错后是否重置令牌 默认为 true
如果开启表单令牌验证功能,系统会自动在带有表单的模板文件里面自动生成以 TOKEN_NAME 为名称的
隐藏域,其值则是 TOKEN_TYPE 方式生成的哈希字符串,用于实现表单的自动令牌验证。
自动生成的隐藏域位于表单 Form 结束标志之前,如果希望自己控制隐藏域的位置,可以手动在表单页面
添加{__TOKEN__} 标识,系统会在输出模板的时候自动替换。
如果页面中存在多个表单,建议添加{__TOKEN__}标识,并确保只有一个表单需要令牌验证。
如果个别页面输出不希望进行表单令牌验证,可以在控制器中的输出方法之前动态关闭表单令牌验证,例
如:
1. C('TOKEN_ON',false);
2. $this->display();