Package org.compiere.model
Class MMFARegistration
java.lang.Object
org.compiere.model.PO
org.compiere.model.X_MFA_Registration
org.compiere.model.MMFARegistration
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparator<Object>
,I_MFA_Registration
,I_Persistent
,Evaluatee
Multi-factor Authentication Registration
- See Also:
-
Field Summary
Fields inherited from class org.compiere.model.PO
ACCESSLEVEL_ALL, ACCESSLEVEL_CLIENT, ACCESSLEVEL_CLIENTORG, ACCESSLEVEL_ORG, ACCESSLEVEL_SYSTEM, ACCESSLEVEL_SYSTEMCLIENT, ENTITYTYPE_Dictionary, ENTITYTYPE_UserMaintained, I_ZERO, LOCAL_TRX_PREFIX, log, p_ctx, p_info, UUID_NEW_RECORD, XML_ATTRIBUTE_AD_Table_ID, XML_ATTRIBUTE_Record_ID
Fields inherited from interface org.compiere.model.I_MFA_Registration
accessLevel, COLUMNNAME_AD_Client_ID, COLUMNNAME_AD_Org_ID, COLUMNNAME_AD_User_ID, COLUMNNAME_Created, COLUMNNAME_CreatedBy, COLUMNNAME_Expiration, COLUMNNAME_FailedLoginCount, COLUMNNAME_Help, COLUMNNAME_IsActive, COLUMNNAME_IsUserMFAPreferred, COLUMNNAME_IsValid, COLUMNNAME_LastFailure, COLUMNNAME_LastSuccess, COLUMNNAME_MFA_Method_ID, COLUMNNAME_MFA_Registration_ID, COLUMNNAME_MFA_Registration_UU, COLUMNNAME_MFALastSecret, COLUMNNAME_MFASecret, COLUMNNAME_MFAUnregisteredAt, COLUMNNAME_MFAValidatedAt, COLUMNNAME_Name, COLUMNNAME_ParameterValue, COLUMNNAME_Updated, COLUMNNAME_UpdatedBy, Model, Table_ID, Table_Name
-
Constructor Summary
ConstructorDescriptionMMFARegistration
(Properties ctx, int MFA_Registration_ID, String trxName) Read/Create empty MFA RegistrationMMFARegistration
(Properties ctx, String MFA_Registration_UU, String trxName) UUID based ConstructorMMFARegistration
(Properties ctx, ResultSet rs, String trxName) Read MFA Registration from current row in ResultSet -
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
alreadyExistsValid
(MMFAMethod method, String prm) Validate if a method is already registered for this userGenerate a validation code using the registered methodstatic List<MMFARegistration>
Get the valid registrations from this userstatic void
invalidatePreviousPending
(MMFAMethod method, String prm, MMFARegistration reg) Mark previous invalid registration as inactive.void
setIsUserMFAPreferred
(boolean IsUserMFAPreferred) Set record as preferred, and set all the others from this user as not preferredstatic boolean
If the user has valid registration mechanismsvalidateCode
(MMFARegistration reg, String code, boolean setPreferred) Validate the code using the registered methodMethods inherited from class org.compiere.model.X_MFA_Registration
get_AccessLevel, getAD_User, getAD_User_ID, getExpiration, getFailedLoginCount, getHelp, getKeyNamePair, getLastFailure, getLastSuccess, getMFA_Method, getMFA_Method_ID, getMFA_Registration_ID, getMFA_Registration_UU, getMFALastSecret, getMFASecret, getMFAUnregisteredAt, getMFAValidatedAt, getName, getParameterValue, initPO, isUserMFAPreferred, isValid, setAD_User_ID, setExpiration, setFailedLoginCount, setHelp, setIsValid, setLastFailure, setLastSuccess, setMFA_Method_ID, setMFA_Registration_ID, setMFA_Registration_UU, setMFALastSecret, setMFASecret, setMFAUnregisteredAt, setMFAValidatedAt, setName, setParameterValue, toString
Methods inherited from class org.compiere.model.PO
afterDelete, afterSave, beforeDelete, beforeSave, buildInsertSQL, checkImmutable, clearCrossTenantSafe, clone, columnExists, columnExists, compare, copyPO, copyValues, copyValues, createAttachment, delete, delete, delete_Accounting, delete_Tree, deleteEx, deleteEx, dump, dump, equals, get_Attribute, get_Attributes, get_ColumnCount, get_ColumnDescription, get_ColumnDisplayType, get_ColumnIndex, get_ColumnLabel, get_ColumnLookup, get_ColumnName, get_DisplayValue, get_HashMap, get_ID, get_IDOld, get_KeyColumns, get_Logger, get_OptimisticLockingColumns, get_Table_ID, get_TableName, get_Translation, get_Translation, get_Translation, get_Translation, get_Translation, get_TrxName, get_UUID, get_Value, get_Value, get_ValueAsBoolean, get_ValueAsInt, get_ValueAsInt, get_ValueAsString, get_ValueAsString, get_ValueDifference, get_ValueDifference, get_ValueE, get_ValueOfColumn, get_ValueOld, get_ValueOld, get_ValueOldAsInt, get_WhereClause, get_WhereClause, get_xmlDocument, get_xmlString, getAD_Client_ID, getAD_Org_ID, getAllIDs, getAttachment, getAttachment, getAttachmentData, getCreated, getCreatedBy, getCtx, getDoc, getFindParameter, getPdfAttachment, getUpdated, getUpdatedBy, getUUIDColumnName, getUUIDColumnName, hashCode, insert_Accounting, insert_Tree, insert_Tree, is_Changed, is_Immutable, is_new, is_UseOptimisticLocking, is_ValueChanged, is_ValueChanged, isActive, isAttachment, isColumnMandatory, isColumnUpdateable, isMandatoryOK, isPdfAttachment, isReplication, load, load, load, load, loadByUU, loadComplete, loadDefaults, loadPO, loadSpecial, lock, makeImmutable, postDelete, retrieveIdOfParentValue, retrieveIdOfParentValue, save, save, saveCrossTenantSafe, saveCrossTenantSafeEx, saveCrossTenantSafeEx, saveEx, saveEx, saveNew_afterSetID, saveNew_getID, saveNewSpecial, saveReplica, saveUpdate, set_Attribute, set_ColumnUpdateable, set_CustomColumn, set_CustomColumnReturningBoolean, set_OptimisticLockingColumns, set_TrxName, set_TrxName, set_UseOptimisticLocking, set_Value, set_Value, set_Value, set_Value, set_ValueE, set_ValueNoCheck, set_ValueNoCheckE, set_ValueOfColumn, set_ValueOfColumn, set_ValueOfColumnReturningBoolean, set_ValueOfColumnReturningBoolean, setAD_Client_ID, setAD_Org_ID, setClientOrg, setClientOrg, setCrossTenantSafe, setDoc, setDocWorkflowMgr, setIsActive, setProcessedOn, setReplication, setStandardDefaults, setUpdateable, setUpdatedBy, toInsertSQL, unlock, update_Tree, validForeignKeys
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Comparator
reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
Methods inherited from interface org.compiere.model.I_MFA_Registration
getAD_Client_ID, getAD_Org_ID, getCreated, getCreatedBy, getUpdated, getUpdatedBy, isActive, setAD_Org_ID, setIsActive
Methods inherited from interface org.compiere.model.I_Persistent
save
-
Constructor Details
-
MMFARegistration
UUID based Constructor- Parameters:
ctx
- ContextMFA_Registration_UU
- UUID keytrxName
- Transaction
-
MMFARegistration
Read/Create empty MFA Registration- Parameters:
ctx
- contextMFA_Registration_ID
- IDtrxName
- transaction
-
MMFARegistration
Read MFA Registration from current row in ResultSet- Parameters:
ctx
- contextrs
- ResultSettrxName
- transaction
-
-
Method Details
-
alreadyExistsValid
Validate if a method is already registered for this user- Parameters:
method
-prm
-- Returns:
- true if valid registration exists
-
invalidatePreviousPending
Mark previous invalid registration as inactive.- Parameters:
method
-prm
-reg
-
-
setIsUserMFAPreferred
public void setIsUserMFAPreferred(boolean IsUserMFAPreferred) Set record as preferred, and set all the others from this user as not preferred- Specified by:
setIsUserMFAPreferred
in interfaceI_MFA_Registration
- Overrides:
setIsUserMFAPreferred
in classX_MFA_Registration
- Parameters:
IsUserMFAPreferred
- Preferred
-
getValidRegistrationsFromUser
Get the valid registrations from this user- Returns:
- list of valid registrations
-
userHasValidRegistration
public static boolean userHasValidRegistration()If the user has valid registration mechanisms- Returns:
- true if user has valid registration
-
generateValidationCode
Generate a validation code using the registered method- Parameters:
reg
- registration record- Returns:
- validation code
-
validateCode
Validate the code using the registered method- Parameters:
reg
- registration recordcode
- validation codesetPreferred
-- Returns:
- message on error, null when OK
-