Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 03.01.2018 23:02:54

Разграничить доступ к таблицам БД для разных пользователей

Доброго времени суток.
  Наведите пожалуйста на мысль: как сделать разграничения доступа к таблицам  MSSQL для разных пользователей моего приложения:
например, пользователю Alex к таблице Sales  разрешить только select, пользователю Boris  select и insert  и  тд, причём желательно делать это гибко, как это можно делать средствами SQL Server Management Studio.
  У меня есть пользователи домена и роли для них, заданные в SQL Server Management Studio, которые всё это обеспечивают, но не знаю, как обращаться к БД от имени текущего пользователя, поэтому хочу сделать авторизацию пользователей в вэб приложении, которая идёт из коробки, и уже как то потом для них задавать роли. Прошу помощи форумчан. Спасибо!
Версия Laravel: 5.5.22
Версия PHP: 7.1.12
Операционная система и её версия: Windows Server 2008 R2
Вендор и версия сервера БД:  MSSQL Server 2012
Вендор и версия Веб-сервера: Apache 2.4.23

Не в сети

#2 05.01.2018 16:45:12

stsepelin
Откуда: Estonia
Сообщений: 43

Re: Разграничить доступ к таблицам БД для разных пользователей

Как вариант, в config/database.php создаете еще одну конфигурацию, после чего сможете в контроллерах обращаться к нужной БД:
$users = DB::connection('foo')->select(...);
Второй вариант, работать с ролями пользователей на стороне ларавел при помощи Gates.

Не в сети

Подвал раздела