LDAP Account Manager

passwordService
in

This interface needs to be implemented by all account modules which manage passwords.

It allows LAM to provide central password changes.

Table of Contents

addPasswordQuickChangeAccountDetails()  : void
Adds account details such as first/last name for the current account.
getPasswordQuickChangeChanges()  : array<string|int, mixed>
Returns a list of LDAP attribute changes to perform.
getPasswordQuickChangeIsPasswordInHistory()  : bool
Returns if the password is not same as an old password from history.
getPasswordQuickChangeOptions()  : array<string|int, PasswordQuickChangeOption>
Returns a list of password quick change options.
getPasswordQuickChangePasswordStrengthAttributes()  : array<string|int, mixed>
Returns additional attribute values to check when password strength is validated.
getPasswordQuickChangePasswordStrengthUserName()  : string|null
Returns the user name if known to be validated for password strength.
managesPasswordAttributes()  : bool
This method specifies if a module manages password attributes. The module alias will then appear as option in the GUI.
passwordChangeRequested()  : array<string|int, mixed>
This function is called whenever the password should be changed. Account modules must change their password attributes only if the modules list contains their module name.
supportsForcePasswordChange()  : bool
Specifies if this module supports to force that a user must change his password on next login.
supportsPasswordQuickChangePage()  : bool
Specifies if the module support password quick change for the current account.

Methods

addPasswordQuickChangeAccountDetails()

Adds account details such as first/last name for the current account.

public addPasswordQuickChangeAccountDetails(htmlResponsiveRow $row) : void
Parameters
$row : htmlResponsiveRow

row where to add content

Return values
void

getPasswordQuickChangeChanges()

Returns a list of LDAP attribute changes to perform.

public getPasswordQuickChangeChanges(string $password) : array<string|int, mixed>
Parameters
$password : string

new password

Tags
throws
LAMException

error getting changes

Return values
array<string|int, mixed>

LDAP attribute values (attr_name => array(attr_value))

getPasswordQuickChangeIsPasswordInHistory()

Returns if the password is not same as an old password from history.

public getPasswordQuickChangeIsPasswordInHistory(string $password) : bool
Parameters
$password : string

new password

Return values
bool

is in history

getPasswordQuickChangePasswordStrengthAttributes()

Returns additional attribute values to check when password strength is validated.

public getPasswordQuickChangePasswordStrengthAttributes() : array<string|int, mixed>
Return values
array<string|int, mixed>

attribute values

getPasswordQuickChangePasswordStrengthUserName()

Returns the user name if known to be validated for password strength.

public getPasswordQuickChangePasswordStrengthUserName() : string|null
Return values
string|null

user name

managesPasswordAttributes()

This method specifies if a module manages password attributes. The module alias will then appear as option in the GUI.

public managesPasswordAttributes() : bool


If the module only wants to get notified about password changes then return false.

Return values
bool

true if this module manages password attributes

passwordChangeRequested()

This function is called whenever the password should be changed. Account modules must change their password attributes only if the modules list contains their module name.

public passwordChangeRequested(string $password, array<string|int, mixed> $modules, bool $forcePasswordChange) : array<string|int, mixed>
Parameters
$password : string

new password

$modules : array<string|int, mixed>

list of modules for which the password should be changed

$forcePasswordChange : bool

force the user to change his password at next login

Return values
array<string|int, mixed>

list of error messages if any as parameter array for StatusMessage e.g. return array(array('ERROR', 'Password change failed.'))

supportsForcePasswordChange()

Specifies if this module supports to force that a user must change his password on next login.

public supportsForcePasswordChange() : bool
Return values
bool

force password change supported

supportsPasswordQuickChangePage()

Specifies if the module support password quick change for the current account.

public supportsPasswordQuickChangePage() : bool
Return values
bool

password quick change page supported

Search results