Knowledge / experience in the following areas are necessary / helpful:
The designing of the Identity Management UI is a project step during the design phase and should not be neglected. The usability is an essential factor for the acceptance of end-users and operators. The designing of the UI is a basic driver for a successful Identity Management project. That is because the manual processes like self-services, management-services, requests and approvals are based on the web based UI.
Also this denotes that usability should be an important aspect during the roll-out and after the deployment of enhancements of an Identity Management solution. The configuration of the controls of the UI is done in the design component called the IdM Console. The self-services, management-services and requests are represented in the task-structure of the IdM Console by web-enabled tasks, the approvals by approval tasks.
Both task types contain the tab “Attributes” where the presentation of the UI controls is defined. In this tab you can define which attributes shall be presented and how they are ordered. The following screenshot shows the tab “Attributes” of a web-enabled task which represents a request-UI of an external employee who is not managed by the human resource system.
The tab “Attributes” provides elements to configure the UI. The basic configuration is the order of the attributes which should be shown in the UI. This can be done by moving up and down in the tab “Attributes”. The attribute will be visible in the UI when the checkbox in the column “List” is active. The checkbox in the column “Mandatory” enforces that a value has to be entered in the UI before the request is saved. These attributes are marked with an asterisk (*) so the end-user notices that this is a mandatory field. If you want to set up an attribute as mandatory by default adjust the attribute’s property in the Identity Store schema. Check the column “Read only” if you do not want the user to enter anything in a specific field. The column “Default values / Caption” enables you to set default values for each control. If you use this column for structural elements, which will be described in the following paragraph, the column is used to define the caption of the element.
h3. Structural elements/ Attribute presentationBeside the attribute elements, the tab “Attributes” provide structural UI elements to improve the usability by separating, describing and accentuating the attribute elements. The following table shows the structural UI elements provided by the tab “Attributes”:
Label | Show text which is language dependent. This can be used to provide some additional information in the UI in form of a text. (Column “Default values / Caption”). |
Horizontal Line | Separates attributes from each other. |
Section | Cut the attribute list in separate sections. The text in this element is also fat. |
Column | Built up columns to show attributes side by side |
Tab | Built a separate tab in the UI. This element also provides a label for the tab which can be defined language dependent. (Column “Default values / Caption”) |
The structural UI elements can be defined with the context-sensitive menu in the tab “Attributes”. The order can be defined by moving up and down the elements in the tab “Attributes”.
Every attribute UI element in the tab “Attributes” is represented by a UI control which can be defined by the tab “Presentation” in the properties definition of each attribute in the Identity Store schema. The following screenshot shows the tab “Presentation” of the attribute MX_SALUTATION.
The “Web presentation options” define the control for each attribute. The following table shows the different “Web presentation”.
Display name | Enter the name that is used when displaying the attribute in the IdM UI. | |
Tooltip text | Enter a text that will appear as a tooltip for the field in the Identity Management UI. | |
Presentation | The presentation defines the type of control which should be used for the specific attribute. |
Single Line | A normal input field (one line). |
Multi Line | An input field with several lines. |
Single Selects * | Drop-down list where the user can select a single value. |
Boolean | A check box. |
Referral | Creates a reference to another entry in the identity store. A search interface is displayed, where the user can find the correct entry to create the reference. |
File | Displays a "Browse..." button that allows the user to find a file to attach. |
Lookup * | Displays the description corresponding to a given ID. |
Radio Button * | Displays a radio Button. |
Date | Displays a date control with date input assistance. |
The text is shown as email link. | |
Object Value Help * | A list box where the user can select a single value language dependent. |
Confirm input | Select this check box to specify that the user has to confirm the value entered in this field by re-entering it in a separate field. |
Hide input | Select this check box to specify that the input should be hidden (replaced by dots). This is typically used for passwords or other sensitive information. |
Show search field | Select this check box to specify that the presentation of this attribute will include a possibility to search for values in the list. This is particularly useful if there may be many values assigned to a multivalue attribute. If this is selected, no values will be shown in the user interface, until a search is done. |
Number of rows in table | Enter the number of rows you want to list for a multivalue attribute. The default value is 5. |
The “Task defaults” define the default setting of the attribute in the tab “Attributes” of the web-enabled task or the approval task. This can be done for the options “Read only” and “Mandatory” which have been described before.
h3. Attribute valuesEasy to use UIs should only show attribute values which are relevant for the process. The tab “Attribute values” provides options to define the legal values of an attribute. The following screenshot shows the task specific attribute properties of a web-enabled or approval task.
The following table describes the options provided by the tab “Attribute values” to define the legal values which are available for the attribute.
Value | Fixed values can be written in the tab “Attribute value”. |
SQL query | An SQL-query can be written to the tab “Attribute value” which selects the values which should be available in the UI. |
Value help | The values can be defined by a table and a unique key in this table. It is also possible to use an additional language key to show only country specific values of the loggedin person. |
Task | A filter-task defines the attribute values. In the filter task an SQL-query is defined. This option has the advantage to the option “SQL query” that SQL-query is not defined directly in the Identity Store schema or the web enabled task, it is defined in a separate and central filter task. |
The option “Value Help” sets the attribute value based on the values of the table MXI_ATTRVALUEHELP. Therefore the option “Value help” of the tab “Attribute values” has to be set like shown in the following screenshot.
This option provides a language dependent selection like shown in the following screenshot.
In opposition to “Values” and “Value help”, the options for “SQL query” and “Task” are based upon SQL queries which are more flexible. In these SQL-statements the following runtime variables can be used to read out the MSKEY of the logged-in identity (requester) and the identity the request is done for (assignee).
A simple example should give an idea why field validations improve the usability of IdM UI’s. The request for a user account for an external contains the “single-line” with the display name “Costcenter” which defines a costcenter the external is assigned to. The length of the attribute MX_COSTCENTER can be defined in very simple way in the tab “Validation” in the attribute property in the identity store definition like shown in the following screenshot.
If a requester enters a value with a different length an errors message is pointing on the wrong filled attribute. This improves the usability because the error messages of the field validations ensure that the web-enabled tasks are filled with legal values. Meaningful error-messages are presented to the requester. The error-messages of the tab “Validation” only point on the wrong attribute and cannot be customized. The error-messages based upon the Java Extension Framework can be customized and will be described soon in another blog named Extended use cases for input validations with SAP Identity Management.This is the first release of this blog, which should give an overview of important aspects when you create user interfaces for SAP IdM. Additional important aspects and new features will be blogged here.
Release 1.0 (Created on 27.06.2010)