Как одновременно создать ограниченную и неограниченную область в Symfony2

то, что мне нужно создать, это страница, на которой есть страницы с ограниченным доступом, а некоторые не имеют похожих ссылок. Попробую объяснить на примере:

Допустим, у меня есть пользователи в моей системе (на основе FOSUserBundle), и у каждого из них есть собственная учетная запись, содержащая блог и галерею (разные контроллеры). Некоторые пользователи хотят предоставить доступ к своему блогу и галерее только для определенной группы людей (которые не хранятся в системе), поэтому они генерируют токен (только один токен, так что любой, кто знает токен, сможет получить доступ к области) и отправляет на Пользователи. Чего я не хочу делать, так это проверять это в каждом методе контроллеров.

Итак, допустим, у нас есть 2 пользователя, steven и stan, и первый из них хочет сделать свой блог и галерею бесплатными для просмотра, а второй хочет, чтобы его просмотр был ограничен на основе на жетоне.

Ссылка будет такой:

/steven/blog
/steven/gallery

/stan/blog
/stan/gallery

Может ли кто-нибудь порекомендовать какое-нибудь решение или идею, как я могу попытаться создать его в Symfony2?


person Tomasz Ozga    schedule 27.12.2011    source источник


Ответы (1)


Почему вы не хотите проверить это в контроллерах? Я не вижу других способов сделать это, если вы хотите, чтобы он был динамичным и, возможно, меняющимся.

person Jérémy Dutheil    schedule 28.12.2011
comment
На данный момент я решил использовать ACL в контроллерах, но в будущем я хотел бы сделать прослушиватели, которые управляют им, посмотрим. - person Tomasz Ozga; 02.02.2012