2012-09-13 2 views
1

나는 Symfony로 몇 년 후 첫 번째 Symfony2 응용 프로그램을 작성 중이며 사용자 관리 코드를 변환하는 데 문제가 있습니다. Symfony2의 인증 모델에 맞추기 위해서는 (암호화 된) 비밀번호를 포함한 사용자 정보를 제공해야합니다. 우리는 사용자 이름과 암호를 취하고 확인 및 사용자 수준 (사용자, 관리자 등)으로 응답하는 웹 서비스를 통해 인증하지만 실제 암호를 보내지 않습니다.암호를 읽을 수없는 Symfony2에서의 인증

내가하고 싶은 일은 양식의 로그인 세부 정보를 수락하고 유효한지 확인한 다음 웹 서비스의 응답에 따라 사용자의 역할을 설정하는 것입니다. 어디서부터 시작해야합니까?

+0

다음 두 가지 좋은 해답을 얻으려면 symfony.com에서 인증 서비스 공급자에게 webservice 파트 방식으로 핑 (ping)하는 정식 공식 방법을 사용하고 있습니다. – Craig

답변

2

사용자 인증 공급자를 사용하여 웹 서비스를 인증해야합니다. 이 블로그에서 매우 명확하게 설명되어 있습니다. post

+0

나는 그 튜토리얼을보고, 나의 것, 감사와 유사한 비트를 움켜 잡으려고 노력하고있다. – Craig

2

사용자 제공자와 해당 loadUserByName을 만들면 webservice를 호출 할 수 있습니다. 성공한 경우 새로운 UserInterface 오브젝트를 빈 salt 문자열 형식의 비밀번호와 서비스가 리턴 한 역할로 리턴하십시오. UserInterface 인코더를 security.yml에 일반 텍스트로 설정하십시오. 그런 다음 방화벽에서 form_login 인증 공급자에 새로 생성 된 사용자 공급자를 설정합니다.

+0

여기서 암호는 웹 서비스에서 암호화되지 않았다고 가정합니다. 올바른 시나리오가 아니어야합니다. 암호가 암호화되어있는 경우 security.yml을 구성하기 위해 웹 서비스가 사용하는 암호화 메커니즘을 알지 못하면이 솔루션이 유효하지 않습니다. – Juampy

관련 문제