Каковы поставщики ролей?

Как использовать поставщиков ролей zfc rbac?

Я понимаю, что охранники не позволяют пользователям получать доступ к маршрутам, но, похоже, мне также нужны поставщики ролей. Являются ли эти разрешения базы данных? В приведенном ниже примере «article» контроллер и часть после «.» разрешение, предоставленное на этом контроллере? Как я могу проверить это когда-то на месте? Большое спасибо.

return [
'zfc_rbac' => [
'role_provider' => [
'ZfcRbac\Role\InMemoryRoleProvider' => [
'admin' => [
'permissions' => [
'article.delete',
'article.edit',
'article.archive',
'article.read'
]
],
'member' => [
'permissions' => [
'article.edit',
'article.archive',
'article.read'
]
],
'guest' => [
'permissions' => ['article.read']
]
]
]
]
];

0

Решение

Здесь вы можете прочитать о поставщиках ролей

В ZF-Rbac одна личность может иметь разные роли с разными разрешениями / привилегиями. Чтобы собрать роли для службы авторизации, вам нужны поставщики ролей. Они будут включать RoleProvicerInterface (ссылка на сайт) с getRoles метод, который должен возвращать роли, с которыми должен работать сервис авторизации.

Каждая личность имеет IdentityInterface (ссылка на сайт) который также имеет getRoles метод. Это вернет массив roleNames который будет сопоставлен с ролями из RolesProvider узнать о разрешениях / привилегиях.

Затем вы можете узнать, что может делать текущий пользователь (личность).

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]