【发布时间】:2012-01-20 07:45:27
【问题描述】:
有 ROLES 和 access_control,硬编码在 security.yml 中。但是我希望能够更改赋予某些角色的权限集,创建新角色,甚至赋予某些角色(可以授予不熟悉编程的用户)做同样事情的能力。 显然,我必须有能力从 Web 界面管理角色和访问控制。为此,我必须根据该角色将角色名称和权限存储在数据库中。
我该怎么做?
感谢您的回答!
【问题讨论】:
标签: symfony
有 ROLES 和 access_control,硬编码在 security.yml 中。但是我希望能够更改赋予某些角色的权限集,创建新角色,甚至赋予某些角色(可以授予不熟悉编程的用户)做同样事情的能力。 显然,我必须有能力从 Web 界面管理角色和访问控制。为此,我必须根据该角色将角色名称和权限存储在数据库中。
我该怎么做?
感谢您的回答!
【问题讨论】:
标签: symfony
是的,您基本上可以拥有任何您想要的角色,您只需要在您的用户实体中实现接口 Symfony\Component\Security\Core\User\UserInterface 并在 getRoles() 方法中返回该用户的角色列表.
如果您还没有在您的用户实体中实现 UserInterface,请查看 Symfony 2 安全文档http://symfony.com/doc/current/book/security.html#loading-users-from-the-database
还有用于 getRoles() 方法规范的 UserInterface API。
【讨论】: