Páginas

quarta-feira, 3 de fevereiro de 2010

Symfony - Generator.yml com Credentials AdminGenerator/sfGuardPlugin

Bem pessoal,

Hoje vou postar uma dificuldade minha para aprender a utilizar as Credentials propostas pelo sfGuardPlugin e AdminGenerator

Eu estava tentando colocar um campo "edit" para edição somente para o pessoal com permissão "manager" *controle total* e manager_update *só atualiza* porém toda vez que eu colocava o EDIT sumia.

Bem no documento de referência sobre o symfony AdminGenerator (distribuida em: http://www.symfony-project.org/uploads/assets/sfAdminGeneratorRefCard.pdf)

No documento está escrito da seguinte maneira para colocarmos OR e AND, no seu arquivo generator.yml
actions:
  _delete: 
    credentials: [[admin,superuser],owner] 

Bem isto quer dizer que você seu user deve possuir as credentials
"admin OR superuser AND owner" 

Porém na minha opinião deixa uma brecha sobre como trabalhar melhor com os intens, então lendo um pouco mais na documentação do symfony eu achei uma outra referência.

Ela está neste link: http://www.symfony-project.org/book/1_2/06-Inside-the-Controller-Layer#chapter_06_sub_complex_credentials

E ela cita 2 modelos ótimos para entender como funciona o jogo de credentials. O primeiro é simples


editArticle:
  credentials: [ admin, editor ]              # admin AND editor

publishArticle:
  credentials: [ admin, publisher ]           # admin AND publisher

userManagement
credentials: [[ admin, superuser ]]         # admin OR superuser

O segundo ja é mais complexo

credentials: [[root, [supplier, [owner, quasiowner]], accounts]]
             # root OR (supplier AND (owner OR quasiowner)) OR accounts
 
Espero que ajude as pessoas que possuíram o mesmo problema que eu sobre credentials.

Abraços

Até.

2 comentários: