public class MaxUser extends StatefulMbo implements MaxUserRemote, UpgConstants
GroupUser
table.
This mbo contains non-persistent attributes.
See Signature Package description.
This is a system level object.
The key attribute for this object is UserID.
The attributes in this object are as follows:
Attribute Name | Description |
---|---|
DatabaseUserID | The username for connecting to the native database. This will usually be null, and is not required for Maximo. |
DbPassword | Non-persistent attribute. The user's native database password (if databaseuserid is not null). |
DbPasswordCheck | Non-persistent attribute. The user's new native database password, which is entered twice when changing password. It must be entered twice to try to ensure there was not a data entry error. |
DefSite | The user's default site.
Foreign key to Site .
(There is no relation between DefSite and StoreroomSite.)
|
DefStoreroom | The user's default storeroom.
DefStoreroom + StoreroomSite are foreign key to
Locations table.
|
EmailPswd | Non-persistent attribute. When user is added or password is changed, indicates whether the user should be force to change password at the next login. |
FailedLogins | The number of times in succession that the user tried
unsuccessfully to log in. This is tracked only if
maxvar LOGINTRACKING is True. It is reset to
null when the user successfully logs in or the user status is changed.
|
ForceExpiration | True to force the user to change password on the next login. False to use the normal expiration date logic. |
GeneratedPswd | Non-persistent attribute. Populated via the "Generate Now" button, this is the new password that is randomly generated and displayed on the screen. |
InactiveSites | True to allow the user to access inactive sites and organizations in Maximo applications. |
LoginID | This is the username used to log in to Maximo. This defaults to the value of UserID, but they do not have to be equal. |
Password | The user's Maximo password (stored as encrypted on database). |
PasswordCheck | Non-persistent attribute. The user's new Maximo password, which is entered twice when changing password. It must be entered twice to try to ensure there was not a data entry error. |
PasswordInput | Non-persistent attribute. The user's new Maximo password. |
PasswordOld | Non-persistent attribute. The user's original Maximo password, used when changing password. |
PersonID | This users's person identifier.
Foreign key to Person .
|
Expiration | The expiration date of this user's password.
Will be non-null only if the group's PASSWORDDURATION
is non-null.
|
PwHintAnswer | The correct answer to the PwHintQuestion, used to verify the identity of a user who is requesting a new password. |
PwHintQuestion | The user's password hint question, defined in valuelist
PWHINTQUESTION .
|
QueryWithSite | If True, then the Site or Organization field on any application's Search page will be defaulted based on DefSite. For site-level applications, Site will default to DefSite. For organization-level applications, Organization will default to the organization of DefSite. If this attribute is False, there is no default. |
Status | The user's current status, defined in valuelist MAXUSERSTATUS .
Status history is in the MaxUserStatus
table.
|
StoreroomSite | Needed to define the default storeroom (DefStoreroom).
DefStoreroom + StoreroomSite are foreign key to
Locations table.
(There is no relation between DefSite and StoreroomSite.)
|
SynchPasswords | Non-persistent attribute; indicates whether Maximo and native database passwords should be set to the same value (when passwords are being added or changed). Defaults to False. |
Type | The user's type, defined in valuelist USERTYPE .
This attribute will assist the client in managing their license.
Clients can define the license type for each user. A report will
describe the types and numbers of users a client has for comparison
to their license agreement.
|
UserID | Unique identifier for the user. This is cached in UserInfo and is also used as the value in the "createdby" and "changedby" fields on many tables. |
WFActive | Identifies whether Workflow is active for this user. |
WFID | If Workflow is active, this identifies the Workflow ID. See Workflow Package description. |
onListTab, statusChangeButtonSigoption, targetStatusOption
MULTILANGCOPY, phantomList, phantomQueue
ACTIVE, BLOCKED, DELETED, INACTIVE
DB2, doNotUpdateACTION, doNotUpdateALNDOMAIN, doNotUpdateAPPLICATIONAUTH, doNotUpdateAUTOKEY, doNotUpdateCONDITION, doNotUpdateCONTRACTPROPERTY, doNotUpdateCONTRACTTYPE, doNotUpdateCROSSOVERDOMAIN, doNotUpdateDOCTYPES, doNotUpdateLANGUAGE, doNotUpdateMAXAPPS, doNotUpdateMAXCONDDETAIL, doNotUpdateMAXCONTROLVALUE, doNotUpdateMAXDOMAIN, doNotUpdateMAXLOGAPPENDER, doNotUpdateMAXLOGGER, doNotUpdateMAXMENU, doNotUpdateMAXMESSAGES, doNotUpdateMAXMODULES, doNotUpdateMAXPROP, doNotUpdateMAXPROPVALUE, doNotUpdateMAXROLE, doNotUpdateMAXSEQUENCE, doNotUpdateMAXSERSECURITY, doNotUpdateMAXSERVICE, doNotUpdateMAXTABLEDOMAIN, doNotUpdateMAXVARS, doNotUpdateMAXVARTYPE, doNotUpdateMXCOLLAB, doNotUpdateMXCOLLABREF, doNotUpdateNUMERICDOMAIN, doNotUpdateNUMRANGEDOMAIN, doNotUpdatePORTLET, doNotUpdatePRICALC, doNotUpdateSECURITYRESTRICT, doNotUpdateSIGOPTION, doNotUpdateSYNONYMDOMAIN, doNotUpdateTAXTYPE, doNotUpdateWORKPRIORITY, doNotUpdateWORKTYPE, doNotUpdateWPEDITSETTING, messageCache, NEWONLY, OLDANDNEW, OLDONLY, ORACLE, SQLINET, SQLMICROSOFT, SQLSERVER, SYSDATATABLES, SYSTEMTABLES, UNKNOWN
ALLROWS, CHANGEDBY_USER, COUNT_ADDITIONS, COUNT_AFTERSAVE, COUNT_DATABASE, COUNT_DELETED, COUNT_EXISTING, DBCONFIG, DELAYVALIDATION, DELAYVALIDATIONONLY, DISCARDABLE, GOTCOMPLETEWHERE, HIDDEN, NO_RELATEDMBOS_OF_OWNERSCHILDREN_FETCH, NOACCESSCHECK, NOACTION, NOADD, NOCOMMIT, NODELETE, NONE, NOOVERWRITE, NOSAVE, NOSETVALUE, NOUPDATE, NOVALIDATION, NOVALIDATION_AND_NOACTION, NOVALIDATION_AND_NOACTION_ALLOWCROSSOVER, READONLY, REBUILD, REQUIRED, SAMEVALUEVALIDATION, SETBYPARENT, USER
Constructor and Description |
---|
MaxUser(MboSet ms)
Construct the MaxUser object.
|
Modifier and Type | Method and Description |
---|---|
void |
add()
Add a mbo, defaulting the attributes shown below.
|
void |
addDBUser(java.lang.String dbuserid)
Perform the database-specific calls needed to add a user
(databaseuserid).
|
void |
addGroupUser()
Add default rows to GroupUser when new User is being added.
|
void |
addGrpReassignAuthForUserInsert()
When user is added to a group that has USER-INSERT privilege, or that
privilege is added to a group, then all users in that group need
privilege to add people to the default group and the "everyone" group.
|
void |
addLoginTracking(boolean attemptResult)
Deprecated.
See Harrier Esig spec
|
void |
addLoginTracking(boolean attemptResult,
java.lang.String app,
java.lang.String reason,
java.lang.String transid,
java.lang.String[] keyvalue)
Deprecated.
See Harrier Esig spec
|
void |
addLoginTracking(boolean attemptResult,
java.lang.String app,
java.lang.String reason,
java.lang.String transid,
java.lang.String[] keyvalue,
java.lang.String ownerTable,
java.lang.String ownerId)
Deprecated.
See Harrier Esig spec
|
MboRemote |
addLoginTracking(java.lang.String attemptResult)
Call
addLoginTracking with
second param true. |
MboRemote |
addLoginTracking(java.lang.String attemptResult,
boolean updateStatus)
Add mbo to LoginTracking reflecting the successful or unsuccessful login.
|
MboRemote |
addMaxSession()
Add a row to MaxSession when user is logging in.
|
void |
addServerSession()
Add a row to MaxSession when user is logging in.
|
void |
appValidate()
Pre-save validation method.
|
void |
authorizeGroups(MboSetRemote groupSet,
java.lang.String relationship)
For multiselect of groups for GrpReassignAuth or GroupUser.
|
void |
cancelMainRecordDialog(java.lang.String id)
Cancel the dialog "grpassign", "chgperson", or "pwhint".
|
boolean |
canChangePassword()
Can this session user change the password of this MaxUser mbo? Starting
with Merlin, this always returns True (unless using LDAP).
|
void |
canDelete()
If maxvar
LOGINTRACKING is True, then MaxUser can NEVER be
deleted. |
void |
changeDBPassword()
Perform the database-specific calls needed to change a native database
password (for databaseuserid, dbpassword).
|
void |
clearGenPswdInfo()
Clear values for passwordinput, passwordcheck, and generatedpswd.
|
void |
clearUserProfileHierarchySet() |
MboRemote |
createPersonMbo(java.lang.String personID,
MboSetRemote personSet)
Deprecated.
Use
createPersonMbo . |
MboRemote |
createPersonMbo(java.lang.String personID,
MboSetRemote personSet,
boolean doAutokey)
Called only when adding a user, to create a Person mbo.
|
void |
delete(long accessModifier)
Delete this mbo.
|
void |
deleteDBUser(java.lang.String deleteID)
Perform the database-specific calls needed to drop a user
(databaseuserid).
|
boolean |
deleteThisUser()
Calls
deleteThisUser with param
NONE . |
boolean |
deleteThisUser(long accessModifier)
Convenience method to delete a user instead of calling the regular
delete . |
MboRemote |
duplicate()
Call copy.
|
java.lang.String |
encryptEsigPassword(java.lang.String esigPass) |
void |
generatePassword() |
int |
getDbIn()
Return native database platform (dbIn)
|
java.lang.String |
getOldLoginID() |
java.lang.String |
getProcess()
Return the name of the work flow process (USERSTATUS).
|
java.lang.String |
getStatusListName()
Return MAXUSERSTATUS, name of valuelist for user statuses.
|
void |
init()
Since the business objects are not supposed to check privilege, it is
incumbent upon the UI to check privilege for the following:
ADDUSERS -- If toBeAdded and no privilege for
ADDUSERS , then group name should be readonly. |
void |
initFieldFlagsOnMbo(java.lang.String attrName)
The logic of setting the readonly and required field flags to the mbo.
|
boolean |
isActive()
Is this user Active?
|
boolean |
isBlocked()
Is this user Blocked?
|
void |
isDBPasswordValid()
Is the native database password valid? Throws system/notvalid if the
dbpassword is not valid.
|
boolean |
isDeleted()
Is this user Deleted?
|
boolean |
isInactive()
Is this user Inactive?
|
boolean |
isPasswordValid()
Is the Maximo password valid? Compares password to passwordCheck to
ensure they are equal.
|
void |
maxUserCanDelete()
Similar to
canDelete , for remote interface. |
void |
openMainRecordDialog(java.lang.String id)
Open the dialog "grpassign", "chgperson", or "pwhint".
|
void |
recheckPasswordAuthority()
Recheck password change authority.
|
void |
save()
Perform any processing re: changing native dbpassword; then save the mbo.
|
void |
setBlocked(java.lang.String memo)
Set this user's status to BLOCKED.
|
void |
setLoginIdDefault()
Called from FldMaxUserUserID when adding a new user.
|
void |
setOldLoginID(java.lang.String oldLoginID) |
void |
setValue(java.lang.String attributeName,
java.lang.String val,
long accessModifier)
Set value for the specified attribute.
|
boolean |
showProfileWarning()
If any info was changed via My Profile app that did not update the cached
user profile, and there is more than one active session for this UserID,
then return True.
|
boolean |
toBeSaved()
Does the object need to be saved to persistent storage ? This will also
check for change of Maximo and native password.
|
void |
undelete()
Unmark the Mbo for deletion.
|
void |
undeleteThisUser() |
boolean |
userExistsOnDB(java.sql.Connection con,
java.lang.String checkID)
Determine whether this user already exists on the native DB
(databaseuserid).
|
boolean |
userWasDuplicated()
Identifies whether we're in the process of duplicating a user, there this
is the new user.
|
canChangeMaxStatus, canChangeStatus, canChangeStatus, canChangeStatus, canDeleteAttachedDocs, changeMaxStatus, changeMaxStatus, changeStatus, changeStatus, changeStatus, checkForOpenStatus, checkStatusChangeAuthorization, filterByValidStatusList, fireEvent, getInternalStatus, getOnListTab, getOverridePVStatusException, getStatusChangeButtonSigoption, getStatusList, getTargetStatusOption, getValidStatusList, setOnListTab, setOverridePVStatusException, setStatusChangeButtonSigoption, setTargetStatusOption
addMboSetForRequiredCheck, addToDeleteForInsertList, andEvaluateConditions, blindCopy, checkFieldAccess, checkMethodAccess, checkMethodAccess, checkQualifiedRestriction, checkSiteOrgAccessForSave, clear, copy, copy, copy, copyFake, copyValue, copyValue, createComm, delete, determineRequiredFieldsFromERM, enableMethod, evaluateCondition, evaluateCondition, evaluateCtrlConditions, evaluateCtrlConditions, evaluateRestriction, excludeObjectForPropagate, findAllNullRequiredFields, generateAutoKey, generateContentUID, getAlwaysFlags, getAttrRestrictionFlag, getAttrRestrictions, getBoolean, getByte, getBytes, getCheckpoint, getClientLocale, getClientTimeZone, getCommLogOwnerNameAndUniqueId, getCondition, getDatabaseValue, getDate, getDeleteForInsertList, getDocLinksCount, getDomainFilterWhere, getDomainIDs, getDouble, getESId, getExistingMboSet, getFetchIndex, getFieldExceptions, getFlags, getFloat, getIgnoreLockCheck, getInitialValue, getInsertCompanySetId, getInsertItemSetId, getInsertOrganization, getInsertOrgForSite, getInsertSite, getInstanciatedMboSet, getInstanciatedMboValue, getInt, getIntegrationService, getKeyValue, getLanguageRecordRowStamp, getLinesRelationship, getList, getLockedByDisplayName, getLockedByUserID, getLong, getMatchingAttr, getMatchingAttr, getMatchingAttrs, getMaxMessage, getMboCtx, getMboData, getMboDataSet, getMboForAttribute, getMboForAttributeStatic, getMboInitialValue, getMboList, getMboLogger, getMboRecordData, getMboServer, getMboSet, getMboSet, getMboSet, getMboSetInfo, getMboValue, getMboValueData, getMboValueData, getMboValueData, getMboValueDataForDownload, getMboValueInfoStatic, getMboValueInfoStatic, getMessage, getMessage, getMessage, getMessage, getMXTransaction, getName, getOrgForGL, getOrgSiteForMaxvar, getOwner, getProfile, getPropagateKeyFlag, getProxy, getRecordIdentifer, getRecordMboName, getRelatedWhere, getRelatedWhere, getRelationshipNameToLangTable, getResourceName, getRowRestrictionFlag, getRowStamp, getRowStampObject, getSecurityLogger, getSiteOrg, getSqlLogger, getString, getString, getStringInBaseLanguage, getStringInSpecificLocale, getStringTransparent, getSynonymValueWhere, getTenantId, getThisMboSet, getTranslator, getUniqueIdentifer, getUniqueIDName, getUniqueIDValue, getUniqueLanguageIDRecord, getUserInfo, getUserName, getValidateOrder, hasFieldAccess, hasHierarchyLink, hasLockSaveRights, hasRelatedQbe, hasUniqueID, initRelationship, isApiBatchError, isAutoKeyed, isBasedOn, isChangeByUserWhenSetFromLookup, isEAuditFieldModified, isESigFieldModified, isFlagSet, isForDM, isLocked, isLocked, isLockedByMe, isMasterTenant, isMboLockedByMe, isModified, isModified, isNew, isNoSql, isNull, isOptionGranted, isSelected, isSkipCopyField, isValid, isZombie, lock, modify, moveFieldFlagsToMboValue, needCallInitFieldFlag, orEvaluateConditions, propagateKeyValue, removeCtx, removeRelatedSet, resolveNoSqlWhere, rollbackToCheckpoint, select, setAppDefaultValue, setApplicationError, setApplicationRequired, setAutokeyFields, setCopyDefaults, setDefaultValue, setDefaultValues, setDeleted, setEAuditFieldModified, setESId, setESigFieldModified, setFetchIndex, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlags, setFlag, setFlag, setFlags, setForDM, setHierarchyLink, setIgnoreRecordLockCheck, setLangCodeDefault, setMboCtx, setMLValue, setModified, setModifiedForIntegrationOnly, setNewMbo, setNoSql, setPropagateKeyFlag, setPropagateKeyFlag, setProxy, setReadonlyWhenParentIsReadonly, setReferencedMbo, setReferencedMbo, setResolveNoSqlWhere, setResourceName, setUniqueIDValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValueFromSequence, setValueNull, setValueNull, sigopGranted, sigopGranted, sigopGranted, sigOptionAccessAuthorized, smartFill, smartFind, smartFind, smartFindByObjectName, smartFindByObjectName, smartFindByObjectNameDirect, startCheckpoint, thisToBeUpdated, toBeAdded, toBeDeleted, toBeUpdated, toBeValidated, unlock, unselect, useDataSecurity, validate, validateAttributes, validateKeyUniqueness, valueChanged
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
canChangeMaxStatus, canChangeStatus, canChangeStatus, canDeleteAttachedDocs, changeMaxStatus, changeMaxStatus, changeStatus, changeStatus, changeStatus, checkForOpenStatus, getInternalStatus, getOnListTab, getOverridePVStatusException, getStatusChangeButtonSigoption, getStatusList, getTargetStatusOption, getValidStatusList, setOnListTab, setOverridePVStatusException, setStatusChangeButtonSigoption, setTargetStatusOption
addMboSetForRequiredCheck, addToDeleteForInsertList, blindCopy, checkMethodAccess, clear, copy, copy, copy, copyFake, copyValue, copyValue, createComm, delete, evaluateCondition, evaluateCtrlConditions, evaluateCtrlConditions, excludeObjectForPropagate, generateAutoKey, getBoolean, getByte, getBytes, getCommLogOwnerNameAndUniqueId, getDatabaseValue, getDate, getDeleteForInsertList, getDocLinksCount, getDomainIDs, getDouble, getExistingMboSet, getFlags, getFloat, getIgnoreLockCheck, getInitialValue, getInsertCompanySetId, getInsertItemSetId, getInsertOrganization, getInsertSite, getInt, getKeyValue, getLinesRelationship, getList, getLockedByDisplayName, getLong, getMatchingAttr, getMatchingAttr, getMatchingAttrs, getMaxMessage, getMboData, getMboDataSet, getMboInitialValue, getMboList, getMboSet, getMboSet, getMboSet, getMboValueData, getMboValueData, getMboValueData, getMboValueDataForDownload, getMboValueInfoStatic, getMboValueInfoStatic, getMessage, getMessage, getMessage, getMessage, getMXTransaction, getName, getOrgForGL, getOrgSiteForMaxvar, getOwner, getPropagateKeyFlag, getRecordIdentifer, getSiteOrg, getString, getString, getStringInBaseLanguage, getStringInSpecificLocale, getStringTransparent, getThisMboSet, getUniqueIDName, getUniqueIDValue, getUserInfo, getUserName, hasHierarchyLink, hasLockSaveRights, isAutoKeyed, isBasedOn, isFlagSet, isForDM, isLocked, isLocked, isMasterTenant, isMboLockedByMe, isModified, isModified, isNew, isNull, isOptionGranted, isSelected, isZombie, lock, propagateKeyValue, rollbackToCheckpoint, select, setApplicationError, setApplicationRequired, setAutokeyFields, setCopyDefaults, setDeleted, setESigFieldModified, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlag, setFieldFlags, setFlag, setFlag, setFlags, setForDM, setIgnoreRecordLockCheck, setMLValue, setModified, setNewMbo, setPropagateKeyFlag, setPropagateKeyFlag, setReferencedMbo, setReferencedMbo, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValue, setValueNull, setValueNull, sigopGranted, sigopGranted, sigopGranted, sigOptionAccessAuthorized, smartFill, smartFind, smartFind, smartFindByObjectName, smartFindByObjectName, smartFindByObjectNameDirect, startCheckpoint, thisToBeUpdated, toBeAdded, toBeDeleted, toBeUpdated, toBeValidated, unlock, unselect, validate, validateAttributes
public MaxUser(MboSet ms) throws java.rmi.RemoteException
java.rmi.RemoteException
public java.lang.String getProcess()
public java.lang.String getStatusListName()
getStatusListName
in interface StatefulMboRemote
getStatusListName
in class StatefulMbo
public void init() throws MXException
ADDUSERS
-- If toBeAdded and no privilege for
ADDUSERS
, then group name should be readonly. This should
force the use of the default value for group name when adding a user. If
toBeAdded and there IS privilege for ADDUSERS
, then group
name can be changed.
REASSIGN
-- If not adding, and no privilege for
REASSIGN
, then group name should be readonly.
init
in class Mbo
MXException
MXServer.getDatabaseProductName()
public int getDbIn()
public void add() throws MXException, java.rmi.RemoteException
Attribute Name | Attribute Value |
---|---|
ForceExpiration | True |
Status | from valuelistMAXUSERSTATUS , maxvalue ACTIVE
|
SynchPasswords | False |
SysUser | False |
Type | from valuelistUSERTYPE , maxvalue TYPE 1
|
add
in interface MboRemote
add
in class Mbo
MXException
java.rmi.RemoteException
public void delete(long accessModifier) throws MXException, java.rmi.RemoteException
deleteChildren
.
The preferred way to initiate deleting a user is by calling
deleteThisUser
.
delete
in interface MboRemote
delete
in class Mbo
accessModifier
- The bitwise flag specified to determine
if certain normal security checks are to be
bypassed for this delete request.
For example:
if the accessModifer is NOACCESSCHECK, then the
check for the object's NODELETE flag and the
call to the object's canDelete() method
will not be performed.
If the accessModifer is NONE, then all the
access checks are performed before this object
is marked delete.MXException
java.rmi.RemoteException
Mbo.delete(long)
public void undelete() throws MXException, java.rmi.RemoteException
Mbo
undelete
in interface MboRemote
undelete
in class Mbo
MXException
java.rmi.RemoteException
public boolean deleteThisUser() throws MXException, java.rmi.RemoteException
deleteThisUser
with param
NONE
.deleteThisUser
in interface MaxUserRemote
MXException
java.rmi.RemoteException
deleteThisUser
public void undeleteThisUser() throws MXException, java.rmi.RemoteException
undeleteThisUser
in interface MaxUserRemote
MXException
java.rmi.RemoteException
undeleteThisUser()
public boolean deleteThisUser(long accessModifier) throws MXException, java.rmi.RemoteException
delete
.
If LoginTracking maxvar is False, this method calls delete
.
If LoginTracking maxvar is True, this method calls
deleteChildren
and sets this user status to
Inactive.
This method also sets the variable deleteThisUser
to True.
MXException
java.rmi.RemoteException
public void maxUserCanDelete() throws MXException, java.rmi.RemoteException
canDelete
, for remote interface.maxUserCanDelete
in interface MaxUserRemote
MXException
java.rmi.RemoteException
activeWorkflowAssignment()
public void canDelete() throws MXException, java.rmi.RemoteException
LOGINTRACKING
is True, then MaxUser can NEVER be
deleted. However, see deleteThisUser
. Also, if
active workflow assignment exists, user cannot be deleted.canDelete
in class Mbo
MXException
java.rmi.RemoteException
maxUserCanDelete()
public boolean toBeSaved() throws java.rmi.RemoteException
public boolean userWasDuplicated()
userWasDuplicated
in interface MaxUserRemote
dupMbo
public MboRemote duplicate() throws MXException, java.rmi.RemoteException
duplicate
in interface MboRemote
duplicate
in class Mbo
MXException
java.rmi.RemoteException
public void appValidate() throws MXException, java.rmi.RemoteException
The framework will ensure that Laborcode is not null.
The UI should ensure that if adding a user and there is no privilege for
ADDUSERS
(i.e. the user is self-registering), the group name
must equal the default group (see
getNewUserGroup
.
appValidate
in class Mbo
MXException
java.rmi.RemoteException
recheckPasswordAuthority()
,
isPasswordValid()
,
userExistsOnDB(java.sql.Connection, java.lang.String)
,
canChangePassword()
,
setExpiration(java.util.Date)
,
writePasswordHistory()
,
isDBPasswordValid()
public void recheckPasswordAuthority() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public java.lang.String encryptEsigPassword(java.lang.String esigPass)
public void save() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
changeDBPassword()
public boolean isActive() throws MXException, java.rmi.RemoteException
isActive
in interface MaxUserRemote
MXException
java.rmi.RemoteException
isActive()
public boolean isInactive() throws MXException, java.rmi.RemoteException
isInactive
in interface MaxUserRemote
MXException
java.rmi.RemoteException
isInactive()
public boolean isBlocked() throws MXException, java.rmi.RemoteException
isBlocked
in interface MaxUserRemote
MXException
java.rmi.RemoteException
isBlocked()
public void setBlocked(java.lang.String memo) throws MXException, java.rmi.RemoteException
memo
- Freeform comment; can be null.MXException
java.rmi.RemoteException
public boolean isDeleted() throws MXException, java.rmi.RemoteException
isDeleted
in interface MaxUserRemote
MXException
java.rmi.RemoteException
isDeleted()
@Deprecated public void addLoginTracking(boolean attemptResult) throws MXException, java.rmi.RemoteException
addLoginTracking
.addLoginTracking
in interface MaxUserRemote
attemptResult
- True for successful login, else FalseMXException
java.rmi.RemoteException
addLoginTracking(boolean)
@Deprecated public void addLoginTracking(boolean attemptResult, java.lang.String app, java.lang.String reason, java.lang.String transid, java.lang.String[] keyvalue) throws MXException, java.rmi.RemoteException
Do NOT update anything if Maxvar LOGINTRACKING
is False.
Called from MaxUserSet addLoginTracking
.
addLoginTracking
in interface MaxUserRemote
attemptResult
- True for successful login, else Falseapp
- The application name (optional). Used for ESIG.reason
- The reason code (optional). Used for ESIG.transid
- The transaction ID (optional). Used for ESIG.keyvalue
- Array of up to seven key values (optional). Used for ESIG to
identify a mbo in the main set for the app.MXException
java.rmi.RemoteException
addLoginTracking(boolean, String, String, String, String[])
@Deprecated public void addLoginTracking(boolean attemptResult, java.lang.String app, java.lang.String reason, java.lang.String transid, java.lang.String[] keyvalue, java.lang.String ownerTable, java.lang.String ownerId) throws MXException, java.rmi.RemoteException
Do NOT update anything if Maxvar LOGINTRACKING
is False.
Called from MaxUserSet addLoginTracking
.
addLoginTracking
in interface MaxUserRemote
attemptResult
- True for successful login, else Falseapp
- The application name (optional). Used for ESIG.reason
- The reason code (optional). Used for ESIG.transid
- The transaction ID (optional). Used for ESIG.keyvalue
- Array of up to seven key values (optional). Used for ESIG to
identify a mbo in the main set for the app.ownerTable
- Owner table for esigownerId
- unique id for the esig recordMXException
java.rmi.RemoteException
addLoginTracking(boolean, String, String, String, String[],String, String)
public MboRemote addLoginTracking(java.lang.String attemptResult) throws MXException, java.rmi.RemoteException
addLoginTracking
with
second param true.addLoginTracking
in interface MaxUserRemote
attemptResult
- From domain ATTEMPTRESULT.MXException
java.rmi.RemoteException
addLoginTracking(String, boolean)
public MboRemote addLoginTracking(java.lang.String attemptResult, boolean updateStatus) throws MXException, java.rmi.RemoteException
Do NOT update anything if Maxvar LOGINTRACKING
is False.
addLoginTracking
in interface MaxUserRemote
attemptResult
- From domain ATTEMPTRESULT.updateStatus
- True if user status should be updated when called for by the
business rules (for example, block the user if excessive
number of bad logins). This param should normally be true
except for certain situations in SecurityService.MXException
java.rmi.RemoteException
addLoginTracking(String, boolean)
public MboRemote addMaxSession() throws MXException, java.rmi.RemoteException
SecurityService
.addMaxSession
in interface MaxUserRemote
MXException
java.rmi.RemoteException
addMaxSession()
public void addServerSession() throws MXException, java.rmi.RemoteException
SecurityService
.addServerSession
in interface MaxUserRemote
MXException
java.rmi.RemoteException
addServerSession()
public boolean isPasswordValid() throws MXException, java.rmi.RemoteException
appValidate
.MXException
java.rmi.RemoteException
SignatureService.validatePassword(String, String,
UserInfo, MboRemote)
public void isDBPasswordValid() throws MXException, java.rmi.RemoteException
appValidate
.MXException
java.rmi.RemoteException
deleteDBUser(java.lang.String)
,
addDBUser(java.lang.String)
public final void addDBUser(java.lang.String dbuserid) throws MXException
For Oracle, if the user doesn't exist, do the following:
For SQLServer, do the following:
For Oracle, the "schema owner" is used to obtain the names of the default and temporary tablespaces.
public final void deleteDBUser(java.lang.String deleteID) throws MXException
For Oracle, this executes drop user.
For SQLServer, this executes both sp_dropuser and sp_droplogin.
Called from save
.
deleteID
- The userID to be deleted.MXException
userExistsOnDB(java.sql.Connection, java.lang.String)
,
MaxUserSet.getSystemUserInfo()
,
UserInfo.getConnectionKey()
public boolean canChangePassword() throws MXException, java.rmi.RemoteException
canChangePassword
in interface MaxUserRemote
MXException
java.rmi.RemoteException
MXServerInfo.useAppServerSecurity
public final void changeDBPassword() throws MXException
MXException
MaxUserSet.getSystemUserInfo()
,
UserInfo.getConnectionKey()
public final boolean userExistsOnDB(java.sql.Connection con, java.lang.String checkID) throws MXException, java.rmi.RemoteException
For Oracle, this method selects from all_users.
For SQLServer, this method selects from syslogins.
con
- Connection. Can be null. If null, it is created and closed within this
method.checkID
- The database user ID to be checked for.MXException
java.rmi.RemoteException
MaxUserSet.getSystemUserInfo()
,
UserInfo.getConnectionKey()
public void addGroupUser() throws MXException, java.rmi.RemoteException
addGroupUser
in interface MaxUserRemote
MXException
java.rmi.RemoteException
SignatureService.getNewUserGroup(psdi.security.UserInfo)
,
SignatureService.getEveryoneGroup(psdi.security.UserInfo)
@Deprecated public MboRemote createPersonMbo(java.lang.String personID, MboSetRemote personSet) throws MXException, java.rmi.RemoteException
createPersonMbo
.createPersonMbo
in interface MaxUserRemote
MXException
java.rmi.RemoteException
createPersonMbo(String, MboSetRemote)
public MboRemote createPersonMbo(java.lang.String personID, MboSetRemote personSet, boolean doAutokey) throws MXException, java.rmi.RemoteException
createPersonMbo
in interface MaxUserRemote
personID
- The personID to use on the Person mbo (unless autokeying).personSet
- This MaxUser mbo owns set of Person, MaxUserSetRemote.PERSON.doAutokey
- If true and if the PersonID attribute allows autokeying,
then use the autokey value rather than the value of personID
param.MXException
java.rmi.RemoteException
createPersonMbo(String, MboSetRemote, boolean)
public void openMainRecordDialog(java.lang.String id) throws MXException, java.rmi.RemoteException
dialogStates
. If the dialog is cancelled,
cancelMainRecordDialog
will be invoked.
Called from UserBean
.openMainRecordDialog
in interface MaxUserRemote
id
- Dialog nameMXException
java.rmi.RemoteException
openMainRecordDialog(java.lang.String)
public void cancelMainRecordDialog(java.lang.String id) throws MXException, java.rmi.RemoteException
openMainRecordDialog
was called when
the dialog was first built. Set this MaxUser record back to the original
"modified" state as when the dialog was first entered. Called from
cancelDialog
.cancelMainRecordDialog
in interface MaxUserRemote
id
- Dialog nameMXException
java.rmi.RemoteException
MaxUserSet.setToBeSaved(boolean)
public void clearUserProfileHierarchySet() throws MXException, java.rmi.RemoteException
clearUserProfileHierarchySet
in interface MaxUserRemote
MXException
java.rmi.RemoteException
UserProfileHierarchySet.clearProfile(java.lang.String)
public boolean showProfileWarning() throws MXException, java.rmi.RemoteException
MyProfileBean
.showProfileWarning
in interface MaxUserRemote
MXException
java.rmi.RemoteException
showProfileWarning()
public void setLoginIdDefault() throws MXException, java.rmi.RemoteException
setLoginIdDefault
in interface MaxUserRemote
MXException
java.rmi.RemoteException
setLoginIdDefault()
public void setValue(java.lang.String attributeName, java.lang.String val, long accessModifier) throws MXException, java.rmi.RemoteException
setValue
in interface MboRemote
setValue
in class Mbo
attributeName
- The attribute name within the current object.val
- The string value to set to the attribute.accessModifier
- The bitwise flags such as NOACCESSCHECK,
NOVALIDATION_AND_NOACTION, and DELAYVALIDATION.MXException
- "Attribute {0} does not exist" exception will
be thrown if the attribute does not exist
in the object.
"Field is read only" exception will be thrown
if the attribute is READONLY and the
accessModifier does not specify NOACCESSCHECK.
"Invalid Data Type" exception will be thrown
for datatype mismatch. For example,
setting a string value of characters to an
attribute which has datatype of YORN.java.rmi.RemoteException
Mbo.setValue(String, String, long)
,
HiddenValueSet.setValue(java.lang.String, java.lang.String, long)
public void authorizeGroups(MboSetRemote groupSet, java.lang.String relationship) throws MXException, java.rmi.RemoteException
authorizeGroups
in interface MaxUserRemote
groupSet
- Set of MaxGrouprelationship
- Relationship name: GRPREASSIGNAUTH or GROUPUSER.MXException
java.rmi.RemoteException
SelectGroupsBean
public void clearGenPswdInfo() throws MXException, java.rmi.RemoteException
clearGenPswdInfo
in interface MaxUserRemote
MXException
java.rmi.RemoteException
clearGenPswdInfo()
public void generatePassword() throws MXException, java.rmi.RemoteException
generatePassword
in interface MaxUserRemote
MXException
java.rmi.RemoteException
clearGenPswdInfo()
,
SignatureService.generatePassword(String,
UserInfo, MboRemote)
public void addGrpReassignAuthForUserInsert() throws MXException, java.rmi.RemoteException
MXException
java.rmi.RemoteException
public void initFieldFlagsOnMbo(java.lang.String attrName) throws MXException
Mbo
initFieldFlagsOnMbo
in class Mbo
MXException
public java.lang.String getOldLoginID()
public void setOldLoginID(java.lang.String oldLoginID)