org.kuali.rice.kim.api.services
Interface IdentityManagementService

All Known Implementing Classes:
IdentityManagementServiceImpl

public interface IdentityManagementService

This is the front end for the KIM module. Clients of KIM should access this service from their applications. If KIM is not running on the same machine (VM) as the application (as would be the case with a standalone Rice server), then this service should be implemented locally within the application and access the core KIM services (Authentication/Authorization/Identity/Group) via the service bus. For efficiency, implementations of this interface should add appropriate caching of the information retrieved from the core services for load and performance reasons. Most of the methods on this interface are straight pass-thrus to methods on the four core services.

Author:
Kuali Rice Team (rice.collab@kuali.org)

Method Summary
 boolean addGroupToGroup(String childId, String parentId)
           
 boolean addPrincipalToGroup(String principalId, String groupId)
           
 Group createGroup(Group group)
           
 EntityQueryResults findEntities(QueryByCriteria queryByCriteria)
           
 EntityDefaultQueryResults findEntityDefaults(QueryByCriteria queryByCriteria)
           
 void flushAllCaches()
           
 void flushEntityPrincipalCaches()
           
 void flushGroupCaches()
           
 void flushPermissionCaches()
           
 void flushResponsibilityCaches()
           
 Type getAddressType(String code)
           
 EntityAffiliationType getAffiliationType(String code)
           
 List<Permission> getAuthorizedPermissions(String principalId, String namespaceCode, String permissionName, Map<String,String> permissionDetails, Map<String,String> qualification)
          Returns the matching permission objects for a principal.
 List<Permission> getAuthorizedPermissionsByTemplateName(String principalId, String namespaceCode, String permissionTemplateName, Map<String,String> permissionDetails, Map<String,String> qualification)
           
 Type getCitizenshipStatus(String code)
           
 List<String> getDirectGroupMemberPrincipalIds(String groupId)
           
 List<String> getDirectMemberGroupIds(String groupId)
           
 List<String> getDirectParentGroupIds(String groupId)
           
 Type getEmailType(String code)
           
 Type getEmploymentStatus(String code)
           
 Type getEmploymentType(String code)
           
 Entity getEntity(String entityId)
           
 Entity getEntityByPrincipalId(String principalId)
           
 Entity getEntityByPrincipalName(String principalName)
           
 EntityDefault getEntityDefaultInfo(String entityId)
           
 EntityDefault getEntityDefaultInfoByPrincipalId(String principalId)
           
 EntityDefault getEntityDefaultInfoByPrincipalName(String principalName)
           
 Type getEntityNameType(String code)
           
 Type getEntityType(String code)
           
 EntityExternalIdentifierType getExternalIdentifierType(String code)
           
 Group getGroup(String groupId)
           
 Group getGroupByName(String namespaceCode, String groupName)
           
 List<String> getGroupIdsForPrincipal(String principalId)
           
 List<String> getGroupIdsForPrincipal(String principalId, String namespaceCode)
           
 List<String> getGroupMemberPrincipalIds(String groupId)
           
 List<? extends Group> getGroupsForPrincipal(String principalId)
           
 List<? extends Group> getGroupsForPrincipal(String principalId, String namespaceCode)
           
 List<String> getMemberGroupIds(String groupId)
           
 List<String> getParentGroupIds(String groupId)
           
 List<Assignee> getPermissionAssignees(String namespaceCode, String permissionName, Map<String,String> permissionDetails, Map<String,String> qualification)
           
 List<Assignee> getPermissionAssigneesForTemplateName(String namespaceCode, String permissionTemplateName, Map<String,String> permissionDetails, Map<String,String> qualification)
           
 Type getPhoneType(String code)
           
 Principal getPrincipal(String principalId)
           
 Principal getPrincipalByPrincipalName(String principalName)
           
 Principal getPrincipalByPrincipalNameAndPassword(String principalName, String password)
           
 Responsibility getResponsibility(String responsibilityId)
          Get the responsibility object with the given ID.
 List<ResponsibilityAction> getResponsibilityActions(String namespaceCode, String responsibilityName, Map<String,String> qualification, Map<String,String> responsibilityDetails)
           
 List<ResponsibilityAction> getResponsibilityActionsByTemplateName(String namespaceCode, String responsibilityTemplateName, Map<String,String> qualification, Map<String,String> responsibilityDetails)
           
 Responsibility getResponsibilityByName(String namespaceCode, String responsibilityName)
          Return the responsibility object for the given unique combination of namespace, component and responsibility name.
 boolean hasPermission(String principalId, String namespaceCode, String permissionName, Map<String,String> permissionDetails)
           
 boolean hasPermissionByTemplateName(String principalId, String namespaceCode, String permissionTemplateName, Map<String,String> permissionDetails)
           
 boolean hasResponsibility(String principalId, String namespaceCode, String responsibilityName, Map<String,String> qualification, Map<String,String> responsibilityDetails)
          Check whether the principal has the given responsibility within the passed qualifier.
 boolean hasResponsibilityByTemplateName(String principalId, String namespaceCode, String responsibilityTemplateName, Map<String,String> qualification, Map<String,String> responsibilityDetails)
          Check whether the principal has the given responsibility within the passed qualifier.
 boolean isAuthorized(String principalId, String namespaceCode, String permissionName, Map<String,String> permissionDetails, Map<String,String> qualification)
           
 boolean isAuthorizedByTemplateName(String principalId, String namespaceCode, String permissionTemplateName, Map<String,String> permissionDetails, Map<String,String> qualification)
           
 boolean isGroupMemberOfGroup(String potentialMemberGroupId, String potentialParentId)
           
 boolean isMemberOfGroup(String principalId, String groupId)
           
 boolean isMemberOfGroup(String principalId, String namespaceCode, String groupName)
           
 boolean isPermissionDefinedForTemplateName(String namespaceCode, String permissionTemplateName, Map<String,String> permissionDetails)
          Returns true if there are any assigned permissions with the given template.
 void removeAllMembers(String groupId)
           
 boolean removeGroupFromGroup(String childId, String parentId)
           
 boolean removePrincipalFromGroup(String principalId, String groupId)
           
 Group updateGroup(String groupId, Group group)
           
 

Method Detail

getPrincipal

Principal getPrincipal(String principalId)

getPrincipalByPrincipalName

Principal getPrincipalByPrincipalName(String principalName)

getPrincipalByPrincipalNameAndPassword

Principal getPrincipalByPrincipalNameAndPassword(String principalName,
                                                 String password)

getEntityDefaultInfo

EntityDefault getEntityDefaultInfo(String entityId)

getEntityDefaultInfoByPrincipalId

EntityDefault getEntityDefaultInfoByPrincipalId(String principalId)

getEntityDefaultInfoByPrincipalName

EntityDefault getEntityDefaultInfoByPrincipalName(String principalName)

findEntityDefaults

EntityDefaultQueryResults findEntityDefaults(QueryByCriteria queryByCriteria)

getEntity

Entity getEntity(String entityId)

getEntityByPrincipalId

Entity getEntityByPrincipalId(String principalId)

getEntityByPrincipalName

Entity getEntityByPrincipalName(String principalName)

findEntities

EntityQueryResults findEntities(QueryByCriteria queryByCriteria)

getAddressType

Type getAddressType(String code)

getAffiliationType

EntityAffiliationType getAffiliationType(String code)

getCitizenshipStatus

Type getCitizenshipStatus(String code)

getEmailType

Type getEmailType(String code)

getEmploymentStatus

Type getEmploymentStatus(String code)

getEmploymentType

Type getEmploymentType(String code)

getEntityNameType

Type getEntityNameType(String code)

getEntityType

Type getEntityType(String code)

getExternalIdentifierType

EntityExternalIdentifierType getExternalIdentifierType(String code)

getPhoneType

Type getPhoneType(String code)

getGroup

Group getGroup(String groupId)

getGroupByName

Group getGroupByName(String namespaceCode,
                     String groupName)

getParentGroupIds

List<String> getParentGroupIds(String groupId)

getDirectParentGroupIds

List<String> getDirectParentGroupIds(String groupId)

getGroupIdsForPrincipal

List<String> getGroupIdsForPrincipal(String principalId)

getGroupIdsForPrincipal

List<String> getGroupIdsForPrincipal(String principalId,
                                     String namespaceCode)

getGroupsForPrincipal

List<? extends Group> getGroupsForPrincipal(String principalId)

getGroupsForPrincipal

List<? extends Group> getGroupsForPrincipal(String principalId,
                                            String namespaceCode)

getMemberGroupIds

List<String> getMemberGroupIds(String groupId)

getDirectMemberGroupIds

List<String> getDirectMemberGroupIds(String groupId)

isMemberOfGroup

boolean isMemberOfGroup(String principalId,
                        String groupId)

isMemberOfGroup

boolean isMemberOfGroup(String principalId,
                        String namespaceCode,
                        String groupName)

isGroupMemberOfGroup

boolean isGroupMemberOfGroup(String potentialMemberGroupId,
                             String potentialParentId)

getGroupMemberPrincipalIds

List<String> getGroupMemberPrincipalIds(String groupId)

getDirectGroupMemberPrincipalIds

List<String> getDirectGroupMemberPrincipalIds(String groupId)

addGroupToGroup

boolean addGroupToGroup(String childId,
                        String parentId)

removeGroupFromGroup

boolean removeGroupFromGroup(String childId,
                             String parentId)

addPrincipalToGroup

boolean addPrincipalToGroup(String principalId,
                            String groupId)

removePrincipalFromGroup

boolean removePrincipalFromGroup(String principalId,
                                 String groupId)

createGroup

Group createGroup(Group group)

removeAllMembers

void removeAllMembers(String groupId)

updateGroup

Group updateGroup(String groupId,
                  Group group)

hasPermission

boolean hasPermission(String principalId,
                      String namespaceCode,
                      String permissionName,
                      Map<String,String> permissionDetails)

isAuthorized

boolean isAuthorized(String principalId,
                     String namespaceCode,
                     String permissionName,
                     Map<String,String> permissionDetails,
                     Map<String,String> qualification)

hasPermissionByTemplateName

boolean hasPermissionByTemplateName(String principalId,
                                    String namespaceCode,
                                    String permissionTemplateName,
                                    Map<String,String> permissionDetails)

isAuthorizedByTemplateName

boolean isAuthorizedByTemplateName(String principalId,
                                   String namespaceCode,
                                   String permissionTemplateName,
                                   Map<String,String> permissionDetails,
                                   Map<String,String> qualification)

getAuthorizedPermissions

List<Permission> getAuthorizedPermissions(String principalId,
                                          String namespaceCode,
                                          String permissionName,
                                          Map<String,String> permissionDetails,
                                          Map<String,String> qualification)
Returns the matching permission objects for a principal.


getAuthorizedPermissionsByTemplateName

List<Permission> getAuthorizedPermissionsByTemplateName(String principalId,
                                                        String namespaceCode,
                                                        String permissionTemplateName,
                                                        Map<String,String> permissionDetails,
                                                        Map<String,String> qualification)

getPermissionAssignees

List<Assignee> getPermissionAssignees(String namespaceCode,
                                      String permissionName,
                                      Map<String,String> permissionDetails,
                                      Map<String,String> qualification)

getPermissionAssigneesForTemplateName

List<Assignee> getPermissionAssigneesForTemplateName(String namespaceCode,
                                                     String permissionTemplateName,
                                                     Map<String,String> permissionDetails,
                                                     Map<String,String> qualification)

getResponsibility

Responsibility getResponsibility(String responsibilityId)
Get the responsibility object with the given ID.


getResponsibilityByName

Responsibility getResponsibilityByName(String namespaceCode,
                                       String responsibilityName)
Return the responsibility object for the given unique combination of namespace, component and responsibility name.


hasResponsibility

boolean hasResponsibility(String principalId,
                          String namespaceCode,
                          String responsibilityName,
                          Map<String,String> qualification,
                          Map<String,String> responsibilityDetails)
Check whether the principal has the given responsibility within the passed qualifier.


hasResponsibilityByTemplateName

boolean hasResponsibilityByTemplateName(String principalId,
                                        String namespaceCode,
                                        String responsibilityTemplateName,
                                        Map<String,String> qualification,
                                        Map<String,String> responsibilityDetails)
Check whether the principal has the given responsibility within the passed qualifier.


getResponsibilityActions

List<ResponsibilityAction> getResponsibilityActions(String namespaceCode,
                                                    String responsibilityName,
                                                    Map<String,String> qualification,
                                                    Map<String,String> responsibilityDetails)

getResponsibilityActionsByTemplateName

List<ResponsibilityAction> getResponsibilityActionsByTemplateName(String namespaceCode,
                                                                  String responsibilityTemplateName,
                                                                  Map<String,String> qualification,
                                                                  Map<String,String> responsibilityDetails)

isPermissionDefinedForTemplateName

boolean isPermissionDefinedForTemplateName(String namespaceCode,
                                           String permissionTemplateName,
                                           Map<String,String> permissionDetails)
Returns true if there are any assigned permissions with the given template.


flushAllCaches

void flushAllCaches()

flushEntityPrincipalCaches

void flushEntityPrincipalCaches()

flushGroupCaches

void flushGroupCaches()

flushPermissionCaches

void flushPermissionCaches()

flushResponsibilityCaches

void flushResponsibilityCaches()


Copyright © 2004-2011 The Kuali Foundation. All Rights Reserved.