验证laravel Web系统的方法

时间:2018-02-15 16:43:02

标签: laravel authentication

我正在使用laravel框架在php中开发一个Web系统,我到达了用户身份验证的一部分,其中不允许用户x访问页面y的类型。用laravel做这件事的最佳方法是什么?我考虑过创建一个会话并保存用户的id,所以每当他访问某个控制器时,我会检查他是否有权访问id。所以我有些疑惑。

  • 这是执行此身份验证的好方法吗?
  • 这真的很安全吗?
  • 有没有办法让客户改变我的会话?
  • 验证用户访问权限的更好方法是什么?

2 个答案:

答案 0 :(得分:1)

Laravel提供了一个非常好的认证系统。尽管Hacking是不可避免的,但它提供了非常好的保护,而且由于Laravel是非常受欢迎的框架,因此您不必担心安全部分。如果有任何安全漏洞,补丁几乎可以立即获得。

您的第二个问题客户是否可以更改会话?如果您正确编码,答案是否定的。与cookie不同,会话驻留在服务器中,因此用户无法直接更改会话。如果你遵循良好的编码习惯,你就可以去了。

你如何限制userA访问pageB 。这是几乎所有应用程序所需的非常常见的功能。截至目前,Laravel并没有为此提供开箱即用的解决方案。但这很简单,您可以将一个角色列添加到users表中,并检查用户是否在每个页面中具有适当的权限。 Laravel将用户对象保留在会话中,并且可以通过auth()助手或Auth Facade进行访问。如果你想要一个复杂的解决方案,那里有一个包[entrust][1]。这似乎是一个不错的选择。

您可能想了解

Authorization

Csrf Protection

Authentication

我希望我已经解决了你所有的问题

答案 1 :(得分:0)

Laravel提供了一种简单的方法来授权针对您所需的内容构建的操作:

https://laravel.com/docs/5.5/authorization