athens / csrf
此软件包最新版本(2.1.0)没有可用的许可证信息。
简单的CSRF保护
2.1.0
2016-11-02 20:40 UTC
Requires (Dev)
- athens/standard: *
- codeclimate/php-test-reporter: dev-master
- phpdocumentor/phpdocumentor: 2.*
- phpunit/phpunit: 4.*
README
Athens/CSRF
轻松防御CSRF攻击。
安装
此库已在Packagist上发布。要使用Composer安装,请将"athens/csrf": "0.1.*"
行添加到您的“require”依赖项中
{
"require": {
...
"athens/csrf": "1.*",
...
}
}
当然,如果您不使用Composer,则可以通过右侧的“下载ZIP”按钮下载仓库。
使用方法
使用此软件包只需要两行代码
// Import the CSRF class
use Athens\CSRF\CSRF;
// Intialize
CSRF::init();
::init()
方法将自动将隐藏的CSRF令牌字段插入到您的表单中
<!--output html-->
...
<form>
<input type=hidden name=csrf_token value=37328bc2cac3e73623bc38ab0f4068ee7fa1>
...
此令牌将自动包含在任何表单提交中。
如果您通过AJAX执行表单提交,::init()
也会将CSRF_TOKEN
变量插入到您的javascript中
<!--output html-->
...
<head>
<script>var CSRFTOKEN = '37328bc2cac3e73623bc38ab0f4068ee7fa1';</script>
...
此令牌不会自动包含在您的AJAX请求中,但您可以通过在提交脚本中引用CSRFTOKEN
变量来手动包含它。
兼容性
- PHP 5.5, 5.6, 7.0
待办事项
请参阅GitHub 问题跟踪器。
参与贡献
请随时提交拉取请求或问题。 GitHub 是此项目的官方位置。
以下是代码贡献的一般顺序
- 在问题跟踪器中打开一个问题。
- 无特定顺序
- 提交一个包含显示问题/功能的失败测试的拉取请求。
- 获得确认/同意。
- 修改您的拉取请求以通过(2)中的测试。如果适用,包括文档。