首页 > 解决方案 > Laravel / 数据库 - 安全

问题描述

目前,我正在考虑使用 laravel 时数据库端(在我的情况下为 postgres)的安全级别。

所以我遇到了这个问题:

Fe 我在 Laravel 中有两个用户角色:用户、管理员。

用户需要对数据库的选择、插入、更新权限。管理员需要在数据库级别选择、插入、更新、删除和创建。

所以在这种情况下,我需要在 Laravel 中使用 2 个不同的连接:

这是常用的吗?因为我没有找到很多关于这个的信息。

你如何解决在 Laravel 中为不同角色拥有特定数据库权限的问题?你(只)依赖内部中间件吗?

先感谢您。

干杯

标签: databaselaravelsecurityroles

解决方案


在 Laravel 应用程序中提供基于角色的访问控制的最常见方法是使用授权功能。

除了提供内置的身份验证服务外,Laravel 还提供了一种简单的方法来授权用户对给定资源的操作。例如,即使用户通过了身份验证,他们也可能无权更新或删除某些 Eloquent 模型或由您的应用程序管理的数据库记录。Laravel 的授权功能提供了一种简单、有条理的方式来管理这些类型的授权检查。

https://laravel.com/docs/8.x/authorization


推荐阅读