2017-10-30 2 views
0

내 응용 프로그램에 spring-boot-dependencies 1.3.5.RELEASE을 사용하고 있으며 Java SE 1.8에서 실행됩니다. Apache Shiro' to map 사용자 groups in 역할 to 사용자 사용 권한 whereas I am using DAO ( 데이터 액세스 개체`)를 사용하여 데이터베이스의 데이터에 액세스합니다.Apache Shiro의 기존 데이터 액세스 개체 클래스에서의 역할 및 사용 권한에 대한 영향

의 우리가

  • Employee는 "이-A"고 Department
  • Department는 "한-는"Domain
  • User는 "한-는"Domain
이러한 실체 있다고 가정 해 봅시다

엔티티 클래스 : 직원

@Entity 
@Table(name = "EMPLOYEE") 
@Data 
@EqualsAndHashCode(of = "id", callSuper = false) 
public class Employee { 

    @Id 
    @GeneratedValue 
    private int id; 
    private String name; 

    @ManyToOne 
    @JoinColumn(name="department_id") 
    private Department dept 

} 

엔티티 클래스 : 부서

@Entity 
@Table(name="DEPARTMENT") 
@Data 
@EqualsAndHashCode(of = "id", callSuper = false) 
public class Department { 

    @Id 
    @GeneratedValue 
    private int id; 
    private String name; 

    @ManyToOne 
    @JoinColumn(name="domain_id") 
    private Domain domain 

    @OneToMany(mappedBy="department") 
    private Set<Employee> employees; 

} 

엔티티 클래스 : 도메인

이제
@Entity 
    @Table(name="DOMAIN") 
    @Data 
    @EqualsAndHashCode(of = "id", callSuper = false) 
    public class Domain{ 

     @Id 
     @GeneratedValue 
     private int id; 
     private String name; 

    } 

나는 단지 Departments과 관련된 그 Employees을 볼 수 User (로그인 사용자)를 제한하고 싶습니다 누구의 DomainUser에 대한 액세스 권한이 있습니다. DAO 클래스에서 쿼리를 변경하거나 최소한의 코드 변경으로이 작업을 수행 할 수있는 방법이 있습니까? 고맙습니다.

답변

0

어떤 렐름을 사용하고 있습니까? JdbcRealm을 사용하는 경우 userRolesQuery을 원하는 검색어로 설정할 수 있습니다.

관련 문제