8.3. 权限系统
权限系统
现在的应用存在两个巨大的安全隐患:
- 未登录用户可以访问
edit
和update
动作; - 登录用户可以更新其它用户的个人信息;
接下来让我们针对这两个安全隐患进行修复。
必须先登录
Laravel 中间件 (Middleware) 为我们提供了一种非常棒的过滤机制来过滤进入应用的 HTTP 请求,例如,当我们使用 Auth 中间件来验证用户的身份时,如果用户未通过身份验证,则 Auth 中间件会把用户重定向到登录页面。如果用户通过了身份验证,则 Auth 中间件会通过此请求并接着往下执行。Laravel 框架默认为我们内置了一些中间件,例如身份验证、CSRF 保护等。所有的中间件文件都被放在项目的 app/Http/Middleware
文件夹中。
接下来让我们使用 Laravel 提供身份验证(Auth)中间件来过滤未登录用户的 edit
, update
动作。
app/Http/Controllers/UsersController.php
<?php
namespace App\Http\Controllers;
.
.
.
cla...