Symfony2 - установка ограничения доступа пользователя к определенной сущности
Я работаю над проектом, где главная страница - это портал, а каждая ссылка - это страница блога клиента.
Мой вопрос, как бы мне настроить ограничение доступа для каждого клиента к его конкретной странице блога?
например, главная страница портала
- Ссылка1 -> страница блога1
- Ссылка2 -> страница блога2
- Ссылка3 -> страница блога3
Мне нужно найти способ ограничить доступ CRUD для каждого пользователя только к определенному блогу.
Например:
User1 -> доступ к странице Blog1 ограничен
User2 -> доступ к странице Blog2 ограничен
User3 -> доступ к странице Blog3 ограничен
Для настройки: я начал работать с сущностью 1 категории и связывался с сущностью публикации, но теперь я думаю, что не было бы никакого способа ограничить доступ только одной сущностью категории / сущностью публикации.
Любые идеи о том, как лучше всего справиться с этим? (использовать сущности разных категорий и размещать сущности или есть пакет, который заботится о том, что я пытаюсь сделать?)
1 ответ
Вы можете попробовать и использовать существующую функцию контроля доступа SF2: Роли
Пользователь, которому разрешено только читать Блог1, может иметь роль ROLE_USER_BLOG1
, Другой, которому разрешено создавать статьи, может иметь ROLE_ADMIN_BLOG1
, И третий, которому разрешено читать все блоги, мог иметь ROLE_USER_BLOG_ALL
,
Вместе с пользовательским избирателем реализация вашей системы должна быть простой.;-)