【发布时间】:2016-05-26 05:13:33
【问题描述】:
我的 SecurityServiceProvider 有 silex 项目,例如:
$this->app->register(new SecurityServiceProvider(), array(
'security.firewalls' => array(
'login' => array(
'pattern' => '^/login$',
),
'secured' => [
'pattern' => '^/admin.*$',
'anonymous' => true,
'form' => array(
'login_path' => '/login',
'check_path' => '/admin/auth'
),
'logout' => array(
'logout_path' => '/admin/logout'
),
'users' => $this->app->share(function() use ($self) {
return new AuthenticationSuccessHandler($self->app['db']);
}),
]
),
'security.role_hierarchy' => [
'ROLE_USER' => [],
'ROLE_BACKEND_USER' => ['ROLE_USER'],
'ROLE_SUPER_ADMIN' => ['ROLE_USER','ROLE_BACKEND_USER']
],
'security.access_rules' => array(
['^/.*$', 'ROLE_USER'],
['^/admin.*$', 'ROLE_SUPER_ADMIN'],
['^/admin.*$', 'ROLE_BACKEND_USER']
)
));
现在我有一个包含角色列表的数据库表:
22 ROLE_ACCESS_NODES_DELETE
23 ROLE_ACCESS_NODES_STATUS
24 ROLE_ACCESS_NEWSLETTERS_SEND
25 ROLE_USER
26 ROLE_BACKEND_USER
我的用户存储在数据库表中,然后我有其他表用于用户/角色关系。
如何加载这些角色并应用到我的用户?
谢谢
【问题讨论】:
-
您在哪里存储用户以及如何为用户分配角色?
-
@MaxP。我的用户存储在数据库表中,然后我有其他表用于用户/角色关系。
标签: php symfony roles silex user-roles