|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--com.ibm.itim.apps.provisioning.PasswordManager
Provides aggregate password management capabilities. These capabilities include the change, validation, and generation of passwords.
Constructor Summary | |
---|---|
PasswordManager(PlatformContext platform,
javax.security.auth.Subject subject)
Constructs the manager with a platform context and a subject. |
Method Summary | |
---|---|
BulkRequest |
changePassword(java.util.Collection accounts,
java.util.Date scheduledTime)
Changes the password of the specified accounts with a system generated password. |
BulkRequest |
changePassword(java.util.Collection accounts,
java.lang.String password,
java.util.Date scheduledTime,
boolean notifyByMail)
Changes the password of the specified accounts with the given password. |
java.lang.String |
generatePassword(java.util.Collection accounts)
Generates a password that can be used to synchronize the passwords of the specified active accounts. |
java.lang.String |
generatePasswordForRestore(java.util.Collection accounts)
Generates a password that can be used to synchronize the passwords of the specified accounts. |
java.util.Collection |
getPasswordAccounts(PersonMO personMO)
Returns the password protected accounts the subject owns. |
PasswordRulesInfo |
getRules(java.util.Collection accounts)
Returns the combined password rules for the given accounts. |
boolean |
isPasswordValid(java.util.Collection accounts,
java.lang.String password)
Determines whether the specified password is valid for all of the given accounts. |
Request |
synchPasswords(PersonMO personMO,
java.util.Date scheduledTime)
Synchronizes all of the given identity's account passwords to a system generated password. |
Request |
synchPasswords(PersonMO personMO,
java.lang.String password,
java.util.Date scheduledTime)
Synchronizes all of the given identity's account passwords to the given password. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public PasswordManager(PlatformContext platform, javax.security.auth.Subject subject)
platform
- PlatformContext holding platform connection information.subject
- Subject representing the authenticated caller.Method Detail |
public java.util.Collection getPasswordAccounts(PersonMO personMO) throws java.rmi.RemoteException, ApplicationException
personMO
- PersonMO whose accounts are being retrieved.
AccountMO representing accounts that are owned by the subject and are
protected by passwords. If ServiceMO.isPasswordRequired()
returns
true, then it is password protected account.
- Throws:
java.rmi.RemoteException
- Thrown if unable to communicate with platform.
ApplicationException
- Thrown if unable to obtain the
accounts. This may possibly
be caused by the subject being removed
by another client previous to this call.
public BulkRequest changePassword(java.util.Collection accounts, java.lang.String password, java.util.Date scheduledTime, boolean notifyByMail) throws java.rmi.RemoteException, PasswordRuleException, InvalidPasswordException, ApplicationException
ServiceMO.isPasswordRequired()
.
accounts
- Collection of AccountMO that will have their
passwords changed.password
- New password of accounts.scheduledTime
- The scheduled starting time of the process.
If null, the process will start immediately.
In case this method is invoked remotely, passing this parameter as the current
data/time of the client machine is not a safe technique to use, since the
date/time of the client machine may not be the same as the date/time of the
ITIM server machine.notifyByMail
- boolean to send password notification by email
- Returns:
- BulkRequest object representing the operation's status.
- Throws:
java.rmi.RemoteException
- Thrown if unable to communicate with platform.
PasswordRuleException
- Thrown if the rules defined in the
password policies for each of the
services hosting the accounts could
not be merged. They are mutually
exclusive.
InvalidPasswordException
- Thrown if password does not pass a
password policy check.
ApplicationException
- Thrown if unable to submit the request.
This may possibly be caused by an
account being removed by another client
previous to this call.
public BulkRequest changePassword(java.util.Collection accounts, java.util.Date scheduledTime) throws java.rmi.RemoteException, AuthorizationException, PasswordRuleException, ApplicationException
ServiceMO.isPasswordRequired()
.
accounts
- Collection of AccountMO that will have their
passwords changed.scheduledTime
- The scheduled starting time of the process.
If null, the process will start immediately.
In case this method is invoked remotely, passing this parameter as the current
data/time of the client machine is not a safe technique to use, since the
date/time of the client machine may not be the same as the date/time of the
ITIM server machine.
- Returns:
- BulkRequest object representing the operation's status.
- Throws:
java.rmi.RemoteException
- Thrown if unable to communicate with platform.
AuthorizationException
- Thrown if client is unauthorized to
change the password of any of the
accounts.
PasswordRuleException
- Thrown if the rules defined in the
password policies for each of the
services hosting the accounts could
not be merged. They are mutually
exclusive.
ApplicationException
- Thrown if unable to submit the request.
This may possibly be caused by an
account being removed by another client
previous to this call.
public java.lang.String generatePassword(java.util.Collection accounts) throws java.rmi.RemoteException, AuthorizationException, PasswordRuleException, ApplicationException
accounts
- Collection of AccountMO that the password should be
compliant with.
- Returns:
- Generated password.
- Throws:
java.rmi.RemoteException
- Thrown if unable to communicate with platform.
AuthorizationException
- Thrown if client is unauthorized to
read or change the password of any of
the accounts.
PasswordRuleException
- Thrown if the rules defined in the
password policies for each of the
services hosting the accounts could
not be merged. They are mutually
exclusive.
ApplicationException
- Thrown if the password could not be
generated. This may possibly be caused
by an account being removed by another
client previous to this call.
public java.lang.String generatePasswordForRestore(java.util.Collection accounts) throws java.rmi.RemoteException, AuthorizationException, PasswordRuleException, ApplicationException
accounts
- Collection of AccountMO that the password
should be compliant with.
- Returns:
- Generated password.
- Throws:
java.rmi.RemoteException
- Thrown if there is a communication failure.
AuthorizationException
- Thrown if client is unauthorized to
change the password of any of the accounts
PasswordRuleException
- Thrown if the rules defined in the password
policies for each of the services hosting
the accounts could not be merged. They are
mutually exclusive.
ApplicationException
- Thrown if the password could not be
generated. This may possibly be caused by an
account being removed by another client
previous to this call.
public PasswordRulesInfo getRules(java.util.Collection accounts) throws java.rmi.RemoteException, AuthorizationException, PasswordRuleException, ApplicationException
accounts
- Collection of AccountMO to take into consideration
when identifying a common set of rules.
- Returns:
- PasswordRulesInfo.
- Throws:
java.rmi.RemoteException
- Thrown if unable to communicate with platform.
AuthorizationException
- Thrown if client is unauthorized to
view any of the password policies
that govern any of the accounts.
PasswordRuleException
- Thrown if the rules defined in the
password policies for each of the
services hosting the accounts could
not be merged. They are mutually
exclusive.
ApplicationException
- Thrown if the combined rules could not
be determined. This may possibly be
caused by an account being removed by
another client previous to this call.
public boolean isPasswordValid(java.util.Collection accounts, java.lang.String password) throws java.rmi.RemoteException, AuthorizationException, ApplicationException, PasswordRuleException, InvalidPasswordException
accounts
- Collection of AccountMO that the password must be
valid for.password
- The password in question.
- Returns:
- Validity of the password.
true if password is valid
false otherwise.
- Throws:
java.rmi.RemoteException
- Thrown if unable to communicate with platform.
AuthorizationException
- Thrown if client is unauthorized to
read or change the password of any of
the accounts.
PasswordRuleException
- Thrown if the rules defined in the
password policies for each of the
services hosting the accounts could
not be merged. They are mutually
exclusive.
InvalidPasswordException
- Thrown if password does not pass a
password policy check.
ApplicationException
- Thrown if the password could not be
validated. This may possibly be
caused by an account being removed by
another client previous to this call.
public Request synchPasswords(PersonMO personMO, java.lang.String password, java.util.Date scheduledTime) throws java.rmi.RemoteException, AuthorizationException, PasswordRuleException, InvalidPasswordException, ApplicationException
personMO
- PersonMO representing the identity (person) whose
passwords will be synchronized.password
- New password of accounts.scheduledTime
- The scheduled starting time of the process.
If null, the process will start immediately.
In case this method is invoked remotely, passing this parameter as the current
data/time of the client machine is not a safe technique to use, since the
date/time of the client machine may not be the same as the date/time of the
ITIM server machine.
java.rmi.RemoteException
- Thrown if unable to communicate with platform.
AuthorizationException
- Thrown if client is unauthorized to
read or change the password of any of
the accounts.
PasswordRuleException
- Thrown if the rules defined in the
password policies for each of the
services hosting the accounts could
not be merged. They are mutually
exclusive.
InvalidPasswordException
- Thrown if password does not pass a
password policy check.
ApplicationException
- Thrown if unable to submit the request.
This may possibly be caused by an
account being removed by another client
previous to this call.public Request synchPasswords(PersonMO personMO, java.util.Date scheduledTime) throws java.rmi.RemoteException, AuthorizationException, PasswordRuleException, ApplicationException
personMO
- PersonMO representing the identity (person) whose
passwords will be synchronized.scheduledTime
- The scheduled starting time of the process.
If null, the process will start immediately.
In case this method is invoked remotely, passing this parameter as the current
data/time of the client machine is not a safe technique to use, since the
date/time of the client machine may not be the same as the date/time of the
ITIM server machine.
java.rmi.RemoteException
- Thrown if unable to communicate with platform.
AuthorizationException
- Thrown if client is unauthorized to
read or change the password of any of
the accounts.
PasswordRuleException
- Thrown if the rules defined in the
password policies for each of the
services hosting the accounts could
not be merged. They are mutually
exclusive.
ApplicationException
- Thrown if unable to submit the request.
This may possibly be caused by an
account being removed by another client
previous to this call.
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |