메타 데이터로 액세스 역할을 저장하는 것이 좋습니다. Letter을 정의하면 다중 값 문자열 필드를 사용할 수 있습니다.
access_roles:[user, admin] // Users and the Admin roles can access this search.
access_roles:[user, admin, anonymous] // Users and the Admin and Anonymous roles can access this search.
사용 권한을 변경하려면 액세스 역할을 편집해야합니다.
사용자 역할 검색이있는 사용자는 solr이 사용자의 액세스 역할과 일치하는 결과 만 검색합니다.
하면 사용자도 (user
) 역할이있는 사람 (admin
) 역할 검색, 그 검색이 같이 이동 :
q=mainquery
&fq=access_roles:user
&fq=access_roles:admin
&facet=on
&facet.field=access_roles
이 user
역할 또는 access_roles
에서admin
역할을 포함하는 모든 결과를 가져옵니다한다;
사용자 (user
) 역할, 특별한 팀의 구성원 (it_department
) 역할 검색,
q=mainquery
&fq=access_roles:user
&fq=access_roles:it_department
&facet=on
&facet.field=access_roles
내가 더 잘
을 이해하기위한 인증 방식 drawed 한
도 '를 it_department'문서 반입하는 경우
검색어는 http://wiki.apache.org/solr/SimpleFacetParameters#Multi-Select_Faceting_and_LocalParams
안녕하세요. 답장을 보내 주셔서 감사합니다. 두 가지 질문이 있습니다. 먼저 쿼리를 기반으로 결과를 제한하는 것이 약간 위험하지 않습니까? 내가 아는 한,이 쿼리는 사용자가 조작 할 수 있습니다. 둘째, 우리는 인터페이스로서 접근 메소드를 구현하여 다른 구현체가 다른 함수/메소드를 사용한다는 것이다. 방금 말씀 드렸듯이 예를 들어 액세스를 제한하기 위해 위 주소를 사용하는 조직이 있습니다. 따라서 기본적으로 access_method는 사용자 세션 당 실시간으로 true를 반환해야합니다. 감사. Stephanie – Stephanie
물론 나는 IP 주소가 아닌 주소를 의미했습니다. – Stephanie
귀하의 solr 쿼리가 마지막 사용자로부터 직접 액세스 할 수 있다고 생각하지 않았습니다. 귀하가 웹 프레임 워크를 사용하고 있다고 생각했습니다. 난 lucene 쿼리 파서와 봄처럼 웹 프로젝트 sth에서 사용자의 쿼리를 받아야한다고 생각해. 모든 액세스 그룹을 구별 할 수있는 상수 인 구현 된 access_roles에 대해 몇 가지 상수를 정의해야합니다. 즉 boolean을 직접 사용할 수 없습니다. 사용자 그룹별로 구현 된 표시기를 정의해야합니다.액세스 메소드가 true 인 경우, 사용자 액세스 가능 컨트롤러 메소드를 인터 A 트하는 u 리에 access_role을 추가해야합니다. Solr에는 프레임 워크 –