VisuUserMgmtHasUserRightToChangeUsers (FUN) ¶ FUNCTION VisuUserMgmtHasUserRightToChangeUsers : BOOL InOut: Scope Name Type Return VisuUserMgmtHasUserRightToChangeUsers BOOL Input pvumUser POINTER TO VUM_User itfVisuUserMgmt IVisuUserMgmt
VUM_ErrorCodes (GVL) ¶ InOut: Scope Name Type Initial Comment Constant ERR_OK UDINT 16#0 IMPORTANT NOTE: Do not add further errors here, but in the interface library ERR_FAILED UDINT 16#1 The operation failed ERR_PARAMETER UDINT 16#2 Wrong parameter ERR_VUM_FILE_NOT_FOUND UDINT 16#5000 The user management file was not found ERR_VUM_TEMP_FILE_CANNOT_BE_OPENED UDINT 16#5001 The user management temp file cannot be opened ERR_VUM_FILE_READ_FAILED UDINT 16#5002 The user management file cannot be read ERR_VUM_FILE_WRITE_FAILED UDINT 16#5003 The user management file cannot be written ERR_VUM_INVALID_FILE_CONTENT UDINT 16#5004 The user management file has a invalid content ERR_VUM_USERNAME_ALREADY_EXIST UDINT 16#5005 The user name must be unique ERR_VUM_WRONG_PASSWORD UDINT 16#5006 The password is wrong ERR_VUM_UNEQUAL_PASSWORD UDINT 16#5007 The password isn’t equal to the acknowledge password ERR_VUM_NEW_USER_DB_CANNOT_BE_STORED UDINT 16#5008 The new user db file cannot be stored ERR_VUM_ONLY_VISIBLE_USERS_CAN_BE_REMOVED UDINT 16#5009 Only visible users can be removed ERR_VUM_EMPTY_PASSWORD_NOT_ALLOWED UDINT 16#500A An empty password is not allowed ERR_VUM_ANOTHER_CLIENT_EDITS_UM UDINT 16#500B Only one client can edit user management entries ERR_VUM_SYSFILE_ERROR UDINT 16#500C Error during working with SysFile ERR_VUM_SETNEWUSERDB_FAILED UDINT 16#500D Set new user database failed ERR_VUM_PROXY_IS_NOT_IN_IDLE_MODE UDINT 16#500E Proxy is not in idle mode ERR_VUM_DATASERVER_ERROR UDINT 16#500F DataServer ProcessDataServerRequest error ERR_VUM_DATASERVER_ERROR_USERS UDINT 16#5010 The user list cannot be read from the remote system ERR_VUM_MAX_GROUP_LIMIT UDINT 16#5011 The maximum number of possible groups is exceeded ERR_VUM_USER_DOES_NOT_EXIST UDINT 16#5012 The user does not exist ERR_VUM_USER_IS_INACTIVE UDINT 16#5013 The user is inactive ERR_VUM_NO_LOGIN_PROVIDER_AVAILABLE UDINT 16#5014 The login dialog cannot be opened because the maximum number of login dialogs is reached ERR_VUM_NO_CLIENT_MEMORY UDINT 16#5015 No client memory ERR_VUM_NO_USER_LOGGED_IN UDINT 16#5016 No user logged in ERR_VUM_NO_VALID_USERGROUP_SET UDINT 16#5017 No valid user group set ERR_VUM_NO_RIGHT_TO_CHANGE_USERS UDINT 16#5018 No right to change users ERR_VUM_NO_USER_MANAGEMENT UDINT 16#5019 No user management ERR_VUM_USER_NOT_IN_USER_GROUP UDINT 16#501A The user does not belong to the user group ERR_VUM_EXTERNAL_USER_DATABASE_PROVIDER2_NOT_IMPLEMENTED UDINT 16#501B The external user database provider does not implement IExternalUserDatabaseProvider2 ERR_VUM_LOGIN_WRONG_ATTEMPT UDINT 16#501C The password is wrong and the login attempts are limited ERR_VUM_LOGIN_SECONDLAST_WRONG_ATTEMPT UDINT 16#501D The password is wrong and the login attempts are limited. Only one more attempt is left ERR_VUM_LOGIN_LOCKOUT_TEMP UDINT 16#501E This was the last wrong login attempt. User will be locked for defined time ERR_VUM_LOGIN_LOCKOUT_COMPLETE UDINT 16#501F This was the last wrong login attempt. User will be locked completly ERR_VUM_EMPTY_USER_NAME_NOT_ALLOWED UDINT 16#5020 Modifiing an user with an empty user name is not allowed
VUM_Events (GVL) ¶ InOut: Scope Name Type Initial Comment Constant CMPID_CmpVisuServer DWORD 16#57 See declaration of this component raising event in runtime system
VUM_UserAdminAccess (ENUM) ¶ TYPE VUM_UserAdminAccess : InOut: Name Comment None No access FullAdmin Full adminitrator rights RestrictAdmin Restricted administrator rights
VUM_UserGroup (STRUCT) ¶ TYPE VUM_UserGroup : STRUCT InOut: Name Type Comment wstGroupName WSTRING(79) The group name which must be unique dwID DWORD The id of the user group xAutoLogout BOOL tAutoLogout TIME dwFlags DWORD Used to set some special AccessRights f.e. USERGROUPFLAG_RIGHT_TO_CHANGE_USER
VUM_UserInternal (STRUCT) ¶ TYPE VUM_UserInternal : STRUCT This structure is an extension of VUM_User available in VisuUserMgmt3_Itfs. Problem is that a structure available in an interface cannot be extended and this can be a problem when that structure is not actually used in an interface, but in internal uses, and we need to add new elements. This is why we add this structure, that has the VUM_User elements and new additional data that is not needed in VUM_User and thus without breaking compatibility. If we need to expose the additional data we have to create a new structure, e.g.: VUM_UserX, used only in the interfaces and not as internal uses. VUM_UserInternal contains all the single elements of VUM_User and not it as a single element (vumUser : VUM_User;) because the single elements are used in the visualization “VUM_UserManagement”; change it, means broken compatibility To maintain the compatibility with the old interfaces, you can find some copies from VUM_User to VUM_UserInternal, and viceversa. InOut: Name Type Comment wstUserName WSTRING(79) The user name which must be unique wstFullName WSTRING(79) A free full name of the user wstPassword WSTRING(79) The password which should be used to generate the md5hash md5Hash ARRAY [0..15] OF BYTE The md5hash of the password dwUserGroupID DWORD The user group id abyUserGroupIDs ARRAY [0..VUM_Constants.VISU_VUM_MAX_GROUPS_PER_USER] OF BYTE Additional user group ids if the user belongs to several groups byUserGroupCount BYTE Number of additional user groups bDeactivated BOOL Is the user deactivated bChgPassFirstLogin BOOL It must change the password at the first login
VisuFbClientManagerListener (FB) ¶ FUNCTION_BLOCK VisuFbClientManagerListener IMPLEMENTS VisuElems.IClientManagerListener Methods: ClientCreated ClientDestroyed Structure: ClientCreated (Method) ClientDestroyed (Method)
VisuFbClientManagerListener.ClientCreated (METH) ¶ METHOD ClientCreated Notification, that a client has been created. InOut: Scope Name Type Comment Input pClientData POINTER TO VisuElems.VisuStructClientData A pointer to a VisuStructClientData structure identifying the client, that has been created
VisuFbClientManagerListener.ClientDestroyed (METH) ¶ METHOD ClientDestroyed Notification, that a client has been destroyed InOut: Scope Name Type Comment Input pClientData POINTER TO VisuElems.VisuStructClientData A pointer to a VisuStructClientData structure identifying the client, that has been destroyed
VisuUserMgmt (FB) ¶ FUNCTION_BLOCK VisuUserMgmt IMPLEMENTS IVisuUserMgmt4 , IVisuUserManagement4, IExternalUserDatabaseProvider2, VisuElems.IRuntimeBasedUserMgt Properties: LastResult State CheckUserWithTempLockout CurrentUserLockoutTime Methods: ChangeLanguage ChangeUser ChangeUserPassword CheckLoginIntern CheckLoginWithGroupIDIntern FB_Init FillLanguageGroupNames FindUserByType GetCurrentUser GetGroupCount GetGroupFromID GetGroupIDFromIndex GetGroupIndexFromID GetGroupNameFromID GetLastError GetTextIdFromGroupID GetUserCount GetUserDBAsCopy GetUsers Initialize SetLastError SetNewUserDB ChangePassword ChangeUser3 ChangeUser4 ChangeUserPassword3 CheckAdminRights CheckGroups CheckLogin CheckLoginWithGroupID CheckTemporaryLockedUser EditUser GetUserCount3 GetUsers3 GetUsers4 Login LoginRts LoginToUserGroup LoginToUserGroups Logout LogoutRts LogoutUser NewSession RegisterExternalUserDatabaseProvider SetProvider UserCount Users prvCheckUser prvFreeResources prvGetFileName prvGetHashAsWString prvGetHashFromWString prvModifyUser prvReadLine prvReadToken prvReadUser prvReadUserGroup prvReadUsers prvReadUsers2 prvWriteFileChecksum prvWriteUser prvWriteValue Structure: ChangeLanguage (Method) ChangeUser (Method) ChangeUserPassword (Method) CheckLoginIntern (Method) CheckLoginWithGroupIDIntern (Method) FB_Init (Method) FillLanguageGroupNames (Method) FindUserByType (Method) GetCurrentUser (Method) GetGroupCount (Method) GetGroupFromID (Method) GetGroupIDFromIndex (Method) GetGroupIndexFromID (Method) GetGroupNameFromID (Method) GetLastError (Method) GetTextIdFromGroupID (Method) GetUserCount (Method) GetUserDBAsCopy (Method) GetUsers (Method) IRuntimeBasedUserMgt LogoutUser (Method) NewSession (Method) IVisuUserManagement CheckLogin (Method) CheckLoginWithGroupID (Method) RegisterExternalUserDatabaseProvider (Method) IVisuUserManagement2 LoginToUserGroup (Method) LoginToUserGroups (Method) IVisuUserManagement3 ChangePassword (Method) Login (Method) Logout (Method) UserCount (Method) Users (Method) IVisuUserManagement4 EditUser (Method) IVisuUserMgmt-methods SetProvider (Method) IVisuUserMgmt2 CheckTemporaryLockedUser (Method) CheckUserWithTempLockout (Property) CurrentUserLockoutTime (Property) IVisuUserMgmt3 ChangeUser3 (Method) ChangeUserPassword3 (Method) CheckAdminRights (Method) CheckGroups (Method) GetUserCount3 (Method) GetUsers3 (Method) LoginRts (Method) IVisuUserMgmt4 ChangeUser4 (Method) GetUsers4 (Method) LogoutRts (Method) Initialize (Method) LastResult (Property) SetLastError (Method) SetNewUserDB (Method) State (Property) private prvCheckUser (Method) prvFreeResources (Method) prvGetFileName (Method) prvGetHashAsWString (Method) prvGetHashFromWString (Method) prvModifyUser (Method) prvReadLine (Method) prvReadToken (Method) prvReadUser (Method) prvReadUserGroup (Method) prvReadUsers (Method) prvReadUsers2 (Method) prvWriteFileChecksum (Method) prvWriteUser (Method) prvWriteValue (Method)