[ Laravel 从入门到精通 ] 表单方法伪造与跨站请求伪造(CSRF)攻击防护

表单方法伪造 有时候,我们可能需要手动定义发送表单数据所使用的 HTTP 请求方式,而 HTML 表单仅支持 GET 和 POST 两种方式,如果要使用其他的方式,则需要自己来定义实现。 HTTP 请求方式概述 最常见的 HTTP 请求方式自然是 GET 和 POST,相信你已经很熟悉,除此之外,HTTP 协议还定义了很多其他的请求方式,可以在 HTTP/1.1: Method De...

[ Laravel 5.7 文档 ] 安全系列 —— 重置密码

简介 想要快速实现该功能?只需要在新安装的 Laravel 应用下运行 php artisan make:auth(如果你已经执行过此命令,可忽略),然后在浏览器中访问 http://your-app.test/register 或者其他分配给应用的 URL,该命令会生成用户登录注册所需要的所有东西,包括密码重置! 大多数 Web 应用都提供了为用户重置密码的功能,Laravel 也...

[ Laravel 5.7 文档 ] 安全系列 —— 哈希

简介 Laravel 的 Hash 门面为存储用户密码提供了安全的 Bcrypt 和 Argon2 哈希算法。如果你正在使用 Laravel 应用自带的 LoginController 和 RegisterController 控制器,它们将会自动在注册和认证时使用默认的 Bcrypt 算法。 注:Bcrypt 是散列密码的绝佳选择,因为其「工作因子」是可调整的,这意味着随着硬件功能的...

[ Laravel 5.7 文档 ] 安全系列 —— 加密

简介 Laravel 的加密器使用 OpenSSL 来提供 AES-256 和 AES-128 加密。强烈建议使用 Laravel 自带的加密设置,不要尝试推出自己“土生土长”的加密算法。所有 Laravel 加密过的值都使用消息授权码(MAC)进行签名以便底层值一经加密就不能修改。 配置 在使用 Laravel 的加密器之前,必须在配置文件 config/app.php 中设置 key...

[ Laravel 5.7 文档 ] 基础组件 —— CSRF 保护

简介 跨站请求伪造(CSRF)是一种通过伪装授权用户的请求来攻击授信网站的恶意漏洞。 Laravel 通过自带的 CSRF 保护中间件让避免应用遭到跨站请求伪造攻击变得简单:Laravel 会自动为每一个被应用管理的有效用户会话生成一个 CSRF “令牌”,然后将该令牌存放在 Session 中,该令牌用于验证授权用户和发起请求者是否是同一个人。 任何时候在 Laravel 应用中定义 ...

Laravel 学院文本编辑器及 XSS 攻击防范 —— Markdown 编辑器篇

作为程序员群体,可能更偏爱使用 Markdown 来编辑文本,学院君也是其中的一员,我平时写文章、周报、技术方案和文档基本都是在 MWeb (Mac系统下一款值得推荐的 Markdown 编辑器)中完成,所以学院里自然也不能少了对 Markdown 编辑器的支持,目前学院发布主题支持富文本编辑器和 Markdown 编辑器二选一,发布评论为了简单起见,只支持 Markdown: 和富...

关于 jwt 的一些分享

什么是 jwt ? JWT 全称叫 JSON Web Token, 是一个非常轻巧的规范。这个规范允许我们使用 JWT 在用户和服务器之间传递安全可靠的信息。 jwt 使用场景 jwt 用图广泛,例如授权、鉴权等。具体一点的话,假如我们有一个 A 用户想要邀请某用户进入自己的群组,此时 A 用户需要生成一条邀请链接,链接内容大致如下: https://host/group/{group...

[ Laravel 5.6 文档 ] 安全系列 —— 重置密码

简介 想要快速实现该功能?只需要在新安装的 Laravel 应用下运行 php artisan make:auth(如果你已经执行过此命令,可忽略),然后在浏览器中访问 http://your-app.test/register 或者其他分配给应用的 URL,该命令会生成用户登录注册所需要的所有东西,包括密码重置! 大多数 Web 应用都提供了为用户重置密码的功能,Laravel 也...

[ Laravel 5.6 文档 ] 安全系列 —— 哈希

简介 Laravel 的 Hash 门面为存储用户密码提供了安全的 Bcrypt 和 Argon2 哈希算法。如果你正在使用 Laravel 应用自带的 LoginController 和 RegisterController 控制器,它们将会自动在注册和认证时使用默认的 Bcrypt 算法。 注:Bcrypt 是散列密码的绝佳选择,因为其「工作因子」是可调整的,这意味着随着硬件功能...

[ Laravel 5.6 文档 ] 安全系列 —— 加密

简介 Laravel 的加密器使用 OpenSSL 来提供 AES-256 和 AES-128 加密。强烈建议使用 Laravel 自带的加密设置,不要尝试推出自己“土生土长”的加密算法。所有 Laravel 加密过的值都使用消息授权码(MAC)进行签名以便底层值一经加密就不能修改。 配置 在使用 Laravel 的加密器之前,必须在配置文件 config/app.php 中设置 ...