If your application is a multi-user application and you want to control access of these users to the application then you have to do the following:
RegularUser object the system administrator has to specify values for the following attributes - login name, password and access level. Thus the new user of the system will be assigned the initial login name, the initial password and a particular access level.
If you want to assign additional attributes to the system users (for example, their personal details) you can add attributes to the RegularUser object or create a different business object representing the user. In the latter case you must add this business object to the predefined SystemUsers business object group (see the “Adding/Editing Business Object Groups” section). This will make sure that the new business object will have certain predefined attributes required by the system such as the login name, password and access level. All other steps should be the same – the only difference is that instead of creating instances of the RegularUser object you will be creating instances of your custom user object.
Most users have to log into the application in the operation mode before they can start using it (this includes system administrators as well). The only exception is “guest” users that can work with the system without having to log in (“guest users”, however, are heavily restricted in what they can do with the system). The standard way of logging into the system, which should be used by most users, is described in the table of “Simple User Login, Default”. System administrators can also use other entry points – all different ways of logging into the system are described in the “Login” section.
The initial password for users of the application can be set up by the system administrator – see 0810_setup_users. Once users log in using the credentials created by the system administrator, they can change these credentials provided that a menu item of the Change Login Details type has been configured for them.
AwareIM creates one default user of the Configuration Tool during installation. This user has the predefined login name “admin” and the predefined password “password”. Thus the configurator can log into the Configuration Tool using the credentials of the default user. The default password should be changed immediately once inside the Configuration Tool using the “Change Administrator Password” command.
If you want to create additional users of the Configuration Tool you have to do the following:
Administrator. AwareIM creates one default user of the Configuration Tool during installation. This user has the predefined login name “admin” and the predefined password “password”. Thus the configurator can log into the Configuration Tool using the credentials of the default user. The default password should be changed immediately once inside the Configuration Tool using the “Change Administrator Password” command.
If you make your application widely available over the Internet you may want to allow non-registered users to access the application too, i.e. allow access to those users who do not have to login. Such users can enter the system using the URL described in the “Guest Entry” section. All users who enter the system via this URL are automatically assigned “Guest” access level (see predefined access levels). By default this access level is very heavily restricted – you may want to relax these restrictions a little bit to allow guest users certain operations with the system. You may also want to include the menu items of the Login and Register User types into the visual perspective for the Guest access level to allow “guest users” to login or self-register – see the “Setting Menu Item Properties” section.
Make sure that you include menu item of the Register User type into the visual perspective for the Guest access level – see How to allow non-registered users to access the system. You can also define a special form in the business object that represents a user, which will be used for this occasion – see the “Defining Business Object Forms” section, 0810_setup_users.
You can use LoggedIn prefix – see the “Instance Prefixes” section. For example,
IF LoggedInLibraryMember.LoginName ='john smith' THEN ...
This is explained in the “Using LDAP/Active Directory for Login” section.
Your application may need to provide the “forgotten password” functionality. Usually this functionality asks the user one or more security questions and then compares their answers with predefined values. Then the system either tells/e-mails the password to the user or asks them to provide the new password. It is entirely up to you how you want to handle this. In order to define the forgotten password functionality you need to do the following:
login2.html. Alternatively you can provide your own login form and include the link to the following URL:logonFP.aw?domain=YourBusinessSpaceName
The link will automatically start the process that is marked as “handles forgotten password” functionality.
If you want your users to be able to login to AwareIM automatically using their existing Facebook, Twitter or Google accounts you need to do the following:
SystemSettings business object and add two attributes to this object to hold the values of the application ID and secret (that is, if you want system administrators to be able to do this at run-time)Then specify these attributes in the Settings dialog.
SystemUser group in the user drop down. Sometimes it may be necessary to store some values specific to the session of a particular user – for example, remember current selection of the user. You may want to use such values in rules, but you don’t want them to be persisted in the database, because they do not make sense when the user logs out.
AwareIM supports a concept of the “session object”. The instance of this object is created once per user – when the user logs in. This instance then becomes automatically available in Context of business rules (you don’t need to find it), for example
IF MySessionObject.CurrentSelection = 'abc' THEN ...
To define such an object you can create any object with any attributes as required and then set its Persistence property to “Not Persisted”. You should then tick the “Stores session values” checkbox to indicate that this object is the “session” object. Note that you can set only one business object as “session” object.
</accordion>