public interface IUserAccountFactory extends IConfigurable
NOTE: As this interface can be extended, this interface can be freely used, but must not be implemented.
Modifier and Type | Method and Description |
---|---|
void |
deleteUserAccount(String uniqueId)
Delete this user account from the persistence storage.
|
IUserAccount |
getAuthenticatedUserAccount(Map credentials)
Authenticate the supplied credentials and returns user account object.
|
IUserAccount |
getMutableUserAccount(String uniqueId)
Retrieves an
IUserAccount objects for a unique ID of a user
account. |
IUserAccount |
getUserAccount(Map credentials)
Return
IUserAccount object based on the credentials
supplied. |
IUserAccount |
getUserAccount(String uniqueId)
Retrieves a
IUserAccount object from the UME persistence by
the unique ID of the user account. |
IUserAccount |
getUserAccount(String uniqueId,
AttributeList populateAttributes)
Gets the
IUserAccount object with the given unique ID and
populates the attributes in populateAttributes. |
IUserAccount |
getUserAccount(X509Certificate cert)
Returns UserAccount to whom this certificate belongs. returns null if
this certificate is not mapped to any user.
|
IUserAccount |
getUserAccountByLogonId(String logonid)
Retrieves a
IUserAccount object from the UME persistence by
the logon ID of the user account. |
IUserAccount |
getUserAccountByLogonId(String logonid,
AttributeList populateAttributes)
Retrieves a
IUserAccount object from the UME persistence by
the logon ID of the user account. |
IUserAccount[] |
getUserAccounts(String uniqueIdOfUser)
Returns all user accounts of the given user
Note: This operation will search for the user account only in the
responsible for the user datasource.
|
IUserAccount[] |
getUserAccounts(String uniqueIdOfUser,
AttributeList attributeList)
Returns all user accounts of the given user
Note: This operation will search for the user account only in the
responsible for the user datasource.
|
IUserAccountSearchFilter |
getUserAccountSearchFilter()
Returns an IUserAccountSearchFilter object to be used to specify query
attributes
IUserAccountSearchFilter only contains attributes which will be queried
|
void |
invalidateCacheEntry(String uniqueid)
Removes the user account object which has the specified uniqueid from the
factory's cache.
|
void |
invalidateCacheEntryByLogonId(String logonid)
Removes the user account object which has the specified logonid from the
factory's cache.
|
IUserAccount |
newUserAccount(String logonid)
Creates a new
IUserAccount type object. |
IUserAccount |
newUserAccount(String logonid,
String uniqueIdOfUser)
Creates a new
IUserAccount type object. |
void |
registerListener(UserAccountListener userAccountListener,
int modifier)
This method allows to subscribe to a predefined eventName
UserAccountListener The caller has to provide a receiver object
which implements UserAccountListener |
void |
registerListener(UserAccountListener userAccountListener,
int modifier,
boolean notifyAfterPhysicalCommitCompleted)
This methof allows to subscribe to a predefined eventName
UserAccountListener The caller has to provide a receiver object
which implements UserAccountListener |
ISearchResult |
search(IUserAccountSearchFilter filter)
Search for user accounts in the persistence storage which match the
criteria specified in the given search filter.
|
void |
unregisterListener(UserAccountListener userAccountListener)
This method unsubscribes a receiver from a previously subscribed event.
|
initialize
IUserAccount newUserAccount(String logonid, String uniqueIdOfUser) throws UMException
IUserAccount
type object. After setting the
appropriate data via set-methods, the user account object must be
committed to the persistence storage via IPrincipalMaint.commit()
.logonid
- logon user id
Note: The logon id has to be unique for ALL data stores
uniqueIdOfUser
- - uniqueID of the user that should be assigned to
this accountUserAccountAlreadyExistsException
- if an account with this
logonid
already existsUMException
IUserAccount newUserAccount(String logonid) throws UMException
IUserAccount
type object. After setting the
appropriate data via set-methods, the user account object must be
committed to the persistence storage via
IUserFactory.commitUser(IUserMaint, IUserAccount)
.
Note: This object cannot be commited via IPrincipalMaint.commit()
logonid
- logon user id
Note: The logonid has to be unique for ALL data stores
UserAccountAlreadyExistsException
- if an account with this
logonid
already existsUMException
IUserAccount getUserAccountByLogonId(String logonid) throws UMException
IUserAccount
object from the UME persistence by
the logon ID of the user account.
Note: This operation will search in all UME datasources for the
provided logon ID. It is more time consuming then the method
getUserAccount(String)
.
logonid
- Description of ParameterUMException
- Exception will be thrown if there is an error.IUserAccount getUserAccountByLogonId(String logonid, AttributeList populateAttributes) throws UMException
IUserAccount
object from the UME persistence by
the logon ID of the user account.
Note: This operation will search in all UME datasources for the
provided logon ID. It is more time consuming then the method
getUserAccount(String)
.
logonid
- Description of ParameterpopulateAttributes
- The attributes that should be populatedUMException
- Exception will be thrown if there is an error.IUserAccount getUserAccount(String uniqueId) throws UMException
IUserAccount
object from the UME persistence by
the unique ID of the user account.
Note: This operation will search for the user account only in the responsible for the principal datasource.
uniqueId
- uniqueId of the user account.UMException
- Exception will be thrown if there is an error.IUserAccount getUserAccount(String uniqueId, AttributeList populateAttributes) throws UMException
IUserAccount
object with the given unique ID and
populates the attributes in populateAttributes.
Note: This operation will search for the user account only in the responsible for the principal datasource.
uniqueId
- uniqueId of the user account.populateAttributes
- The attributes that should be populated
Note: in case only attribute
ILoginConstants.LOGON_UID_ALIAS
is specified the existence of the returned IUserAccount object
may not be checked which may lead to following
RuntimeException
PrincipalNotAccessibleException
if other attributes of this IUserAccount object are accessed.
NoSuchUserAccountException
- if no userAccount with the given
unique ID existsUMException
IUserAccount getUserAccount(X509Certificate cert) throws CertificateException, UMException, TicketException
Note: This operation will search in all UME datasources responsible for storing certificates.
cert
- X509Certificate certificateCertificateException
- if there is a problem with the input
certificateUMException
- Exception will be throws if there is an error.TicketException
- if problem occurs during SAP Logon
or Assertion ticket operationsNoSuchUserAccountException
- if no userAccount is mapped to the
certificateIUserAccount getAuthenticatedUserAccount(Map credentials) throws UMException, AuthenticationFailedException, UserLockedException, TicketException, CertificateException
Note: This operation will search in all UME datasources for the provided credentials.
credentials
- Map containing user credential parametersUMException
- Exception will be throws if there is an error.AuthenticationFailedException
- Exception will be throws if
credentials could not be verified. The message of the
exception is the key for the error message.UserLockedException
- Exception will be throws if user is
locked. The message of the exception is the key for the
error message.TicketException
- if problem occurs during SAP Logon
or Assertion ticket operationsCertificateException
- a problem with certificates.IUserAccount getUserAccount(Map credentials) throws UMException, CertificateException
IUserAccount
object based on the credentials
supplied. The returned user account will not be authenticated.
Note: This operation will search in all UME datasources for the provided credentials.
credentials
- user credentialsUMException
- Exception will be throws if there is an error.CertificateException
- if there is a problem with certificates.void deleteUserAccount(String uniqueId) throws UMException
uniqueId
- user accountUMException
- UMException is thrown is delete operation is
failed for some reasonNoSuchUserAccountException
- if the user account does not existISearchResult search(IUserAccountSearchFilter filter) throws UMException
getUserAccountSearchFilter()
. You can
define a search filter using methods of class
IUserAccountSearchFilter
.
Note: This operation can be time consuming, depending on the
filter
that is passed to the method.
filter
- defined to search for user accountsISearchResult
UMException
- Exception will be throws if there is an error.IUserAccount[] getUserAccounts(String uniqueIdOfUser) throws UMException
Note: This operation will search for the user account only in the responsible for the user datasource.
uniqueIdOfUser
- The userUMException
- Exception will be throws if there is an error.IUserAccount[] getUserAccounts(String uniqueIdOfUser, AttributeList attributeList) throws UMException
Note: This operation will search for the user account only in the responsible for the user datasource.
uniqueIdOfUser
- The userattributeList
- The attributes that should be populatedUMException
- Exception will be throws if there is an error.IUserAccount getMutableUserAccount(String uniqueId) throws UMException
IUserAccount
objects for a unique ID of a user
account.uniqueId
- - uniqueId of the user accountNoSuchPrincipalException
- if the unique ID does not existUMException
IUserAccountSearchFilter getUserAccountSearchFilter() throws UMException
IUserAccountSearchFilter only contains attributes which will be queried
UMException
- Exception will be throws if there is an error.FeatureNotAvailableException
- if feature is not implementedvoid registerListener(UserAccountListener userAccountListener, int modifier)
UserAccountListener
The caller has to provide a receiver object
which implements UserAccountListeneruserAccountListener
- object which implements interface
UserAccountListenermodifier
- constant defined in UserAccountListener
void registerListener(UserAccountListener userAccountListener, int modifier, boolean notifyAfterPhysicalCommitCompleted)
UserAccountListener
The caller has to provide a receiver object
which implements UserAccountListeneruserAccountListener
- object which implements interface
UserAccountListenermodifier
- constant defined in UserAccountListener
notifyAfterPhysicalCommitCompleted
- Allows callers when set to
false, to get a notification before the physical transaction
is completed in order to include their actions into the same
physical transaction.void unregisterListener(UserAccountListener userAccountListener)
userAccountListener
- object which implements interface
UserAccountListenervoid invalidateCacheEntryByLogonId(String logonid) throws UMException
Note: Use this method carefully, because calling it too often may cause performance problems
logonid
- the logonid of the user accountUMException
- if a error occursvoid invalidateCacheEntry(String uniqueid) throws UMException
Note: Use this method carefully, because calling it too often may cause performance problems
uniqueid
- the uniqueid of the user accountUMException
- if a error occursAccess Rights |
---|
SC | DC | Public Part | ACH |
---|---|---|---|
[sap.com] CORE-TOOLS
|
[sap.com]
|
default
|
BC-JAS
|
[sap.com] ENGFACADE
|
[sap.com] tc/je/usermanagement/api
|
api
|
BC-JAS-SEC
|
[sap.com] ENGINEAPI
|
[sap.com]
|
-
|
BC-JAS-SEC-UME
|
[sap.com] ENGINEAPI
|
[sap.com]
|
default
|
BC-JAS-SEC-UME
|
Copyright 2018 SAP AG Complete Copyright Notice