Skip navigation links


oracle.iam.selfservice.self.selfmgmt.api
Interface AuthenticatedSelfService


public interface AuthenticatedSelfService

The AuthenticatedSelfService API exposes the methods to a logged-in user to manage his profile. It provides functionality to manage profile attributes, change password and manage challenge questions and answers. Apart from basic profile operations, there are proxy related operations to get proxy details and submit requests to assign, remove and update the proxy.


Method Summary
 long addProxyForUser(long proxyUserKey, java.util.Date startDate, java.util.Date endDate)
          Adds/Sets proxy for user after checking the user privilege.
 void changePassword(char[] password)
          Accepts the new password (since old password is expired) and sets it as the current password for the user
 void changePassword(char[] oldPwd, char[] newPwd, char[] confirmPwd)
          Accepts the old and new password for the logged-in user and changes his password if validations pass.
 java.util.HashMap getChallengeValuesForSelf()
          Returns the challenge values for self.
 User getProfileDetails(java.util.Set retAttrs)
          Returns the details of the logged-in user.
 java.lang.String[] getSystemChallengeQuestions()
          Returns the list of all challenge questions available in the system
 java.lang.String[] getUserDefinedChallengeQuestions(java.lang.String userName)
          Gets the String array of user's challenge questions
 java.util.HashMap modifyProfileDetails(java.util.HashMap attributeMap)
          This method modifies the logged-in user's profile attributes.
 void removeProxy(long proxyKey)
           
 void removeProxy(java.lang.String userID, long proxyKey, java.util.Map attrMap, boolean isUserLogin)
          Deprecated. Please use removeProxy(long proxyKey) instead
 void setChallengeValues(java.util.Map quesAnsMap)
          Sets challenge questions and answers for logged-in user.
 void updateProxyForUser(long pxdKey, java.util.Map updateMap)
          Modifies proxy for the user after checking the user privilege.

 

Method Detail

changePassword

void changePassword(char[] oldPwd,
                    char[] newPwd,
                    char[] confirmPwd)
                    throws ValidationFailedException,
                           ChangePasswordException
Accepts the old and new password for the logged-in user and changes his password if validations pass.
Parameters:
oldPwd - the old password of the logged-in user
newPwd - the new password
configmPwd - the new password again for confirmation
Throws:
ValidationFailedException - thrown when the old password is not valid or if the new password and confirm password do not match.
ChangePasswordException - thrown when there is an exception while changing the user's password

getSystemChallengeQuestions

java.lang.String[] getSystemChallengeQuestions()
                                               throws AuthSelfServiceException
Returns the list of all challenge questions available in the system
Returns:
an array of challenge questions defined in the system
Throws:
AuthSelfServiceException - thrown when there's an error while getting the system challenge questions.

setChallengeValues

void setChallengeValues(java.util.Map quesAnsMap)
                        throws ValidationFailedException,
                               SetChallengeValueException
Sets challenge questions and answers for logged-in user. Validations are performed to ensure that same question isn't specified twice.
Parameters:
quesAnsMap - A Map of challenge questions and answers to be set for logged-in user
Throws:
SetChallengeValueException - thrown when there is a failure while setting the challenge questions
ValidationFailedException - is throw if validation fails for the challenge operation

changePassword

void changePassword(char[] password)
                    throws ValidationFailedException,
                           ResetPasswordException
Accepts the new password (since old password is expired) and sets it as the current password for the user
Parameters:
password - The password to set as new password for the user.
Throws:
ResetPasswordException - thrown when there's a failure while resetting the user password
ValidationFailedException - is thrown if the validation fails while setting the new password.

getUserDefinedChallengeQuestions

java.lang.String[] getUserDefinedChallengeQuestions(java.lang.String userName)
                                                    throws UserAccountDisabledException,
                                                           UserAccountInvalidException,
                                                           AuthSelfServiceException
Gets the String array of user's challenge questions
Parameters:
userName - The user login whose challenge questions are to be retrieved
Returns:
an array of user's challenge questions
Throws:
UserAccountDisabledException - thrown if user account is disabled
UserAccountInvalidException - thrown if user account is invalid
AuthSelfServiceException - thrown if there's an error getting the user's challenge questions

modifyProfileDetails

java.util.HashMap modifyProfileDetails(java.util.HashMap attributeMap)
                                       throws ValidationFailedException,
                                              AccessDeniedException,
                                              AuthSelfServiceException
This method modifies the logged-in user's profile attributes. If the user doesn't have authorization to update some of the attributes, then a request is sumbitted to modify those. If approved, these will be updated.
Parameters:
attributeMap - The Map of attribute value pair that are to be modified
Returns:
returnModifyMap A Map contains authorized modified attribute list, the list of attributes that are sent via request and request id, if so:
  • orchAttr - the set of attributes modified
  • requestId - the Id of the request generated for modification
Throws:
ValidationFailedException - thrown if validation for modify operation fails.
AccessDeniedException - thrown if the user doesn't have authorization to update his profile
AuthSelfServiceException - thrown if there is an exception while modifying the profile

getProfileDetails

User getProfileDetails(java.util.Set retAttrs)
                       throws UserLookupException
Returns the details of the logged-in user. The profile attributes returned are as per the authorization policy. That is, only those attributes are returned for which the user has view/read access.
Parameters:
retAttrs - the set of profile attributes whose values are desired. If this is null, then all profile attributes (as per policy) are returned.
Returns:
User The User class is a value object class to hold the GUID, attribute name-value pair and direct reports of user.
Throws:
UserLookupException - thrown when there was an exception while fetching the user attributes

getChallengeValuesForSelf

java.util.HashMap getChallengeValuesForSelf()
                                            throws AuthSelfServiceException
Returns the challenge values for self.
Returns:
a HashMap for the challenge values from the pcq table
Throws:
AuthSelfServiceException

addProxyForUser

long addProxyForUser(long proxyUserKey,
                     java.util.Date startDate,
                     java.util.Date endDate)
                     throws NoSuchUserException,
                            RecursiveProxyException,
                            UserManagerException,
                            AccessDeniedException
Adds/Sets proxy for user after checking the user privilege.
Parameters:
proxyUserKey - key of the user to be proxied.
startDate - start date for proxy.
endDate - end date of the proxy.
Returns:
the proxy id in the table.
Throws:
NoSuchUserException
RecursiveProxyException
UserManagerException
AccessDeniedException

updateProxyForUser

void updateProxyForUser(long pxdKey,
                        java.util.Map updateMap)
                        throws NoSuchUserException,
                               RecursiveProxyException,
                               UserManagerException,
                               AccessDeniedException
Modifies proxy for the user after checking the user privilege.
Parameters:
pxdKey - key of the proxy whose details is to be updated.
attribute - an attribute map of the fields to update:
  • proxyuserkey - the current proxy user
  • proxystartdate - start date when the proxy takes effect
  • proxyenddate - end date when the proxy ends
Throws:
NoSuchUserException
RecursiveProxyException
UserManagerException
AccessDeniedException

removeProxy

@Deprecated
void removeProxy(java.lang.String userID,
                            long proxyKey,
                            java.util.Map attrMap,
                            boolean isUserLogin)
                 throws NoSuchUserException,
                        UserManagerException,
                        AccessDeniedException
Deprecated. Please use removeProxy(long proxyKey) instead
Removes proxy for the user after checking the user privilege.
Parameters:
userID - The id of the user whose proxy is to be removed. The isUserLogin flag will decide what does userID contains.
proxyKey - The key of the proxy to be removed.
attrMap - [Optional] The Map of attributes containing proxy details.
isUserLogin - Set to true if the userID contains user login and false if the userID contains user key.
Throws:
NoSuchUserException
UserManagerException
AccessDeniedException
See Also:
AuthenticatedSelfService.removeProxy(long)

removeProxy

void removeProxy(long proxyKey)
                 throws UserManagerException,
                        AccessDeniedException
Parameters:
proxyKey - The key of the proxy to be removed.
Throws:
UserManagerException
AccessDeniedException

Skip navigation links


Copyright © 2010, Oracle and/or its affiliates. All rights reserved.