org.kuali.rice.kim.service
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)
           
 GroupInfo createGroup(GroupInfo groupInfo)
           
 void flushAllCaches()
           
 void flushEntityPrincipalCaches()
           
 void flushGroupCaches()
           
 void flushPermissionCaches()
           
 void flushResponsibilityCaches()
           
 AddressTypeInfo getAddressType(String code)
           
 AffiliationTypeInfo getAffiliationType(String code)
           
 String getAuthenticatedPrincipalName(HttpServletRequest request)
           
 List<? extends KimPermissionInfo> getAuthorizedPermissions(String principalId, String namespaceCode, String permissionName, AttributeSet permissionDetails, AttributeSet qualification)
          Returns the matching permission objects for a principal.
 List<? extends KimPermissionInfo> getAuthorizedPermissionsByTemplateName(String principalId, String namespaceCode, String permissionTemplateName, AttributeSet permissionDetails, AttributeSet qualification)
           
 CitizenshipStatusInfo getCitizenshipStatus(String code)
           
 List<String> getDirectGroupMemberPrincipalIds(String groupId)
           
 List<String> getDirectMemberGroupIds(String groupId)
           
 List<String> getDirectParentGroupIds(String groupId)
           
 EmailTypeInfo getEmailType(String code)
           
 EmploymentStatusInfo getEmploymentStatus(String code)
           
 EmploymentTypeInfo getEmploymentType(String code)
           
 KimEntityDefaultInfo getEntityDefaultInfo(String entityId)
           
 KimEntityDefaultInfo getEntityDefaultInfoByPrincipalId(String principalId)
           
 KimEntityDefaultInfo getEntityDefaultInfoByPrincipalName(String principalName)
           
 KimEntityInfo getEntityInfo(String entityId)
           
 KimEntityInfo getEntityInfoByPrincipalId(String principalId)
           
 KimEntityInfo getEntityInfoByPrincipalName(String principalName)
           
 EntityNameTypeInfo getEntityNameType(String code)
           
 EntityTypeInfo getEntityType(String code)
           
 ExternalIdentifierTypeInfo getExternalIdentifierType(String code)
           
 GroupInfo getGroup(String groupId)
           
 GroupInfo getGroupByName(String namespaceCode, String groupName)
           
 List<String> getGroupIdsForPrincipal(String principalId)
           
 List<String> getGroupIdsForPrincipal(String principalId, String namespaceCode)
           
 List<String> getGroupMemberPrincipalIds(String groupId)
           
 List<? extends GroupInfo> getGroupsForPrincipal(String principalId)
           
 List<? extends GroupInfo> getGroupsForPrincipal(String principalId, String namespaceCode)
           
 int getMatchingEntityCount(Map<String,String> searchCriteria)
           
 List<String> getMemberGroupIds(String groupId)
           
 List<String> getParentGroupIds(String groupId)
           
 List<PermissionAssigneeInfo> getPermissionAssignees(String namespaceCode, String permissionName, AttributeSet permissionDetails, AttributeSet qualification)
           
 List<PermissionAssigneeInfo> getPermissionAssigneesForTemplateName(String namespaceCode, String permissionTemplateName, AttributeSet permissionDetails, AttributeSet qualification)
           
 PhoneTypeInfo getPhoneType(String code)
           
 KimPrincipalInfo getPrincipal(String principalId)
           
 KimPrincipalInfo getPrincipalByPrincipalName(String principalName)
           
 KimPrincipalInfo getPrincipalByPrincipalNameAndPassword(String principalName, String password)
           
 List<? extends KimResponsibilityInfo> getResponsibilitiesByName(String namespaceCode, String responsibilityName)
          Return the responsibility object for the given unique combination of namespace, component and responsibility name.
 KimResponsibilityInfo getResponsibility(String responsibilityId)
          Get the responsibility object with the given ID.
 List<ResponsibilityActionInfo> getResponsibilityActions(String namespaceCode, String responsibilityName, AttributeSet qualification, AttributeSet responsibilityDetails)
           
 List<ResponsibilityActionInfo> getResponsibilityActionsByTemplateName(String namespaceCode, String responsibilityTemplateName, AttributeSet qualification, AttributeSet responsibilityDetails)
           
 boolean hasPermission(String principalId, String namespaceCode, String permissionName, AttributeSet permissionDetails)
           
 boolean hasPermissionByTemplateName(String principalId, String namespaceCode, String permissionTemplateName, AttributeSet permissionDetails)
           
 boolean hasResponsibility(String principalId, String namespaceCode, String responsibilityName, AttributeSet qualification, AttributeSet responsibilityDetails)
          Check whether the principal has the given responsibility within the passed qualifier.
 boolean hasResponsibilityByTemplateName(String principalId, String namespaceCode, String responsibilityTemplateName, AttributeSet qualification, AttributeSet responsibilityDetails)
          Check whether the principal has the given responsibility within the passed qualifier.
 boolean isAuthorized(String principalId, String namespaceCode, String permissionName, AttributeSet permissionDetails, AttributeSet qualification)
           
 boolean isAuthorizedByTemplateName(String principalId, String namespaceCode, String permissionTemplateName, AttributeSet permissionDetails, AttributeSet 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, AttributeSet permissionDetails)
          Returns true if there are any assigned permissions with the given template.
 List<? extends KimEntityDefaultInfo> lookupEntityDefaultInfo(Map<String,String> searchCriteria, boolean unbounded)
           
 List<KimEntityInfo> lookupEntityInfo(Map<String,String> searchCriteria, boolean unbounded)
           
 void removeAllGroupMembers(String groupId)
           
 boolean removeGroupFromGroup(String childId, String parentId)
           
 boolean removePrincipalFromGroup(String principalId, String groupId)
           
 GroupInfo updateGroup(String groupId, GroupInfo groupInfo)
           
 

Method Detail

getPrincipal

KimPrincipalInfo getPrincipal(String principalId)

getPrincipalByPrincipalName

KimPrincipalInfo getPrincipalByPrincipalName(String principalName)

getPrincipalByPrincipalNameAndPassword

KimPrincipalInfo getPrincipalByPrincipalNameAndPassword(String principalName,
                                                        String password)

getEntityDefaultInfo

KimEntityDefaultInfo getEntityDefaultInfo(String entityId)

getEntityDefaultInfoByPrincipalId

KimEntityDefaultInfo getEntityDefaultInfoByPrincipalId(String principalId)

getEntityDefaultInfoByPrincipalName

KimEntityDefaultInfo getEntityDefaultInfoByPrincipalName(String principalName)

lookupEntityDefaultInfo

List<? extends KimEntityDefaultInfo> lookupEntityDefaultInfo(Map<String,String> searchCriteria,
                                                             boolean unbounded)

getMatchingEntityCount

int getMatchingEntityCount(Map<String,String> searchCriteria)

getEntityInfo

KimEntityInfo getEntityInfo(String entityId)

getEntityInfoByPrincipalId

KimEntityInfo getEntityInfoByPrincipalId(String principalId)

getEntityInfoByPrincipalName

KimEntityInfo getEntityInfoByPrincipalName(String principalName)

lookupEntityInfo

List<KimEntityInfo> lookupEntityInfo(Map<String,String> searchCriteria,
                                     boolean unbounded)

getAddressType

AddressTypeInfo getAddressType(String code)

getAffiliationType

AffiliationTypeInfo getAffiliationType(String code)

getCitizenshipStatus

CitizenshipStatusInfo getCitizenshipStatus(String code)

getEmailType

EmailTypeInfo getEmailType(String code)

getEmploymentStatus

EmploymentStatusInfo getEmploymentStatus(String code)

getEmploymentType

EmploymentTypeInfo getEmploymentType(String code)

getEntityNameType

EntityNameTypeInfo getEntityNameType(String code)

getEntityType

EntityTypeInfo getEntityType(String code)

getExternalIdentifierType

ExternalIdentifierTypeInfo getExternalIdentifierType(String code)

getPhoneType

PhoneTypeInfo getPhoneType(String code)

getGroup

GroupInfo getGroup(String groupId)

getGroupByName

GroupInfo 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 GroupInfo> getGroupsForPrincipal(String principalId)

getGroupsForPrincipal

List<? extends GroupInfo> 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

GroupInfo createGroup(GroupInfo groupInfo)

removeAllGroupMembers

void removeAllGroupMembers(String groupId)

updateGroup

GroupInfo updateGroup(String groupId,
                      GroupInfo groupInfo)

getAuthenticatedPrincipalName

String getAuthenticatedPrincipalName(HttpServletRequest request)

hasPermission

boolean hasPermission(String principalId,
                      String namespaceCode,
                      String permissionName,
                      AttributeSet permissionDetails)

isAuthorized

boolean isAuthorized(String principalId,
                     String namespaceCode,
                     String permissionName,
                     AttributeSet permissionDetails,
                     AttributeSet qualification)

hasPermissionByTemplateName

boolean hasPermissionByTemplateName(String principalId,
                                    String namespaceCode,
                                    String permissionTemplateName,
                                    AttributeSet permissionDetails)

isAuthorizedByTemplateName

boolean isAuthorizedByTemplateName(String principalId,
                                   String namespaceCode,
                                   String permissionTemplateName,
                                   AttributeSet permissionDetails,
                                   AttributeSet qualification)

getAuthorizedPermissions

List<? extends KimPermissionInfo> getAuthorizedPermissions(String principalId,
                                                           String namespaceCode,
                                                           String permissionName,
                                                           AttributeSet permissionDetails,
                                                           AttributeSet qualification)
Returns the matching permission objects for a principal.


getAuthorizedPermissionsByTemplateName

List<? extends KimPermissionInfo> getAuthorizedPermissionsByTemplateName(String principalId,
                                                                         String namespaceCode,
                                                                         String permissionTemplateName,
                                                                         AttributeSet permissionDetails,
                                                                         AttributeSet qualification)

getPermissionAssignees

List<PermissionAssigneeInfo> getPermissionAssignees(String namespaceCode,
                                                    String permissionName,
                                                    AttributeSet permissionDetails,
                                                    AttributeSet qualification)

getPermissionAssigneesForTemplateName

List<PermissionAssigneeInfo> getPermissionAssigneesForTemplateName(String namespaceCode,
                                                                   String permissionTemplateName,
                                                                   AttributeSet permissionDetails,
                                                                   AttributeSet qualification)

getResponsibility

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


getResponsibilitiesByName

List<? extends KimResponsibilityInfo> getResponsibilitiesByName(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,
                          AttributeSet qualification,
                          AttributeSet responsibilityDetails)
Check whether the principal has the given responsibility within the passed qualifier.


hasResponsibilityByTemplateName

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


getResponsibilityActions

List<ResponsibilityActionInfo> getResponsibilityActions(String namespaceCode,
                                                        String responsibilityName,
                                                        AttributeSet qualification,
                                                        AttributeSet responsibilityDetails)

getResponsibilityActionsByTemplateName

List<ResponsibilityActionInfo> getResponsibilityActionsByTemplateName(String namespaceCode,
                                                                      String responsibilityTemplateName,
                                                                      AttributeSet qualification,
                                                                      AttributeSet responsibilityDetails)

isPermissionDefinedForTemplateName

boolean isPermissionDefinedForTemplateName(String namespaceCode,
                                           String permissionTemplateName,
                                           AttributeSet 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 © 2007-2011 The Kuali Foundation. All Rights Reserved.