Package com.easydesk.security.acl
Interface EasyDeskAccessControlList<T extends EasyDeskAccessControlList<T>>
- Type Parameters:
T- 구현 type
- All Superinterfaces:
AccessControlList,Serializable
- All Known Implementing Classes:
EasyDeskAccessControlListImpl
public interface EasyDeskAccessControlList<T extends EasyDeskAccessControlList<T>>
extends AccessControlList
User-Group-Role-Permission 구조를 기반으로 하는 AccessControlList.
사용자는 group 별로 여러 role 을 가지며, role 에 부여된 permission 으로 권한을 판단한다.
- Version:
- $Id$
- Author:
- Youngho Cho
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic enumhasPermission 판단 전략(strategy) SIMPLE : 하나의 group 안에서 role 과 permission 을 1:1 로 판단 NORMAL : role/group 계층(cascade)을 따라 판단 EXTEND : Permission + Group + Resource 복합 계층 -
Method Summary
Modifier and TypeMethodDescription사용자가 속한 group 별 role 목록을 구한다.사용자가 속한 group 목록을 구한다.주어진 group 에서 사용자가 가진 role 목록을 구한다.booleanhasPermission(Role role, Group group, Permission... permissions) 주어진 group 의 role 에 permission 들이 모두 부여되어 있는지 확인한다.boolean주어진 group 에서 사용자가 role 을 가지고 있는지 확인한다.
-
Method Details
-
getGroupRoleMap
사용자가 속한 group 별 role 목록을 구한다.- Type Parameters:
R- Role type- Returns:
- { group, roleSet } map
-
getGroups
사용자가 속한 group 목록을 구한다.- Returns:
- groupSet which user belongs to
-
getRoles
주어진 group 에서 사용자가 가진 role 목록을 구한다.- Type Parameters:
R- Role type- Parameters:
group- 대상 group- Returns:
- all roles which this user have in a give group
-
hasRole
주어진 group 에서 사용자가 role 을 가지고 있는지 확인한다.- Parameters:
role- 확인할 rolegroup- 대상 group- Returns:
- role 을 가지고 있으면
true
-
hasPermission
주어진 group 의 role 에 permission 들이 모두 부여되어 있는지 확인한다.- Parameters:
role- 확인할 rolegroup- 대상 grouppermissions- 확인할 permission 들- Returns:
- permission 을 모두 가지고 있으면
true
-