Moodle PHP Documentation 4.5
Moodle 4.5dev (Build: 20240606) (d3ae1391abe)
|
Public Member Functions | |
check_combination (array $combination) | |
Checks whether the factor combination is valid based on factor behaviour. | |
create_event_after_factor_setup (object $user) | |
Creates an event when user successfully setup a factor. | |
delete_factor_for_user (stdClass $user) | |
Deletes all instances of factor for a user. | |
generate_qrcode (string $secret) | |
Generates HTML sting with QR code for given secret key. | |
generate_secret_code () | |
Generates cryptographically secure pseudo-random 16-digit secret code. | |
generate_totp_uri (string $secret) | |
Generates TOTP URI for given secret key. | |
get_active_user_factors (stdClass $user) | |
Returns an array of active user factor records. | |
get_all_user_factors ($user) | |
TOTP Factor implementation. | |
get_all_user_factors (stdClass $user) | |
Returns an array of all user factors of given type (both active and revoked). | |
get_display_name () | |
Returns factor name from language string. | |
get_icon () | |
Get the icon associated with this factor. | |
get_info () | |
Returns factor help from language string. | |
get_label (int $factorid) | |
Function to retrieve the label for a factorid. | |
get_lastverified (int $factorid) | |
Gets lastverified timestamp. | |
get_login_desc () | |
Get the login description associated with this factor. | |
get_manage_info (int $factorid) | |
Returns factor help from language string when there is factor management available. | |
get_manage_string () | |
Gets the string for manage button on preferences page. | |
get_no_redirect_urls () | |
Function to get urls that should not be redirected from. | |
get_remaining_attempts () | |
Return the number of remaining attempts at this factor. | |
get_setup_string () | |
TOTP Factor implementation. | |
get_state () | |
TOTP state. | |
get_summary_condition () | |
Returns condition for passing factor. | |
get_weight () | |
Returns configured factor weight. | |
global_definition (\MoodleQuickForm $mform) | |
Hook point for global auth form action hooks. | |
global_definition_after_data (\MoodleQuickForm $mform) | |
Hook point for global auth form action hooks. | |
global_submit (object $data) | |
Hook point for global auth form action hooks. | |
global_validation (array $data, array $files) | |
Hook point for global auth form action hooks. | |
has_input () | |
Returns true if a factor requires input from the user to verify. | |
has_replace () | |
TOTP Factor implementation. | |
has_revoke () | |
TOTP Factor implementation. | |
has_setup () | |
TOTP Factor implementation. | |
increment_lock_counter () | |
Increments the lock counter for a factor. | |
is_enabled () | |
Returns true if factor is enabled, otherwise false. | |
is_lockable () | |
Returns true if a factor is able to be locked if it fails. | |
load_locked_state () | |
This loads the locked state from the DB Base class implementation. | |
login_form_definition (\MoodleQuickForm $mform) | |
TOTP Factor implementation. | |
login_form_definition_after_data (\MoodleQuickForm $mform) | |
Defines login form definition page after form data has been set. | |
login_form_validation (array $data) | |
TOTP Factor implementation. | |
possible_states (stdClass $user) | |
TOTP Factor implementation. | |
post_pass_state () | |
TOTP Factor implementation. | |
process_cancel_action () | |
Process a cancel input from a user. | |
replace_user_factor (stdClass $data, int $id) | |
TOTP Factor implementation with replacement of existing factor. | |
revoke_user_factor (?int $factorid=null) | |
Marks factor record as revoked. | |
set_state (string $state) | |
Sets the state of the factor into the session. | |
setup_factor_form_definition (\MoodleQuickForm $mform) | |
TOTP Factor implementation. | |
setup_factor_form_definition_after_data (\MoodleQuickForm $mform) | |
TOTP Factor implementation. | |
setup_factor_form_is_cancelled (int $factorid) | |
Setups in given factor when the form is cancelled. | |
setup_factor_form_submit_button_string () | |
Setup submit button string in given factor. | |
setup_factor_form_validation (array $data) | |
TOTP Factor implementation. | |
setup_user_factor (stdClass $data) | |
TOTP Factor implementation. | |
show_setup_buttons () | |
TOTP Factor implementation. | |
update_lastverified (?int $factorid=null) | |
When validation code is correct - update lastverified field for given factor. | |
validate_code (string $code, int $window, TOTP $totp, stdClass $factor) | |
Checks the code for reuse, clock skew, and validity. | |
Protected Attributes | |
string | $icon = 'fa-mobile-screen' |
Factor icon. | |
tool_mfa local secret_manager | $secretmanager |
Secret manager. | |
|
inherited |
Checks whether the factor combination is valid based on factor behaviour.
E.g. a combination with nosetup and another factor is not valid, as you cannot pass nosetup with another factor.
array | $combination | array of factors that make up the combination |
bool |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_grace\factor, and factor_nosetup\factor.
|
inherited |
Creates an event when user successfully setup a factor.
object | $user |
void |
|
inherited |
Deletes all instances of factor for a user.
stdClass | $user | the user to delete for. |
void |
Implements tool_mfa\local\factor\object_factor.
factor_totp\factor::generate_qrcode | ( | string | $secret | ) |
Generates HTML sting with QR code for given secret key.
string | $secret |
string |
factor_totp\factor::generate_secret_code | ( | ) |
Generates cryptographically secure pseudo-random 16-digit secret code.
string |
factor_totp\factor::generate_totp_uri | ( | string | $secret | ) |
Generates TOTP URI for given secret key.
Uses site name, hostname and user name to make GA account look like: "Sitename hostname (username)".
string | $secret |
string |
|
inherited |
Returns an array of active user factor records.
Filters get_all_user_factors() output.
stdClass | $user | object to check against. |
array |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_grace\factor.
factor_totp\factor::get_all_user_factors | ( | $user | ) |
TOTP Factor implementation.
stdClass | $user | the user to check against. |
array |
|
inherited |
Returns an array of all user factors of given type (both active and revoked).
Dummy implementation. Should be overridden in child class.
stdClass | $user | the user to check against. |
array |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_admin\factor, factor_auth\factor, factor_capability\factor, factor_cohort\factor, factor_email\factor, factor_grace\factor, factor_iprange\factor, factor_nosetup\factor, factor_role\factor, factor_sms\factor, factor_token\factor, and factor_webauthn\factor.
|
inherited |
Returns factor name from language string.
Base class implementation.
string |
coding_exception |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in tool_mfa\local\factor\fallback.
|
inherited |
Get the icon associated with this factor.
string | the icon name. |
|
inherited |
Returns factor help from language string.
Base class implementation.
string |
coding_exception |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in tool_mfa\local\factor\fallback.
|
inherited |
Function to retrieve the label for a factorid.
int | $factorid |
string|dml_exception |
Implements tool_mfa\local\factor\object_factor.
|
inherited |
Gets lastverified timestamp.
int | $factorid |
int|bool | the lastverified timestamp, or false if not found. |
Implements tool_mfa\local\factor\object_factor.
|
inherited |
Get the login description associated with this factor.
Override for factors that have a user input.
string | The login option. |
Reimplemented in factor_email\factor, and factor_sms\factor.
|
inherited |
Returns factor help from language string when there is factor management available.
Base class implementation.
int | $factorid | The factor we want manage info for. |
string |
coding_exception |
factor_totp\factor::get_manage_string | ( | ) |
Gets the string for manage button on preferences page.
string |
Reimplemented from tool_mfa\local\factor\object_factor_base.
|
inherited |
Function to get urls that should not be redirected from.
array |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_email\factor, and factor_grace\factor.
|
inherited |
Return the number of remaining attempts at this factor.
int | the number of attempts at this factor remaining. |
factor_totp\factor::get_setup_string | ( | ) |
TOTP Factor implementation.
Gets the string for setup button on preferences page.
string |
Reimplemented from tool_mfa\local\factor\object_factor_base.
factor_totp\factor::get_state | ( | ) |
TOTP state.
Returns the state of the factor from session information.Implementation for factors that require input. Should be overridden in child classes with no input.
mixed |
Reimplemented from tool_mfa\local\factor\object_factor_base.
|
inherited |
Returns condition for passing factor.
Implementation for basic conditions. Override for complex conditions such as auth type.
string |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_auth\factor, factor_cohort\factor, and factor_role\factor.
|
inherited |
Returns configured factor weight.
Base class implementation.
int |
dml_exception |
Implements tool_mfa\local\factor\object_factor.
|
inherited |
Hook point for global auth form action hooks.
MoodleQuickForm | $mform | Form to inject global elements into. |
void |
Implements tool_mfa\local\factor\object_factor.
|
inherited |
Hook point for global auth form action hooks.
MoodleQuickForm | $mform | Form to inject global elements into. |
void |
Implements tool_mfa\local\factor\object_factor.
|
inherited |
Hook point for global auth form action hooks.
object | $data | Data from the form. |
void |
Implements tool_mfa\local\factor\object_factor.
|
inherited |
Hook point for global auth form action hooks.
array | $data | Data from the form. |
array | $files | Files form the form. |
array | of errors from validation. |
Implements tool_mfa\local\factor\object_factor.
|
inherited |
Returns true if a factor requires input from the user to verify.
Override in child class if necessary
bool |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_admin\factor, factor_auth\factor, factor_capability\factor, factor_cohort\factor, factor_email\factor, factor_grace\factor, factor_iprange\factor, factor_nosetup\factor, factor_role\factor, factor_sms\factor, factor_token\factor, and factor_webauthn\factor.
factor_totp\factor::has_replace | ( | ) |
TOTP Factor implementation.
Reimplemented from tool_mfa\local\factor\object_factor_base.
factor_totp\factor::has_revoke | ( | ) |
TOTP Factor implementation.
Returns true if factor class has factor records that might be revoked.It means that user can revoke factor record from their profile.Override in child class if necessary.
bool |
Reimplemented from tool_mfa\local\factor\object_factor_base.
factor_totp\factor::has_setup | ( | ) |
TOTP Factor implementation.
Returns true if factor needs to be setup by user and has setup_form.Override in child class if necessary.
bool |
Reimplemented from tool_mfa\local\factor\object_factor_base.
|
inherited |
Increments the lock counter for a factor.
void |
|
inherited |
Returns true if factor is enabled, otherwise false.
Base class implementation.
bool |
dml_exception |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_sms\factor.
|
inherited |
Returns true if a factor is able to be locked if it fails.
Generally only input factors are lockable. Override in child class if necessary
bool |
|
inherited |
factor_totp\factor::login_form_definition | ( | \MoodleQuickForm | $mform | ) |
TOTP Factor implementation.
MoodleQuickForm | $mform |
MoodleQuickForm\$mform |
Reimplemented from tool_mfa\local\factor\object_factor_base.
|
inherited |
Defines login form definition page after form data has been set.
Dummy implementation. Should be overridden in child class.
MoodleQuickForm | $mform |
MoodleQuickForm\$mform |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_email\factor, and factor_sms\factor.
factor_totp\factor::login_form_validation | ( | array | $data | ) |
TOTP Factor implementation.
array | $data |
array |
Reimplemented from tool_mfa\local\factor\object_factor_base.
factor_totp\factor::possible_states | ( | stdClass | $user | ) |
TOTP Factor implementation.
TOTP cannot return fail state.
stdClass | $user |
Reimplemented from tool_mfa\local\factor\object_factor_base.
factor_totp\factor::post_pass_state | ( | ) |
TOTP Factor implementation.
Empty override of parent.
Function for factor actions in the pass state.Override in child class if necessary.
void |
Reimplemented from tool_mfa\local\factor\object_factor_base.
|
inherited |
Process a cancel input from a user.
void |
Implements tool_mfa\local\factor\object_factor.
factor_totp\factor::replace_user_factor | ( | stdClass | $data, |
int | $id ) |
TOTP Factor implementation with replacement of existing factor.
stdClass | $data | The new factor data. |
int | $id | The id of the factor to replace. |
stdClass|null | the factor record, or null. |
Reimplemented from tool_mfa\local\factor\object_factor_base.
|
inherited |
Marks factor record as revoked.
If factorid is not provided, revoke all instances of factor.
int | null | $factorid |
bool |
coding_exception | |
dml_exception |
Implements tool_mfa\local\factor\object_factor.
|
inherited |
Sets the state of the factor into the session.
Implementation for factors that require input. Should be overridden in child classes with no input.
string | $state | the state constant to set. |
bool |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_auth\factor, factor_capability\factor, factor_cohort\factor, factor_grace\factor, factor_iprange\factor, factor_nosetup\factor, factor_role\factor, and tool_mfa\local\factor\fallback.
factor_totp\factor::setup_factor_form_definition | ( | \MoodleQuickForm | $mform | ) |
TOTP Factor implementation.
MoodleQuickForm | $mform |
MoodleQuickForm\$mform |
Reimplemented from tool_mfa\local\factor\object_factor_base.
factor_totp\factor::setup_factor_form_definition_after_data | ( | \MoodleQuickForm | $mform | ) |
TOTP Factor implementation.
MoodleQuickForm | $mform |
MoodleQuickForm\$mform |
Reimplemented from tool_mfa\local\factor\object_factor_base.
|
inherited |
Setups in given factor when the form is cancelled.
Dummy implementation. Should be overridden in child class.
int | $factorid |
void |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_sms\factor.
|
inherited |
Setup submit button string in given factor.
Dummy implementation. Should be overridden in child class.
string|null |
Implements tool_mfa\local\factor\object_factor.
Reimplemented in factor_sms\factor.
factor_totp\factor::setup_factor_form_validation | ( | array | $data | ) |
TOTP Factor implementation.
array | $data |
array |
Reimplemented from tool_mfa\local\factor\object_factor_base.
factor_totp\factor::setup_user_factor | ( | stdClass | $data | ) |
TOTP Factor implementation.
stdClass | $data |
stdClass|null | the factor record, or null. |
Reimplemented from tool_mfa\local\factor\object_factor_base.
factor_totp\factor::show_setup_buttons | ( | ) |
TOTP Factor implementation.
If has_setup returns true, decides if the setup buttons should be shown on the preferences page.
bool |
Reimplemented from tool_mfa\local\factor\object_factor_base.
|
inherited |
When validation code is correct - update lastverified field for given factor.
If factor id is not provided, update all factor entries for user.
int | null | $factorid |
bool|dml_exception |
dml_exception |
Implements tool_mfa\local\factor\object_factor.
factor_totp\factor::validate_code | ( | string | $code, |
int | $window, | ||
TOTP | $totp, | ||
stdClass | $factor ) |
Checks the code for reuse, clock skew, and validity.
string | $code | the code to check. |
int | $window | the window to check validity for. |
TOTP | $totp | the totp object to check against. |
stdClass | $factor | the factor with information required. |
string | constant with verification state. |