Использование ролей с jwt / zizaco / entrust - PullRequest
0 голосов
/ 28 мая 2019

В моем новом приложении Laravel 5.8 я прочитал следующую статью об использовании ролей с расширением jwt: https://scotch.io/tutorials/role-based-authentication-in-laravel-with-jwt и в семени я добавляю несколько ролей, например:

\DB::table('roles')->insert(array (
    0 =>
        array (
            'id' => 1,
            'name' => 'Admin',
            'display_name' => 'Admin',
            'description' => 'Administrator. Can do all operations in system',
            'created_at' => '2019-04-29 11:03:50',
        ),
    1 =>
        array (
            'id' => 2,
            'name' => 'Manager',
            'display_name' => 'Manager. Can do all operations in frontend and CRUD for Hostels/CMS items in Backend',                         
            'description' => 'Manager description...',
            'created_at' => '2019-04-29 11:03:50',
        ),
    2 =>
        array (
            'id' => 3,
            'name' => 'Customer',
            'display_name' => 'Customer. Can do all operations in frontend',
            'description' => 'Customer description...',
            'created_at' => '2019-04-29 11:03:50',
        ),
));

и я вижу метод assignRole, когда мне нужно назначить какую-то роль пользователю. Что мне непонятно, что за разрешения и данные «mission_role ». Нужны ли они для моей простой структуры приложения? Если да, приведите несколько примеров ...

Спасибо!

1 Ответ

1 голос
/ 29 мая 2019

Мы не сможем ответить на ваш вопрос, если вы не укажете, что должно делать ваше приложение.У вас могут быть роли без разрешений или разрешения без ролей в зависимости от вашего приложения.Но если вы хотите, чтобы предоставленный учебник работал, он вам нужен.

Разрешения - это конкретные действия роли.

Пример данных таблицы разрешений:

Permission-id: 1
Permission-name: 'Create Blog Post'

Вы можете назначить это разрешение для роли «Администратор» (Role-id: 1).

Ваша таблица access_role содержитотношения между этими двумя.Так для приведенного выше примера:

permission_role
'permission_id': 1, 'role_id': 1;

Это означает, что в этом случае роль администратора может «Создать запись в блоге».

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...