We are looking at this feature as the first candidate to leverage the new ‘properties’ concept that Joram Wilander has been working on.
Configuring custom user properties
In the system console, a new view is proposed under Site Configuration > System properties
. This will house configuration for customizing properties for users, messages, and cards.
To start, we’ll focus on user properties. Below is the view for configuring these properties.
Standard user properties
Every Mattermost server has as set of standard user properties. These properties cannot be removed.
Profile Image (no visibility options)
Full Name (visibility default: Always show)
Username (visibility default: Always show)
Email (visibility default: Hide when empty)
ID (visibility default: Always hide)
The following configuration can be changed available for standard user properties
Visibility - admins can hide/show the property from user profiles (see below)
Link/unlink SAML or ADLDAP (if setup)
Custom user properties
Default custom user properties
By default, the following optional properties ship with user profiles. These properties can be removed or edited as needed. Additional properties can also be added here (see ‘Adding a new property’ below).
Nickname
Position
Adding a new custom user property
Under the Custom user properties section, users can click the + Add property
button to add a new property to the system.
Re-ordering custom properties
Each row in the custom properties table can be dragged to re-order. Re-ordering here will change the order properties are displayed in the user profile.
NOTE: Standard properties cannot be re-ordered.
Editing a property
Editing property name
Clicking on the property name in the table enables users to edit the name inline.
Note: User property names must be unique.
Editing property type
Custom properties can be clicked to open up the types menu to change the property type. This menu is searchable.
Editing property options
Admins can set predefined options for a property with Select, and Multi-Select property types. Admins can add and remove options directly in this configuration table.
More settings and actions
Rename: Sets focus on the name cell
Edit property type: Sets focus on the type cell and shows the type menu
Visibility: Choose whether the property shows in user profiles. Available options are:
Always show
Always hide
Hide when empty (default)
Allow new options: Choose whether end users can add new options for the property. This is only available for Select or Multi-Select property types.
Duplicate property: Creates a copy of the property with the same configuration and adds to the bottom of the table. Appends ‘2’ to the end of the property name.
Link to SAML or AD/LDAP: If SAML or ADLDAP are configured on the server, this option will be available and user properties can be linked.
Linking a property to SAML or AD/LDAP attribute
If the server is already configured with AD/LDAP or SAML sync, then the menu option to link a property becomes available.
LDAP and SAML can both be configured on the system and on properties. If so, we will show both options.
If “Enable Synchronizing SAML Accounts With AD/LDAP:” is turned on, we will only show the option to Link to AD/LDAP, not SAML.
Upon clicking this menu option, a modal opens to link the property with the AD/LDAP or SAML attribute.
When a value is entered, the attribute is checked and validated with AD/LDAP (or SAML).
When a property is linked, it will show ‘Linked with AD/LDAP’ in the row
Once a property is linked, it can be edited or unlinked by clicking ‘Edit link to AD/LDAP’ in the menu which will open the modal to make changes.
How a linked property appears in the list
A user can also click any of the tags to go to the edit screen for that linkage..
If a property is no longer valid and was changed in SAML/LDAP.
We can try to show that property in red, identifying that it was unlinked, and when a person opens up the modal, we can show the error.
And clicking on it can open this.
Changes to current LDAP/SAML Configuration
Currently various profile attributes are being linked to SAML and LDAP using the various options mentioned on each page.
Various attributes may already be synced on these pages, so we need to ensure that those are migrated once we switch these attributes to the System Properties page.
However, since we’ll be having the link option available in the System properties page, we do not need to duplicate these options there.
Thus, we will have a to add anchors to the new page.
Which can be done as follows:
AD/LDAP
SAML
Also proposing we encapsulate everything in the SAML section in a white container like we have in AD/LDAP, even if it is just under one and not broken out.
Displaying custom properties in the profile popover
Webapp
Standard properties will have reserved slots in the popover, while custom properties will display directly below the ‘Email’ property.