문제

그래서 여러 클라이언트가있는 응용 프로그램을 탐색하고 있습니다. 사용자는 각 경우에 여러 개의 역할을 사용하여 둘 이상의 클라이언트에 액세스 할 수 있습니다. 예를 들어, 사용자 A는 클라이언트 C1 에 대해 role_xx 을 가지고 있지만 클라이언트 C2 에 대한 role_yy

내가 아는 한 fosuserbundle 역할 (기본 테이블 fos_user )에서 사용자의 역할을 저장 하므로이 구조 내 필요에 적합하지 않습니다.

역할 관리 ,하지만 관련이 없으므로 fosuserbundle 의 범위를 벗어난 기능이라고 생각합니다.

그래서 나는 그들 (클라이언트, 사용자, 역할)과 관련된 덧셈 테이블을 만드는 것에 대해 생각하고 있었지만, 나는 FOS 전문가가 전혀 없으므로 이것이 올바른 방법인지 여부를 알지 못합니다. 아니면 내가 뭔가를 놓치지 않을 수도 있습니다. 모든 팁을 높이 평가합니다!

도움이 되었습니까?

해결책

귀하의 요구 사항은 Symfony의 보안 역할 시스템이 제공하는 것을 초과합니다.사용자 지정 보안 유권자에서 ACL을 유지하거나 액세스 제어 로직을 캡슐화해야합니다.나는 최근에 후자의 접근 방식에 대해 썼습니다 :

http://kriswallsmith.net/post/15994931191/symfony2-security-voters P>

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top