- Laravel环境安装配置
- Laravel应用程序结构
- Laravel配置
- Laravel路由
- Laravel中间件
- Laravel控制器
- Laravel请求
- Laravel Cookie
- Laravel响应
- Laravel视图
- Laravel重定向
- Laravel操作数据库
- Laravel插入数据库表数据
- Laravel检索查询数据
- Laravel更新数据
- Laravel删除数据
- Laravel错误和日志记录
- Laravel表单处理
- Laravel本地化
- Laravel会话(session)
- Laravel验证
- Laravel文件上传
- Laravel发送邮件
- Laravel Ajax
- Laravel错误处理
- Laravel事件处理
- Laravel Facades
- Laravel安全
Laravel安全
-
存储密码 − Laravel提供了一个名为“Hash”类来提供安全Bcrypt散列。密码可以通过以下方式散列。
$password = Hash::make('secret');
-
make() 函数将使用一个值作为参数,将返回其哈希值。散列值可以用check()函数进行检查如下所示。
Hash::check('secret', $hashedPassword)
-
认证用户-在Laravel其他主要安全功能是验证用户和执行某些操作。Laravel使得此任务更容易,要做到这一点可以通过使用Auth::attempt()方法。
if (Auth::attempt(array('email' => $email, 'password' => $password))) { return Redirect::intended('home'); }
-
CSRF保护/跨站请求伪造 (XSS) − 攻击者把客户端的JavaScript代码放页面在其他用户查看的页面时,跨站点脚本(XSS)攻击发生。 为了避免这种攻击,千万不要相信任何用户提交的数据并转义任何危险的字符。在Blade模板应该使用双括号语法({{$value}}),
如果使用 {!! $value !!} 语法,数据会其原始格式来显示所以一定是安全的。 -
避免SQL注入- SQL注入漏洞当应用程序插入任意和未经过滤的用户输入的SQL查询时存在的。默认情况下,Laravel会保护免受这种类型的攻击,因为在后台查询生成器使用PHP数据对象(PDO)类。 PDO使用prepared语句,它允许您安全地传递任何参数,而无需转义它们。
-
Cookies - 默认情况下安全 − Laravel使用Cookie类使得它很容易创建,读取和过期的cookies。在Laravel所有的Cookie是自动签名和加密。这意味着,如果它们被篡改,Laravel将自动丢弃它们。这也表示你将不能够从客户端使用 JavaScript 读取。
-
交换敏感数据时强制HTTPS − HTTPS防止在同一网络上拦截私人信息,如会话变量,并使用受害者这些信息来登录。
上一篇:Laravel Facades
下一篇:没有了