2013-01-09 113 views
0

我有以下security.yml:認證系統

security: 
encoders: 
    Symfony\Component\Security\Core\User\User: plaintext 
    Frontend\AccountBundle\Entity\User: 
    id: sha256salted_encoder 

role_hierarchy: 
    ROLE_ADMIN:  ROLE_USER 
    ROLE_SUPER_ADMIN: [ROLE_USER, ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] 

providers: 
    chain_provider: 
     chain: 
      providers: [in_memory, user_db] 
    in_memory: 
     memory: 
      users: 
       foo: { password: test, roles: ROLE_USER } 
    user_db: 
     entity: { class: Frontend\AccountBundle\Entity\User, property: email } 

access_control: 
    - { path: ^/secarea/, roles: ROLE_USER } 

如果我要登錄爲用戶....

...富:

  • 上每一頁FOO被登錄爲:FOO //綠色背景
  • 在每一頁上FOO被認證

...爲數據庫用戶:

  • 只在頁面上,我宣佈ACCESS_CONTROL的DB_USER已登錄並驗證//綠色背景
  • 在其他頁面上的用戶登錄//黃色背景,但未驗證

爲什麼會有不同?

評論:我必須從db給用戶一個角色嗎?我可以爲db用戶設置默認角色嗎?

回答