2012-09-05 3 views
1

나는 두 가지 인코딩 암호 방법symfony2 -하여 여러개의 사용자 제공

응용 프로그램/설정/security.yml

체인이 개 사용자 공급자 (FosUserBundle 및 추진을 통해 사용자 DB 사용자 공급자)에 원하는 여러 인코딩 암호 방법
 
security: 

    encoders: 
     FOS\UserBundle\Model\UserInterface: sha512 
     My\AuthBundle\Model\User: sha1 

    providers: 
     my_chain_providers: 
      chain: 
       providers: ["fos_userbundle", "db_user"] 
     fos_userbundle: 
      id: fos_user.user_provider.username_email 
     db_user: 
      propel: 
       class: My\AuthBundle\Model\User 
       property: username 

    firewalls: 
     main: 
      pattern: ^/ 
      form_login: 
       provider: my_chain_providers 
      logout:  true 
      anonymous: true 

내 문제 : 비밀의 hashs은 $ 비밀번호를 따라 '{'$ 소금.. '}'fos_user 테이블과

이 요점 https://gist.github.com/1243080 보여 내 사용자 DB 사용자 공급자 $ 소금 $의 암호 방법을 정의합니다.. mergePasswordAndSalt 메소드를 사용하지만 pos입니다. 사용자 제공자 당 하나의 mergePasswordAndSalt 메소드를 가질 수 있습니까?

답변

1

FOSAdvancedEncoderBundle과 함께 여러 개의 인코더를 사용해야합니다. 나는 똑같은 문제가 있었고, 그 말을 꽤 호되게 대답했다. over here