0
我需要根據存儲在會話中的特定數據即時更改用戶角色。因此,在每個請求中,授權系統可以檢查用戶是否可以訪問某些資源。我不想在數據庫中存儲角色。角色將取決於數據。如何動態更改Symfony2中的用戶角色
例如,實際公司的admin
用戶可以管理其代理和屬性,但agent
只能管理分配給他的屬性。另外buyer
可以查看他已購買的房產的數據。
我需要根據存儲在會話中的特定數據即時更改用戶角色。因此,在每個請求中,授權系統可以檢查用戶是否可以訪問某些資源。我不想在數據庫中存儲角色。角色將取決於數據。如何動態更改Symfony2中的用戶角色
例如,實際公司的admin
用戶可以管理其代理和屬性,但agent
只能管理分配給他的屬性。另外buyer
可以查看他已購買的房產的數據。
看看This blog post,它顯示瞭如何添加用戶相關角色。您可以修改他實際設置角色名稱的部分。
我會做一些修改,這個方法雖然
class User implements UserInterface
{
public function getRoles()
{
return new UserDependentRole($this);
}
}
而在UserDependentRole
類,有此相反:
public function getRole()
{
$roles[] = 'ROLE_' . strtoupper($this->user->getUsername());
//... make an array of all the roles you want the user to have
return $roles;
}
我敢肯定,如果你讀你的文章將人物瞭解如何去做。
您能否向我們提供您目前爲止的樣品? –