User profile#

User profile is a web application in which the user can perform the following actions:

  • view or edit their account data;

  • view recent security events (e.g. login events);

  • change password;

  • view and configure the methods of login confirmation (two-factor authentication);

  • view and configure the security keys;

  • view bound social networking accounts; bind new external accounts; unbind unnecessary accounts;

  • view the bound access devices, and unbind unnecessary devices;

  • view and revoke data access permissions issued by applications.

  • view security events.

Configuration of User profile includes configuring the way user attributes are displayed and change additional parameters.

Displaying user attributes#

The main page of myAlpari displays a block with account data. An example of this block is shown in the figure below.


The display of user data is defined by an HTML template. The template is a text file that is compiled using the Twirl templating engine. In the template it is necessary to place functions that allow the user to enter and edit data about himself/herself in the User profile.

The following functions are available in the template:

  • @show(attrName) - displays the attribute value;

  • @showStrings(attrName, values) - displays the array value;

  • @editAsText(attrName, readableName, errorMsg) - displays the value of the attribute and allows you to edit it (the errorMsg parameter is optional);

  • @editAsBoolean(attrName, readableName) - displays the value of the logical type (true/false) of the attribute and allows you to edit it;

  • @editAsStrings(attrName, readableName, values) - displays the value (array) of the attribute and allows you to edit it.

These functions use the following parameters:

  • attrName – is the name of the attribute defined in the Data sources section;

  • readableName - the name of the attribute, displayed to the user in the message (can be specified as attribute’s identifier from a message file or as a text);

  • values - values, in format key - description, where key is array value, the description - the readable value of the key (for example, ListMap("a" -> "value a", "c" -> "value c")), can be set as an identifier from the message file or as a text;

  • errorMsg - error description, which is displayed in case of erroneous value input (can be set as an identifier from a message file or as text). About message files see. Web interface texts. It is recommended to use message files if you need to support multilingualism.

Example of functions:

email attribute display#
@editAsText("email", "Email")
Displaying the phone_number attribute with the ability to edit it#
@editAsText("phone_number", "Mobile phone", "Error")
Displaying the boolean info attribute with the ability to edit it#
@editAsBoolean("info", "Subscription")
Display an array of strings massiv with the ability to edit it (selection of values)#
@editAsStrings("massiv", "Subscriptions", ListMap("a" -> "Promotions and bonus programs", "b" -> "Company news", "c" -> "Monthly event digest"))

An example of displaying an array of strings in the interface of the User profile web application is shown in the figure:


Additional parameters#

The following parameters can be set as additional:

  • welcome template - information that is displayed in the upper right corner of myAlpari. It is allowed to use substitution strings. For example, ${family_name} ${given_name} will allow to display the surname and first name of the user;

  • URL to follow after a successful logout from User profile;

  • period of audit events displayed to users (in calendar months from the current date);

  • template for displaying geodata in events (see Geodatabase). The template can be composed of the following elements containing country, region, city and coordinate information: ${ip_ctr}, ${ip_st}, ${ip_ct}, ${ip_lng}, ${ip_lat}, ${ip_rad}.

  • functions available to users, i.e. functions that can be activated by the user from the User profile. It is possible to enable or disable the following functions:

    • password change;

    • setting up a security question;

    • Security key management;

    • view and binding of social networks;

    • view of access devices;

    • view and revoke permissions;

    • view events;

    • HOTP generators binding;

    • TOTP generators binding;

    • configuring login confirmation by SMS code;

    • configuring push authentication;

    • security key binding.