Menu

8.3. 权限系统

权限系统

现在的应用存在两个巨大的安全隐患:

  1. 未登录用户可以访问 editupdate 动作;
  2. 登录用户可以更新其它用户的个人信息;

接下来让我们针对这两个安全隐患进行修复。

必须先登录

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...

本文章首发在 Laravel China 社区

为了保证课程的高品质,我们需要对课程进行收费。付费后 才能观看剩余内容。 购买

上一篇 下一篇
讨论数量: 20

Mr_Guo
logic
中间件的用法?
1 个点赞 | 5 个回复 | 问答
gotophp
mfsslgs
关于页面 HTML 代码的问题?
0 个点赞 | 7 个回复 | 问答
zgg548
怎么判断当前是不是管理员?
0 个点赞 | 3 个回复 | 问答
zgg548
当前用户没有修改自己信息的权限?
0 个点赞 | 4 个回复 | 问答
刻意练习,每日精进。
39
点赞
9648
浏览
20
讨论
贡献者