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()
           
 CodedAttribute 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)
           
 CodedAttribute getCitizenshipStatus(String code)
           
 List<String> getDirectGroupMemberPrincipalIds(String groupId)
           
 List<String> getDirectMemberGroupIds(String groupId)
           
 List<String> getDirectParentGroupIds(String groupId)
           
 CodedAttribute getEmailType(String code)
           
 CodedAttribute getEmploymentStatus(String code)
           
 CodedAttribute 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)
           
 CodedAttribute getEntityNameType(String code)
           
 CodedAttribute 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)
           
 CodedAttribute 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

CodedAttribute getAddressType(String code)

getAffiliationType

EntityAffiliationType getAffiliationType(String code)

getCitizenshipStatus

CodedAttribute getCitizenshipStatus(String code)

getEmailType

CodedAttribute getEmailType(String code)

getEmploymentStatus

CodedAttribute getEmploymentStatus(String code)

getEmploymentType

CodedAttribute getEmploymentType(String code)

getEntityNameType

CodedAttribute getEntityNameType(String code)

getEntityType

CodedAttribute getEntityType(String code)

getExternalIdentifierType

EntityExternalIdentifierType getExternalIdentifierType(String code)

getPhoneType

CodedAttribute 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 © 2005-2012 The Kuali Foundation. All Rights Reserved.