2011-03-27 2 views
1

나는 cancan을 사용했고 선언적인 권한 부여에 대해서 알고 있지만 역할이 커스텀 변수에 의존 할 수있는 기회를 제공하지 않는다.레일스 3에서 변수에 의존하는 권한 (사용자와 현재 자원뿐만 아니라)

모델 :

  • 도메인 (blah.qwe.com, wer.qwe.com, ert.qwe.com) - 나는 하나의 DB 및 응용 프로그램을해야합니다.

  • 사용자 (여러 역할을 가질 수 있습니다)

  • 역할 (각 역할은 도메인의에서만 작동합니다 능력을 편집 할 수 있습니다)

  • ... 예를 들어

, 나는 그는 blah.qwe.com 도메인의 소유자이지만 그는 wer.qwe.ru와 ert.qwe.com에서 간단한 사용자입니다. 그는 금지되어있어 전혀 아무것도 할 수 없습니다.

@ current_domain은 응용 프로그램 컨트롤러의 before_filter (current_domain 메서드에 의해)에로드되고 current_user는 devise에 의해로드됩니다. 현재 요청한 리소스 (예 : cancan), current_user 및 current_domain (및 다른 before_filter로드 된 변수)에 따라 권한을 부여하는 솔루션은 무엇입니까? cancan에 해결책이 있습니까? 아니면 수정하거나 자체 인증 시스템을 작성해야합니까?

답변

2

this을 확인 했습니까? 능력 계산에 요청에서 원하는 것을 포함 할 수 있습니다.

+0

감사합니다. –

+0

굉장한 찾기 ... 이것을 찾으 셨습니다! – pruett

관련 문제