security类
| 版本 | 1.0+ |
| 命名空间 | boa |
| 文件 | boa/security.php |
| 说明 | 安全类,继承base类,配置:'SECURITY' => [], |
配置
| 配置项 | 默认值 | 类型 | 说明 |
|---|---|---|---|
| xss_tags | ['script', 'base'] | array | XSS防御时,过滤HTML标签,忽略大小写 |
| xss_events | ['on*'] | array | XSS防御时,过滤DOM事件, *代表正则[a-z]+,忽略大小写 |
| csrf_key | CSRF-TOKEN | string | CSRF防御时,存储或传送token的键名 |
| csrf_type | 1 | int | CSRF防御时,校验类型;0=关闭,1=前端方式,2=后端方式,3=混合方式 |
| csrf_expire | 0 | int | CSRF防御时,token有效期(秒),0=不限 |
目录
| 方法 | 说明 |
|---|---|
| cfg() | 获取或设置配置信息 |
| xss() | (XSS)跨站脚本过滤 |
| create() | (CSRF)在一个页面中生成token |
| check() | (CSRF)在另一个页面中检查token,type=0时或命令行下不做检查 |
| validate() | (CSRF)在另一个页面中校验token,check()的外层封装,不通过则报错 |
方法
| 说明 | ||||
|---|---|---|---|---|
| 获取或设置配置信息 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $k | null | string | 键 | |
| $v | null | string | 值 | |
| 返回值 | ||||
| 同 base 类 | ||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| (XSS)跨站脚本过滤 | ||||
| 参数 | 必须 | 默认值 | 类型 | 说明 |
| $str | Y | string | 待过滤的字符串 | |
| 返回值 | ||||
| 返回过滤后的字符串(string) | ||||
| 示例 | ||||
|
||||
| 说明 | ||||
|---|---|---|---|---|
| (CSRF)在一个页面中生成token | ||||
| 返回值 | ||||
| 返回token(string) | ||||
| 示例 | ||||
|
| 说明 | ||||
|---|---|---|---|---|
| (CSRF)在另一个页面中检查token,type=0时或命令行下不做检查 | ||||
| 返回值 | ||||
| 通过返回true(bool),不通过返回false(bool) | ||||
| 示例 | ||||
|
| 说明 | ||||
|---|---|---|---|---|
| (CSRF)在另一个页面中校验token,check()的外层封装,不通过则报错 | ||||
| 返回值 | ||||
| 通过时静默,不通过报错 | ||||
| 示例 | ||||
|