UMC MAN V1 0 en
UMC MAN V1 0 en
Basics of UMC 2
Installing and configuring
UMC 3
References 6
Programming and Operating Manual
11/2023
A5E52954435-AA
Legal information
Warning notice system
This manual contains notices you have to observe in order to ensure your personal safety, as well as to prevent
damage to property. The notices referring to your personal safety are highlighted in the manual by a safety alert
symbol, notices referring only to property damage have no safety alert symbol. These notices shown below are
graded according to the degree of danger.
DANGER
indicates that death or severe personal injury will result if proper precautions are not taken.
WARNING
indicates that death or severe personal injury may result if proper precautions are not taken.
CAUTION
indicates that minor personal injury can result if proper precautions are not taken.
NOTICE
indicates that property damage can result if proper precautions are not taken.
If more than one degree of danger is present, the warning notice representing the highest degree of danger will
be used. A notice warning of injury to persons with a safety alert symbol may also include a warning relating to
property damage.
Qualified Personnel
The product/system described in this documentation may be operated only by personnel qualified for the specific
task in accordance with the relevant documentation, in particular its warning notices and safety instructions.
Qualified personnel are those who, based on their training and experience, are capable of identifying risks and
avoiding potential hazards when working with these products/systems.
Proper use of Siemens products
Note the following:
WARNING
Siemens products may only be used for the applications described in the catalog and in the relevant technical
documentation. If products and components from other manufacturers are used, these must be recommended or
approved by Siemens. Proper transport, storage, installation, assembly, commissioning, operation and maintenance
are required to ensure that the products operate safely and without any problems. The permissible ambient
conditions must be complied with. The information in the relevant documentation must be observed.
Trademarks
All names identified by ® are registered trademarks of Siemens AG. The remaining trademarks in this publication
may be trademarks whose use by third parties for their own purposes could violate the rights of the owner.
Disclaimer of Liability
We have reviewed the contents of this publication to ensure consistency with the hardware and software
described. Since variance cannot be precluded entirely, we cannot guarantee full consistency. However, the
information in this publication is reviewed regularly and any necessary corrections are included in subsequent
editions.
1 Cybersecurity information..................................................................................................................... 9
2 Basics of UMC ...................................................................................................................................... 11
2.1 Introduction to UMC .......................................................................................................... 11
2.2 Abbreviations .................................................................................................................... 13
2.3 Definitions ......................................................................................................................... 14
2.3.1 UM domain........................................................................................................................ 14
2.3.2 UM user............................................................................................................................. 14
2.3.3 UM group .......................................................................................................................... 15
2.3.4 UM role ............................................................................................................................. 16
2.3.5 UM function rights............................................................................................................. 17
2.3.6 Computer roles .................................................................................................................. 18
2.3.7 Provisioning scenarios........................................................................................................ 22
2.3.8 Claim key........................................................................................................................... 22
3 Installing and configuring UMC ........................................................................................................... 23
3.1 Prerequisites ...................................................................................................................... 23
3.1.1 General recommendations and requirements ..................................................................... 23
3.1.2 Supported browsers ........................................................................................................... 24
3.1.3 Supported operating systems ............................................................................................. 24
3.1.4 Microsoft Visual C++ .......................................................................................................... 24
3.1.5 Identity Provider prerequisites ............................................................................................ 25
3.1.6 Requirements of Microsoft IIS Manager .............................................................................. 25
3.1.7 Configuring the HTTPS protocol in Microsoft IIS Manager .................................................... 27
3.2 Installing UMC ................................................................................................................... 29
3.3 Configuring UMC ............................................................................................................... 30
3.3.1 Configuring standalone UMC scenario ................................................................................ 30
3.3.2 Configuring UMC scenario.................................................................................................. 31
3.3.2.1 Configuring the primary UMC ring server............................................................................ 32
3.3.2.2 Configuring the secondary UMC ring server ........................................................................ 33
3.3.2.3 Configuring UMC web components .................................................................................... 34
3.3.2.4 Configuring the UMC station client ..................................................................................... 61
3.3.2.5 Configuring Simatic Logon Remote Authentication (SLRA) .................................................. 62
3.3.2.6 Configuring Desktop Single Sign-on (DSSO) ........................................................................ 63
3.3.2.7 Configuring Global User Management (GUM) ..................................................................... 63
3.4 Configuring the identity provider........................................................................................ 65
3.4.1 High availability / reliability general issues .......................................................................... 65
3.4.2 Health state service............................................................................................................ 66
3.4.3 NLB and health state integration ........................................................................................ 67
3.5 Updating UMC ................................................................................................................... 70
3.5.1 General Recommendations ................................................................................................ 70
3.5.1.1 Migrating IdP configurations .............................................................................................. 71
3.5.2 Updating the secondary UMC ring server............................................................................ 72
Overview
UMC allows you to set up a central user management, i.e. you can define and manage users and
user groups across software and devices. Users and user groups can also be transferred from
Microsoft Active Directory. You can import the central users and user groups into various
applications.
An efficient user management is an essential part of any security concept. The user
management of UMC allows for the
plant-wide, central management of users with optional connection of Microsoft Active
Directory. Thanks to the specific assignment of UM roles and rights to individuals,
maintenance is minimized while achieving a high degree of transparency. The central
user management thus forms the basis for an efficient and integrated management of
personalized access rights in the plant. In this way, security risks can be significantly reduced.
Note
The concept of User Management and Access Control (UMAC) provides for user management to
take place in UMC but rights to be managed locally in the application.
2.2 Abbreviations
Abbreviation/acronym Explanation
AD Microsoft Active Directory
CSV Comma Separated Values (file format)
DSSO Desktop Single Sign-on
FQDN Fully qualified domain name
GUM Global User Management
ID Identifier
JSON JavaScript Object Notation (data format)
IdP Identity provider
MES/MOM Manufacturing Execution System/Manufacturing
Operation Management
NLB Network load balancing
SADS Secure Application Data Support
SID Security identifier
SLRA Simatic Logon Remote Authentication
TOTP Time-based one-time password
UM User management
UMC User Management Component
2.3 Definitions
2.3.1 UM domain
A UM domain (user management domain) is a collection of computers that share a common
directory database. A UM domain provides access to the centralized user and group accounts
that are maintained by the UM domain administrator.
Note
UM domains are entities other than Windows domains, which are defined at the operating
system level.
2.3.2 UM user
A UM user (User Management user) is a user in the UMC database identified by a user name. It
should be noted that UM users are entities other than local users, which are defined at the
operating system level.
UM users can be assigned customer-specific attributes. An example of such attributes are
common user properties such as telephone number, department and so on.
For Secure Application Data Support (SADS), authorized users can be granted access to
encrypted application data so that they can decrypt it with specific Subject Keys.
UM user types
A distinction is made between three UM user types:
• UMC users created in UMC or created via a CSV file.
Each user created in UMC has an associated password. Empty passwords are not allowed.
• AD users imported into UMC via the UMX utility or the UMC Web UI. In this case, the user
name follows the pattern <ADdomainName>\ <ADuserName>.
Users imported from Active Directory authenticate themselves to Active Directory and do not
have a UMC password.
For information on the offline availability of AD users, see section "Computer roles
(Page 18)".
• Local users imported into UMC via the UMX utility. In this case, the user name follows the
pattern <machineName>\ <localUserName>.
Imported local users only authenticate themselves to Windows on the computer they are
working on. They can only be used for configuration purposes, for example for the
assignment to a Windows service that is running on the computer.
Offline user
When creating a UMC user, this user can be marked as offline. The "UP Service" checks whether
the offline user exists in Active Directory. If the user is there, the user data is synchronized and
the user is online. Otherwise he remains offline.
Note
Users who have been created as "offline" via the umx utility are basically activated. Therefore,
they can perform all the actions that are allowed by their UM function rights.
Description Maximum
Number of UM roles assigned to a UM user 50
Number of UM groups assigned to a UM user 50
2.3.3 UM group
A UM group (User Management group) is a container with users that is identified by a name. It
should be noted that UM groups are different entities than Windows groups, which are defined
at the operating system level.
UM group types
There are two types of UM groups:
• UMC groups created in UMC or created via a CSV file.
• AD groups (Active Directory groups) imported into UMC via the UMX utility or the UMC Web
UI.
Offline groups
When creating a UMC group, it can be marked as offline. The "UP Service" checks whether the
offline user exists in Active Directory:
• If the group exists, the group data is synchronized. The AD users who are members of the
group are imported into UMC and the group changes to online.
• If the group does not exist in the Active Directory, it remains offline.
The group name must follow the AD pattern "<ADdomainName>\<ADgroupName>". The
"UP Service" searches for the AD group by its Common Name (CN).
If necessary, the manner in which the "UP Service" is to query the AD group and import
its users into UMC can be configured using the description field of the created group. The
description must then conform to this pattern:
{{Q=<ldap query>
Here {{Q= is a fixed prefix and <ldap query=> is the query in question. The group name
can then be "<ADdomainName>\ <GroupName>", whereby the entry for "GroupName" can
be selected by the user.
Description Maximum
Number of UM groups assigned to a UM user 50
Number of UM roles in a UM group 50
Number of UM users in a UM group 1000
2.3.4 UM role
A UM role (User Management role) includes a number of UM function rights. UM function rights
allow a user to perform certain functions. They are assigned to UM roles so that UM users with a
specific UM role are allowed to perform the operations assigned to that UM role. UM roles can
be associated with UM users or UM groups so that all UM users in such a UM group inherit the
UM function rights of the UM role. With the help of the UM roles, the UM function rights are
defined in UMC, for example, whether a UM user is allowed to configure UMC or not.
The following UM roles are automatically created by the system when the UMC is configured:
• UM role "Administrator": Integrated administrator role that is allowed to perform any
operation.
This UM role cannot be assigned to a UM group. It can only be assigned to a UM user if the
UM user who makes the assignment also has the UM role "Administrator". You cannot delete
the UM role "Administrator". Only users with the UM role "Administrator" can edit other UM
users with this UM role. Account policies have no effect on the integrated administrator role.
• UM role "UMC admin" Can manage UM users, UM groups, and all other UM entities.
• UM role "UMC Viewer": Can access the configuration of the user management but cannot
make any changes.
Name Description
UM_ADMIN Allows the execution of the following functions:
• Viewing the data from the UMC database, such as UM users or UM groups
• Configuring the data in the UMC database
• Importing and exporting of data using a file
• Registering UMC station clients
• Executing all UMX commands
UM_VIEW Allows the viewing of data for UM users, UM groups, UM roles and account policies from the
UMC database.
UM_RESETPWD Allows the resetting of another UM user's password. In addition, the UM function right
"UM_VIEW" is required.
UM_UNLOCKUSR Allows the unlocking of another UM user. In addition, the UM function right "UM_VIEW" is
required.
UM_ATTACH Allows the connection of a computer to a UM domain. This computer is then promoted to the
UM role "UM Agent".
UM_JOIN Allows the promotion of a computer to the "UM Server" computer role. In doing so, it is con‐
nected to the UM domain if necessary. This UM function right includes the UM function right
"UM_ATTACH".
UM_RESETJOIN Allows the demotion of a computer from the computer role "UMC Ring Server" or "UMC Server"
to the UM role "UMC Agent".
UM_IMPORT Allows the import of a UM configuration from a package. In addition, the UM function right
"UM_VIEW" is required.
UM_EXPORT Allows the export of a UM configuration to a package. In addition, the UM function right
"UM_VIEW" is required.
UM_BACKUP Allows the backup a UM configuration as a full backup.
UM_EXPORTCK Allows the export of claim keys.
UM_EXPORTDK Allows the export of domain keys.
UM_RA Allows login using a remote authentication.
UM_RINGMNG Allows the promotion of a computer to the UM role "UM Ring Server". In doing so, it is connected
to the UM domain if necessary.
UM_ADSYNC Allows the execution of the synchronization of the AD provisioning service in the background.
UM_VIEWELG Allows the viewing of event log data. In addition, the UM function right "UM_VIEW" is required.
UM_CLAIMAUTH Allows the creation of an identity from a valid claim.
UM_REGCLIENT Allows the registering of clients for the UMC station.
Note
The UMC agent does not allow any engineering tasks, except for encryption activation.
The main differences between the three roles mentioned above are listed in the following
table.
The UMC ring server to which the other UMC ring servers send requests to write to the UMC
database (write candidate) is called the master ring server. Both the primary UMC ring server
and the secondary UMC ring server can be the master.
If the primary server is the master, writing is enabled and the computer can write to the UMC
database.
In the event of an error, the secondary UMC ring server becomes the master ring server
without activated writing (safe mode). If safe mode is switched off with the corresponding
umx command, the secondary UMC ring server becomes the master and writing is activated.
Note that in this case certain actions in the UMC system configuration are not possible, e.g.
editing the allowlist.
Note
If you want to manage AD users, the UMC ring server and the UMC server computers must be
connected to the AD domain.
Indicates that the functionality is only available when the system is connected to the UMC
server
UMC runtime server UMC server UMC ring server UMC agent
Execute TIA user authen‐
tication
Local individual changes
Change password
Authentication to Active
Directory
Attach/connect to UM
domain (acts as a proxy for
agents)
Potential master
Can sign authentication
object
Transfer UMC configura‐
tion (only when connected
to the ring)
UMC runtime server UMC server UMC ring server UMC agent
Can host identity provid‐
er/remote authentica‐
tion or
UMC Web UI
Number of instances max. 150 max. 4 1-2 max. 25
Offline authentication/
write protection for con‐
figuration
Ring failover recovery
Store and forward elec‐
tronic log
Protocol forwarding
Import local Windows
users
Import AD user/group
AD cache
SLRA
DSSO
Note
Enable and disable cache
To enable the cache, proceed as follows:
1. Open the "Account policies" menu.
2. Switch to the "Password lockout, duration and reuse" tab.
3. Set a value >0 in the "Number of days before Active Directory cache expires" field.
To disable the cache, set the value "0" in the "Number of days before Active Directory cache
expires" field.
The access data in the cache are transferred to the UMC database as "salted hashes". The
cache is provided or updated during authentication or a password change. It is maintained in
the primary UMC ring server and forwarded to the secondary UMC ring server and the UMC
servers. If authentication with AD fails in the event of a specific network error, UMC performs
authentication based on the information in the cache.
The cache for user passwords has a configurable expiration date. A new global policy is
available for enabling the cache and setting its expiration date. Permitted values are: 30-250
days (1-8 months). The default is 0, which means that the cache is disabled. The policy can
be set up using UMX, the UMC Web UI and a JSON import and is managed centrally. The
password cache expires if there is no login for this user within the specified time period. The
period of validity can be updated in increments of 2 days.
If the cache is disabled, the passwords are no longer stored in the cache and are no longer
updated. However, the passwords already stored in the cache (when the policy is enabled)
are not removed from the cache.
The update of the password cache for AD users is an engineering action. Therefore:
• Before the password is forwarded, it must also be updated on the UMC ring server. If the
authentication or password change is performed on a server, the new password is only
updated when the UMC ring server is reached.
• The propagation is delayed for at least 30 seconds (as for the other engineering actions).
• If the AD user password is changed via UMC, no additional login is required for offline
availability on all stations.
Operating systems
• The operating system must be updated with the latest security patches to improve the
reliability and security of the system.
• The operating system must be based on the Windows NT kernel.
• UMC cannot be installed on Windows Vista or older Windows versions.
Browser
• The browser used to display the UMC Web UI must allow the display of popups.
• When using the UMC Web UI, do not select the "Prevent this page from creating more
dialogues" option. The selection of this option will result in malfunctions of the UMC Web UI.
• Disable the "Autocomplete" option in the settings of your browser.
• Disable the option to save passwords in the settings of your browser.
Time synchronization
The time synchronization of the computer in a UMC network is an essential requirement,
without which some important functions could be impaired.
In particular, the authentications performed through tickets can fail in the absence of time
synchronization, since the validity and duration of the tickets themselves are based on their
creation date.
For example, functions that use this type of authentication internally, such as SADS
encryption and decryption, may not work properly. Connecting UMC servers and clients in
the network would also fail due to a certificate validation error.
The time synchronization affects all UMC servers and clients, without distinction of role.
Note
In the BUNDLE and SIWA installation programs, the redistributable packages are installed
automatically.
Note
The UMC web services use cookies to ensure correct functioning. No warning is displayed
regarding the use of cookies, since the application may not be used as an open web service,
which is available, for example, on the Internet.
Windows 10
.NET Framework 3.5
.NET Framework 4.8 Advanced Services
• ASP.NET 4.8
• WCF services
– TCP port sharing
Windows Server
Web server
• General HTTP features
– Default document
– Directory search
– HTTP error
– Static content
• System status and diagnostics
– HTTP logging
• Power
– Static content compression
• Security
– Request filtering
– Windows authentication
• Application development
– .NET Extensibility 4.6
– ASP.NET 4.6
– ISAPI extension
– ISAPI Filters
Management tools
• IIS management console
• IIS management scripts and tools
• Management service
.NET Framework 3.5 Features
• .NET Framework 3.5 (includes .NET 2.0 and 3.0)
.NET Framework 4.6 Features
• .NET Framework 4.6
• ASP.NET 4.6
• WCF services
– TCP port sharing
• Windows PowerShell
– Windows PowerShell 5.1
– Windows PowerShell 2.0 Engine
– Windows PowerShell ISE
Recommendation
.NET Framework 4.6 Features
• Windows Defender Features and WoW64 Support
– Windows Defender
– GUI for Windows Defender
Requirements
A valid SSL certificate has been acquired from a certificate authority or a self-signed SSL
certificate has been created.
Procedure
1. Open the IIS Manager.
2. In the tree topology on the left, select the node of the website you have configured.
3. Right-click on the node and select "Edit bindings".
4. Click "Add".
The following dialog opens.
Note
Setup limitations
The UMC installation fails when it is installed on a Windows AD Domain Controller because local
groups that were created at the end of the setup phase cannot be created on these computers.
Requirements
• The requirements for the installation for UMC are met. You can find additional information in
the section "Prerequisites (Page 23)".
• You have administrator rights on Windows.
Procedure
1. Run the "Start.exe" file in the UMC installation directory.
Before the installation can be performed, a restart of your computer is required.
After your computer restarts, the installation program will open again.
2. Select the installation language and click "Next".
3. Select the components to be installed.
4. If necessary, change the target directory for the installation and click "Next".
5. Read and confirm the license terms and security information by selecting the check boxes.
6. Click "Next".
An overview of the product configuration is displayed.
7. Click "Install".
Result
UMC is installed on your computer.
To use UMC, you must first configure UMC (Page 30).
HTTP configuration
Note
We strongly recommend that you enable HTTPS in plant environments.
If the HTTPS protocol has been configured, HTTP cannot be used.
Requirements
• UMC has been fully installed.
• IIS has been configured to work with the HTTPS protocol.
• When managing Active Directory users, the specified Windows user has the following
requirements:
– Active Directory access rights
– Write access to the UMC program data subfolder "\CONF" (e.g.
"C:\ProgramData\Siemens\UserManagement\CONF")
Alternative: Membership of the Windows group "UM Service Accounts"
Procedure
1. In the "Bin" or "Wow\bin" subdirectory, right-click UMCONF and select "Run as administrator".
2. Follow the displayed configuration steps in the interactive mode of UMCONF:
– Create a UMC domain by specifying a name with only alphanumeric characters.
– Create the root user "Administrator" by specifying a user name with only alphanumeric
characters and a password that complies with your organization's password policies.
– Link a Windows user who is either a member of the "UM Service Accounts" group or has
administrative rights for the "UMC Service" service by entering the user name .\ and the
corresponding password.
If the virtual account "NT SERVICE\UMC Service" is specified, no password entry is required.
– (Optional) To manage AD users within UMC, specify a Windows user by entering the
domain user name and password, as described in the requirements.
3. Right-click the "IdP_WebUI_configurator.bat" file under "C:\Program
Files\SIEMENS\UserManagement\BIN" when the default installation folder is selected, and
select "Run as administrator".
Result
The UMC Web UI and IdP are configured.
Additional configurations
• Configure Firefox for the integrated Windows authentication. This process is not required for
other browsers.
• Perform additional identity provider configuration.
• If Secure Application Data Support (SADS) is required, it must be enabled via the UMX utility
by running the following command: "umx -AP -setakp". For more information, see the UMX
reference.
• If you need SLRA support, you can find more information in the "Configuring Simatic Logon
Remote Authentication (SLRA) (Page 62)" section.
• If you need Desktop Single Sign-on, you can find more information in the "Configuring
Desktop Single Sign-on (DSSO) (Page 63)" section.
Requirements
• If you want to manage AD users, the UMC ring server and the UMC servers must be connected
to the AD domain.
• Check if the connection to TCP/4002 is enabled on all computers (or disable the firewall for
"um.Ris.exe", the UM process that is responsible for communicating with UM computers).
• Check if the connection to TCP/4004 is enabled on all computers (or disable the firewall for
"um.ssrem.exe", the UM process that listens on this port).
• The firewall configuration on UMC servers and UMC ring servers must be configured to allow
inbound access for the following ports:
– Port for HTTP (80 by default)
– Port for HTTPS (443 by default)
Requirements
• The complete UMC installation has been installed.
• Required only to manage AD users: The Windows user specified in optional step 2 to manage
AD users requires:
– Active Directory access rights
– Write access to the UMC folder "C:\ProgramData\Siemens\UserManagement\CONF" or
alternatively membership in the Windows group "UM Service Accounts".
Procedure
1. Right-click UMCONF in the "Bin" or "Wow\bin" subdirectory, for example, "C:\Program
Files\Siemens\UserManagement\Bin" and select "Run as administrator".
2. Follow the guided configuration in the interactive mode of UMCONF:
– Create a UM domain by specifying a name with only alphanumeric characters.
– Create a UM user management user with the UM role "Administrator" by specifying a user
name with only alphanumeric characters and a password that conforms to your
organization's password policies. You can find additional information under Password
strength (Page 162).
– Link a local user who is either a member of the "UM Service Accounts" group or has
administrative rights for the "UMC Service" service by entering the user name .\ and the
corresponding password.
– Optional: To manage AD users, specify a local user as described under requirements by
entering the domain user name and password.
Note
If Secure Application Data Support (SADS) is required, refer to the UMX reference (Page 247).
The user assigned to the "UMC Service" service may only be changed via UMCONF.
Requirements
• You must have already created a UMC ring server.
• A complete UMC installation has been installed on the computer.
Procedure
To configure a secondary UMC ring server, proceed as follows:
1. Join the server using the UMCONF program.
2. If you have configured AD provisioning on the primary UMC ring server, you must also
configure it on the secondary UMC ring server.
Additional functions
Additional provisioning configurations can also be made.
To add the service layer to the allowlist, log in to the UMC Web UI with the UM role
"Administrator".
After installing UMC, if necessary, you can configure the web components as described below.
Requirements
• The computer is configured as a UMC ring server or UMC server.
• If the computer is not the primary UMC ring server, you must add the service layer to the
allowlist by logging in to the UMC Web UI with the user with UM role "Administrator" or
via UMCONF on the primary ring server.
• The firewall configuration on UMC servers and UMC ring servers must be configured to allow
inbound access either through the port used for HTTP (80 by default) or by the port used for
HTTPS (443 by default).
• If you use the HTTPS protocol, IIS must be configured to work with the HTTPS protocol.
Configuration types
• Via a script: The manual method can be used for HTTPS. The script automatically configures
the web components.
• Manual: The manual method can be used for HTTP or HTTPS. You can use the method to
structure your own custom configuration script.
Note
If you make a change to the IIS configuration after starting the configuration script
"IdP_WebUI_configurator.bat" or if you have configured UMC without this script, you must reset
the configuration of the web components and only then configure the system again.
Note
• If the user under which the script is executed is a local Windows user, retrieval of the Fully
Qualified Domain Name (FQDN) is not possible. As a result, the IdP's registry key is
configured with only the computer name and not the domain name.
• If you have configured a site in IIS with a name that is not "Default website", you must open
a command prompt as an administrator in the installation folder of the BAT file and specify
the name of the site as the first parameter: E.g. C:\Program
Files\Siemens\UserManagement\BIN>IdP_WebUI_configurator.bat "Your website name".
• If you want to specify a specific "reverseProxy" value that is different from the value
automatically retrieved in the script and you want to use it in the identity provider
configuration, you can specify it as the second parameter when starting the
"IdP_WebUI_configurator.bat" script: for example, C:\Program
Files\Siemens\UserManagement\BIN>IdP_WebUI_configurator.bat "Your website name"
"Your reverse proxy address".
• When using an NLB, specify the cluster name/address instead of the reverse proxy address as
the second parameter.
• By default, the identity provider process "node.exe" is monitored at port 8443. If you want to
change this default value, you can specify the desired port value as the third parameter when
starting the IdP_WebUI_configurator.bat script: E.g. C:\Program
Files\Siemens\UserManagement\BIN>IdP_WebUI_configurator.bat "Your website name"
"Your reverse proxy address" "Port number".
• If you want to specify a particular parameter while keeping the default values of the previous
parameters, you must pass an empty string for the parameters you do not want to adjust. For
example, if you only want to specify a certain port number without changing the IIS site
name and the reverse proxy address, you have to call the script
"IdP_WebUI_configurator.bat" in this way: C:\Program
Files\Siemens\UserManagement\BIN>IdP_WebUI_configurator.bat "" "" "Port number". The
empty quotes indicate an empty value for the parameters that are transferred to the script.
General recommendations
The web components can be configured in any UMC ring server and/or in any UMC server. To
ensure high availability and reliability of the IdP, we recommend that you install and configure
it on multiple computers and configure the high availability/reliability of the IdP.
Requirements
• IIS has been previously configured to work with the HTTPS protocol.
• The computer is configured as a UMC ring server or UMC server.
Procedure
1. On all servers on which you want to configure the web components, right-click the
"IdP_WebUI_configurator.bat" file, located at C:\Program
Files\SIEMENS\UserManagement\BIN when the default installation folder was selected, and
select "Run as administrator".
2. Configure your browser for the integrated Windows authentication (optional).
3. Configure the smartcard authentication (optional).
4. Perform additional identity provider configuration (optional).
Requirements
• The requirements for the identity provider (Page 25) are met.
• The computer is configured as a UMC ring server or UMC server.
3. Double-click "Authentication".
5. Right-click the "IPSimatic Logon" node and select "Add application" to add the WinAuthSite
application. The path is, for example, "C:\Program
Files\Siemens\UserManagement\web\ipsimatic-logon\WinAuthSite". Then, click "OK".
6. In the tree topology on the left, select the "WinAuthSite" node and set the following
authentication settings.
Requirements
The configurations of IIS for the integrated Windows authentication have been performed.
Procedure
1. In Firefox, call up the URL "about:config".
2. Click the "I'll be careful, I promise!" button.
3. In the "Search" dialog box, search for the "network.negotiate-auth.allow-non-fqdn"
preference.
4. Double-click the property to set the value to "true".
5. Close the window.
Note
Diagram explanations
• Some values exist only in the local configuration file.
• Some values of the central configurations cannot be overwritten by the local configuration
file.
Note
• The values of "clusters", "enableWhitelist", "reverseproxy", and "reverseproxyPort" cannot be
overridden by the local configuration if they are specified in the central configuration.
• To manually configure the IdP, you need to set the values of the fields: "UMCDllFolderPath",
"reverseProxy", and "idpListenerPort".
• For the changes made to the local configuration file to take effect, you must restart the UMC
service.
{
"private": {
"UMCDllFolderPath": "C:/Program Files/Siemens/UserManagement/
bin",
"useHttps": false,
"httpsServerKey": "",
"httpsServerCert": "",
"configurationInterval": 60000,
"idpListenerPort": 8443,
"logs": {
"winston": {
"maxFiles": "2",
"maxSize": "1000000",
"traceLevel": "error"
}
}
},
"reverseProxy": "https://IDPTEST",
"reverseProxyPort": "",
"override" : false
}
The "logs" section is used to create a unique configuration point for the logging systems.
The "Winston" section provides the configuration for the "node.js" identity provider server
protocol. Messages are logged in the "umc_sso_server.log" file. The corresponding properties
are described in the following table:
"reverseProxy": "https://mymachine",
"reverseProxyPort": "",
"languages": {
"de-DE": {
"id": "de-DE",
"name": "Deutsch"
},
"en-US": {
"id": "en-US",
"name": "English US"
}
},
"authenticationOptions": {
"autoLogin": "",
"disableCredentialsLogin": false,
"enableFlexAuth": true,
"enableIWA": false,
"enablePKI": true
},
"override": true
}
"enablePKI": false
},
"clusters": 1,
"cookieFlags": {
"httpOnly": true,
"samesite": "none",
"secure": true,
"domain": ""
},
"cookiePath": "/",
"disclaimerContent": {
"de-DE": "Sie sind in eine geschützte Umgebung
eingetreten. Um die Umgebung zu verlassen, müssen Sie sich
abmelden. Das Schließen des Browsers ist nicht ausreichend, um
zu gewährleisten, dass Sie die Umgebung verlassen haben.\n<br/><br/
>\n<b>Sicherheitsinformationen</b>\n<br/>\nUm Anlagen, Systeme,
Computer und Netzwerke vor Internetbedrohungen zu schützen, ist
es nötig, ein holistisches Konzept für die industrielle Sicherheit
auf dem neuesten Stand zu implementieren und kontinuierlich
aufrechtzuerhalten. Produkte und Lösungen von Siemens stellen nur
ein Element eines solchen Konzepts dar. Weitere Informationen über
die industrielle Sicherheit finden Sie unter http://www.siemens.com/
industrialsecurity.",
"en-US": "You have entered a protected environment. To
exit, you must log out: closing the browser is not sufficient
to guarantee that you have exited the environment.\n<br/><br/>
\n <b>Security information</b> \n<br/> \nIn order to protect
plants, systems, machines and networks against cyber threats,
it is necessary to implement – and continuously maintain – a
holistic, state-of-the-art industrial security concept. Siemens
products and solutions only form one element of such a concept.
For more information about industrial security, please visit http://
www.siemens.com/industrialsecurity.",
"es-ES": "Ha entrado en un entorno protegido. Para
salir es necesario cerrar sesión, no es suficiente cerrar el
explorador para garantizar que se ha salido del entorno.\n<br/><br/
>\n<b>Información de Seguridad</b>\n<br/>\nPara proteger plantas,
sistemas, máquinas y redes contra ciberamenazas, es necesario
implementar -y mantener constantemente- un concepto de seguridad
industrial holística de última generación. Los productos y
soluciones Siemens constituyen solamente un elemento de dicho
concepto. Para obtener más información acerca de la seguridad
industrial, visite: http://www.siemens.com/industrialsecurity.",
"fr-FR": "Vous êtes dans un environnement protégé.
Pour sortir, vous devez vous déconnecter: la fermeture de
"fr-FR": {
"id": "fr-FR",
"name": "Français"
},
"it-IT": {
"id": "it-IT",
"name": "Italiano"
},
"zh-CN": {
"id": "zh-CN",
"name": "中文"
}
},
"maxCachedSessionsPerUser": 100,
"reverseProxy": zero,
"reverseProxyPort": zero,
"sessionAge": 1800000,
"ssoService": "/umc-sso"
},
"label": "$default$",
"version": 0
}
"secure": true,
"domain" : "umdom1.net"
},
"authenticationOptions":{
"enableIWA":true,
"enablePKI":false,
"enableFlexAuth":true,
"enable2FactorAuth":false,
"disableCredentialsLogin":false,
"autoLogin":""
}
},
"label": "$default$",
"version": 2
}
]
}
Workflow
• Configure the infrastructure for the smartcard authentication.
• Configure the smartcard web application (not required if UMC is configured via a script).
• Enable the login via smartcard authentication either locally or centrally.
• Set the account policies for smartcard authentication.
Note
The following recommendations for the IIS configuration must be considered:
• A check of the blacklist must be supported.
• The certificate for the "Client Authentication Issuer" in the certificate manager must be
installed.
• The store of the trusted root certificate authorities may only contain self-signed certificates.
• The use of the "Client Authentication Issuer" on port 443 or on the IdP port must be enabled.
Procedure
1. Open the IIS Manager.
2. Right-click the "IPSimatic Logon" node and select "Add application" to add the "PkiAuthSite"
application. For example, the path is C:\Program
Files\Siemens\UserManagement\web\ipsimatic-logon\PkiAuthSite. Then, click "OK".
3. Select the "PkiAuthSite" node in the tree topology on the left side.
5. To check whether the smartcard authentication application has been configured correctly,
open a browser instance.
6. Insert a smartcard into the smartcard reader.
7. Open the page at the following address: https://<address>/umc-idp/pkiauthsite/info.aspx.
A JSON file opens with smartcard information.
If the JSON file is not displayed correctly, we recommend that you enable detailed error
messages in IIS and carefully check the configuration of the smartcard authentication
infrastructure.
Procedure
1. To configure data synchronization, go to the "Account policies" page of the UMC Web UI with
the appropriate access rights.
2. Define the field to be retrieved from the smartcard to identify the user in UMC.
3. Select one of the following authentication options:
– Simple authentication (no alias): In this case the selected field, CN (common name),
subject, alternative subject, is compared with the UMC user name. If these match, the
user is authenticated.
– Alias authentication: In this case, you must define an alias for a user in the user details
dialog. The value stored in the field is compared with the UMC alias. If these match, the
user is authenticated.
For more information, see Managing account policies (Page 123).
Requirements
• A UMC web component is installed and configured on your computer
• IIS is not configured for HTTPS
See also
Enabling two-factor authentication (Page 56)
Using two-factor authentication (Page 58)
Workflow
• Enable SADS in the account policies via the UMC Web UI or UMX.
• Enable the two-factor authentication for the user in their account policies via the UMC Web
UI or enable the encryption for the user via UMX.
3. On the "Advanced" tab, select the "Enable secure application data support for users and
groups" checkbox.
At application level, SADS can be enabled via UMX or the UMC Web UI by changing an
account policy.
See the UMCONF reference for more details.
4. Click "Save".
Workflow
1. Log in with an authentication method that is either "weak" or "standard".
2. From the second login, you will be asked for a TOTP (temporary one-time password).
3. Generate a TOTP (temporary one-time password) with the previously retrieved secret key.
4. Enter the password and click "Login".
Requirements
• SADS has been enabled in the account policies via the UMC Web UI (see Managing account
policies (Page 123)) or UMX.
• The two-factor authentication has been enabled as the authentication method via the UMC
Web UI (see Configuring authentication options (Page 131)) or the central configuration
management UMCONF.
• The two-factor authentication has been enabled for the user in his account policies via the
UMC Web UI (see Managing account policies (Page 123)) or the encryption has been
activated for the user via UMX.
Procedure
1. Click the "Manage 2FA" tab.
2. Click "Display QR code".
3. If required, click "Show secret key" or "Reset secret key".
Configuring UMC web requirements via a script for GUM and DSSO
UMC provides special batch files for the configuration of the UMC web requirements for GUM
and DSSO on a UMC runtime server.
These batch files are located in "C:\Program Files\SIEMENS\UserManagement\BIN" if the
default installation folder was selected.
To configure the UMC web requirements for GUM and DSSO on a ring or a server, configure
the UMC web components as described in "Configuring UMC web components via a script
(Page 55)".
Example
C:\Program Files\Siemens\UserManagement\BIN>gum_iis.bat" enable "Your website name"
Example
C:\Program Files\Siemens\UserManagement\BIN>dsso_prereq enable "Your website name"
If you want to specify a different "reverseProxy" value than the value retrieved by the script
and use it in the configuration, you can specify this value as the third parameter when
starting the "dsso_prereq.bat" script.
Example
C:\Program Files\Siemens\UserManagement\BIN>dsso_prereq.bat enable "Your website
name" "Your reverse proxy address"
By default, the identity provider process "node.exe" is monitored at port 8443. If you want
to change this default value, you can specify the desired port value as the fourth parameter
when starting the "dsso_prereq.bat" script.
Example
C:\Program Files\Siemens\UserManagement\BIN>dsso_prereq.bat "Your website name" "Your
reverse proxy address" "Port number"
If you want to specify a particular parameter while keeping the default values of the previous
parameters, you must pass an empty string for the parameters you do not want to adjust.
Example
C:\Program Files\Siemens\UserManagement\BIN>dsso_prereq.bat enable "" "" "Port number"
The empty quotes indicate an empty value for the parameters that are transferred to the
script.
Workflow
On all UMC runtime servers on which you want to configure the GUM, execute the following
command as an administrator:
gum_iis.bat enable
To remove the previous GUM settings, execute the following command as an administrator:
gum_iis.bat disable
On all UMC runtime servers on which you want to configure the DSSO, execute the following
command as an administrator:
dsso_prereq.bat enable
To remove the previous DSSO settings, execute the following command as an administrator:
dsso_prereq.bat disable
Note
No checks are currently performed at the installation level of the UMC station client. An
overinstallation of the UMC station client leads to a serious malfunction in the system. In
particular, the UMC station client must not be installed on a computer on which UMC has already
been fully installed.
Requirements
• The logged-in Windows user must have administrator rights.
• A complete installation of UMC or the UMC station client has been performed on your
computer. During the installation, you simply need to proceed with the wizard.
• The UMC Web UI must be properly configured for the UMC system in HTTPS (see
AUTOHOTSPOT). HTTPS is mandatory, therefore a valid SSL certificate must have been
acquired from a certificate authority or a self-signed SSL certificate must have been created.
Result
The system registers the computer as a UMC station client, which makes a claim that contains
certified login station data.
Requirement
• The computer is configured as a UMC ring server or UMC server
Procedure
Use the UMCONF utility. For more details, see the UMCONF reference (Page 188).
Note
Certificates
If TLS is needed, create the certificates and save them in the default folder for "CERT/SLRAUTH"
certificates in "C:\ProgramData\Siemens\UserManagement".
The default folder for "CERT/SLRAUTH" certificates inherits the access rights of the parent "CERT"
folder. The authorizations for the folder may have to be changed.
Requirements
• The computer is configured as a UMC ring server, UMC server or UMC runtime server.
• The requirements for the identity provider (Page 25) are met.
• UMC web components are configured with HTTPS on the computer if it is a UMC ring server
or UMC server. The DSSO web settings have been enabled in the case of a UMC runtime
server, as described in "Configuring UMC web requirements via a script for GUM and DSSO
(Page 59)".
Procedure
To enable DSSO, use the UMCONF utility. For more details, see the UMCONF reference
(Page 188).
Requirements
• The computer is configured as a UMC ring server, UMC server or UMC runtime server.
• UMC web components are configured with HTTPS on the computer if it is a UMC ring server
or UMC server. The GUM web settings have been enabled in the case of a UMC runtime server,
as described in "Configuring UMC web requirements via a Script for GUM and DSSO
(Page 59)".
Procedure
To configure the GUM server list, use the UMCONF utility. For more information, see
"Commands for managing the GUM server list (Page 189)".
Syntax
get_gum_fingerprint.ps1 [-ipaddress ipaddress] [-port tcport]
Parameters
• ipaddress is the IP address of the IIS binding. It is 0.0.0.0 if the "All unassigned" option is
set under "Edit site" in the IIS Manager.
• tcpport is the TCP port of the IIS binding. The default TCP port for https is 443.
• If you want the integrated Windows authentication mechanism to work properly without
prompting for user credentials, you must use Kerberos to authenticate to IIS. Kerberos
requires a special configuration in an NLB scenario. For more details, see the technical
documentation of Microsoft (see e.g. http://blogs.msdn.com/b/vivekkum/archive/
2008/06/15/step-by-step-kerberos-in-nlb-with-shared-content.aspx).
• If you configure a reverse proxy to use multiple web servers, you need to increase the query
string length value on all web servers via the IIS Manager to the values shown in the following
screenshot.
The health state information is derived from the one provided by the Health Check Service
described in UMC Release Notes.
Example URL
https://<host_name>/umc-sso/GetHealthState
Note
The sample code is provided for illustrative purposes only. It has not been thoroughly tested
under all conditions. Therefore, we cannot guarantee or imply its reliability, serviceability, or
function.
In the example two machines VM-UMC-N1 and VM-UMC-N2 are configured in NLB and their
status is checked via the PowerShell function CheckNodeHS. According to the status, the
node is stopped or started.
CheckNodeHS
Function CheckNodeHS([string]$nodeToCheck)
{
$url="https://"+$nodeToCheck+"/umc.idp/GetHealthState"
$r = [System.Net.WebRequest]::Create($url)
{
#404 is handled with an exception
}
if($resp.StatusCode -match "OK")
{
#200 returned
Write-Host "Node "+$nodeToCheck+ " OK"
Start-NlbClusterNode $nodeToCheck
}
else
{
#any other value than 200
Write-Host "Node "+$nodeToCheck+ " NOT OK"
Stop-NlbClusterNode $nodeToCheck
}
}
Script
#MAIN
cls
Import-Module NetworkLoadBalancingClusters
$node1="VM-UMC-N1"
$node2="VM-UMC-N2"
$nodeStatus = Get-NlbClusterNode -hostname "VM-UMC-N1"
$status1 = $nodeStatus[0].State.ToString()
$status2 = $nodeStatus[1].State.ToString()
if ($status1 -match "converged" -and $status2 -match "converged")
{
Write-Host "NLB status is good"
}
else
{
Write-Host "NLB status is NOT good"
Write-Host "Node 1: status is" $status1
Write-Host "Node 2: status is" $status2
}
CheckNodeHS($node1)
CheckNodeHS($node2)
On this page you will find a set of notes that must be observed for a correct update of UMC.
Version-specific notes
This section contains a list of notes that apply only to the upgrade of certain UMC versions.
• Update from 1.0: If you have installed and configured UMC 1.0, you must first upgrade to
UMC 1.1 (see UMC 1.1 Release Notes) and then update the system.
• Update from 1.1: If you have installed UMC 1.1 in an HTTP scenario, you must change the
scenario from HTTP to HTTPS after the update.
• Update from versions prior to 1.6: In mixed-version scenarios, problems can occur if a user
name longer than 30 characters is used. We strongly recommend updating the installations
to the latest UMC version.
• Update from versions prior to 1.9.1: Starting with version 1.9.1, the password expiration
value in the global account policy cannot exceed 1827 days. If the value is greater than 1827,
you must reset the value after the update.
• Update from versions prior to 2.0: Since significant changes would be made to the IdP, you
must make all the settings that were made in the webconfig again after updating your
installation, see Migrating IdP configurations.
• When versions prior to 2.0 are updated on UMC servers and the secondary UMC ring server,
the configuration script of the web component cannot update the allowlist. UMC servers and
the secondary UMC ring server must be added to the allowlist with UMCONF on the primary
UMC ring server.
• When versions prior to 2.0 are updated, the "Application Request Routing" package must be
downloaded and installed.
For IIS 8 and higher: Download (https://www.microsoft.com/en-US/download/details.aspx?
id=47333)
General recommendations
• During the update process, only the primary UMC ring server is available, which means no
system redundancy support is available for a minimum time period.
• Session losses may occur during the update.
• The primary UMC ring server and the secondary UMC ring server do not support a long-term
mixture of versions, therefore installations must be aligned as quickly as possible.
Procedure
1. If Network Load Balancing (NLB) is configured, remove the secondary UMC ring server from
the NLB cluster.
2. If UMC web components have been configured on the computer, run the file
"Remove_IdP_WebUI_configuration.bat".
3. Close all applications that are running.
4. Start the installation program and select the option to update the system. If you are prompted
to restart the system during installation, restart it. When the system restarts, the installation
program starts automatically.
5. Execute the command "umconf -U" to update the system. For more details, see the UMCONF
reference.
6. If UMC web components have been configured on the computer:
– Run the file "IdP_WebUI_configurator.bat" or configure the IdP manually.
– Manually adapt the settings in the identity provider webconfig on the .json configuration
file.
7. If Network Load Balancing (NLB) has been configured:
– Reconnect the computer to the NLB cluster;
– remove the primary UMC ring server and all other UMC servers (if any) from the NLB
cluster.
8. If an update to version 2.7 SP1 is being performed, execute the command to add the correct
dependency to the "UP Service" service:
sc config "up service" depend="UMC service"
Note
If you use the UMC Web UI, clear the browser cache on all computers that access the UMC Web
UI.
General recommendations
• During the update process, only the secondary UMC ring server is available, which means no
system redundancy support is available and no UMC database changes can be made for a
minimum time period.
• Session losses may occur during the update.
• The primary UMC ring server and the secondary UMC ring server do not support a long-term
mixture of versions, therefore installations must be aligned as quickly as possible.
Procedure
1. If UMC web components have been configured on the computer, run the file
"Remove_IdP_WebUI_configuration.bat".
2. Close all applications that are running.
3. Start the installation program and select the option to update the system. The system may
prompt you to restart before or after updating UMC. In this case, restart the system. If the
restart is performed prior to the update, the installation program starts automatically when
the system is restarted.
4. Execute the command "umconf -U" to update the system. For more details, see the UMCONF
reference.
5. If UMC 1.1 is installed in a standalone scenario with HTTP, and HTTPS is to be enabled when
updating to UMC 1.4, this additional procedure is required.
6. If UMC web components have been configured on the computer:
– Run the file "IdP_WebUI_configurator.bat" or configure the IdP manually.
– Manually adapt the settings in the identity provider webconfig on the .json configuration
file.
7. If Network Load Balancing (NLB) has been configured, reconnect the computer to the NLB
cluster.
8. If an update to version 2.7 SP1 is being performed, execute the command to add the correct
dependency to the "UP Service" service:
sc config "up service" depend="UMC service"
Note
If you use the UMC Web UI, clear the browser cache on all computers that access the UMC Web
UI.
Procedure
1. If UMC web components have been configured on the computer, stop the application pools
of the UMC applications in IIS Manager and execute the
"Remove_IdP_WebUI_configuration.bat" file.
2. Close all applications that are running.
3. Start the installation program and select the option to update the system. If you are prompted
to restart the system during installation, restart it. When the system restarts, the installation
program starts automatically.
4. Execute the command "umconf -U" to update the system. For more details, see the UMCONF
reference.
5. If UMC web components have been configured on the computer:
– Run the file "IdP_WebUI_configurator.bat" or configure the IdP manually.
– Manually adapt the settings in the identity provider webconfig on the .json configuration
file.
6. If the UMC server was connected to the NLB cluster, reconnect the computer to the cluster.
7. If an update to version 2.7 SP1 is being performed, execute the command to add the correct
dependency to the "UP Service" service:
sc config "up service" depend="UMC service"
Note
Session losses may occur during the update.
Procedure
1. Close all applications that are running.
2. Start the installation program and select the option to update the system. If you are prompted
to restart the system during installation, restart it. When the system restarts, the installation
program starts automatically.
3. Execute the command "umconf -U" to update the system.
For more details, see the UMCONF reference.
Procedure
1. Close all applications that are running.
2. Start the installation program and select the option to update the system.
If you are prompted to restart the system during installation, restart it. When the system
restarts, the installation program starts automatically.
Result
The computer is automatically registered, and no further steps are required.
Procedure
1. To remove the configuration of the UMC web components, run the
"REMOVE_IdP_WebUI_configurator.bat" script.
You can find the script in "C:\Program Files\SIEMENS\UserManagement\BIN" if you have
selected the default installation folder.
2. To remove the data of the UMC database and the entries of the registry, execute the umconf
-D -f command.
Result
The configuration of the UMC web components as well as the data of the UMC database and the
entries of the registry are deleted.
For more information, see the UMCONF reference (Page 178).
Procedure
1. Open the Control Panel.
2. Click on the "Programs and Features" item in the Control Panel.
3. In the "Uninstall or change program" dialog, select the UMC station client software and click
the "Uninstall" button.
A confirmation prompt appears.
4. Confirm the confirmation prompt by clicking "Yes".
The uninstall program starts.
5. Select the installation language and click "Next".
6. Select UMC to uninstall and click "Next".
7. Click "Uninstall".
8. Click on "Exit" to close the setup program.
Result
The UMC station client software is uninstalled from your computer.
3.8 Troubleshooting
General
Reference
Procedure
1. Run Powershell as an administrator.
2. Insert "-server" followed by the name of the UMC server.
3. Insert "-user" followed by the user name of the UMC user executing the command. The
specified user must have the UM function right "UM_Admin".
4. Insert "-pwd" followed by the password of the UMC user executing the command.
5. Insert "-username" followed by the user name of the local Windows user you want to import.
The user name of the local Windows user to be imported must be structured according to one
of the following patterns:
– "<computer name\name" of the local Windows user to be imported in the case of a
Windows user.
– "NT SERVICE\<SERVICE NAME>" in the case of a virtual Windows service account.
6. Click "Input".
Example
.\Siemens.UMC.ImportUser.ps1 -server myumcservername -user
myumcadminusername -pwd myumcpassword -username
mycomputername\nameofwindowslocaluser
UMC provides event logging. UMC event logging provides a mechanism for storing the history
of events raised by the UMC component. The event data is stored in one or more files.
The um.ELGSrv.exe server is available for the management of the event logging.
The following table summarizes the logged events.
Event Logged
Authentication Successful login
Failed login
Change password
Ticket validation
Management of sessions Creation of sessions
Deletion of sessions
Event Logged
Configuration Create/delete/change UM user (only via UMC Web UI)
Create/delete/change UM role (only via UMC Web UI)
Create/delete/change UM group (only via UMC Web UI)
Unlock the user (only via UMC Web UI)
User locked (if automatic release
is configured)
Changes of the global account
policies
Two-factor authentication Creation of secret key (only via UMC Web UI)
Reset of secret key (only via UMC Web UI)
Temporary one-time password
(TOTP) successfully checked
Temporary one-time password
(TOTP) not successfully checked
SADS Encryption enabled for subject
(UM user or UM group)
Failed decryption of the applica‐
tion key due to user authentica‐
tion failure
Identity provider Host automatically added to the
identity provider's allowlist
Identity provider starts
Editing this file is optional. When creating the list of domains from which users and/or groups
can be imported, the following rules apply:
• if the "domains" property is not empty, this list is taken into account for the import, otherwise
• the "query_for_domains" field defines the AD input query for calculating the domain list.
Required after modifying the file:
• Copy the file to each computer where the provisioning has been configured, and
• perform a manual restart of the "UP Service" service.
The file requires the following JSON format.
Note
• If "polling_umc" and "polling_ad" are missing, the following polling values are used by
default:
– polling_umc 60 sec
– polling_ad 600 sec
• "update_mode": "noupdate": (optional) If this option is set to "noupdate", no update of AD is
performed.
JSON description
Update behavior
Requirements
• Requirements in Active Directory
– The "sAMAccountName" user and group attribute must be unique in the domain
– The NETBIOS names of the domain must be unique in the AD forest
• Requirements in UMC
– The user and group name must be unique after the conversion
Domain 1
Name: domain.local
NETBIOS name: DOMAIN
Groups and users:
• DOMAIN\group1
– DOMAIN\testUser1
• DOMAIN\groupX
– DOMAIN\testUser1
– SUBDOMAIN\testUser1
Domain 2
Name: subdomain.domain.local
NETBIOS name: SUBDOMAIN
Groups and users:
• SUBDOMAIN\group1
– SUBDOMAIN\testUser1
Situation A
• Import AD group "DOMAIN\group1" into UMC
– The UMC group is named "DOMAIN\group1".
– The AD user "DOMAIN\testUser1" is imported and given the name "domain\testUser1".
– The UMC user "domain\testUser1" becomes part of the group "DOMAIN\group1".
• Import AD group "SUBDOMAIN\group1" into UMC
– The UMC group is named "SUBDOMAIN\group1".
– The AD user "SUBDOMAIN\testUser1" is imported and given the name
"subdomain\testUser1".
– The UMC user "subdomain\testUser1" becomes part of the group "SUBDOMAIN\group1".
Situation B
• Import AD groups "DOMAIN\group1" and "SUBDOMAIN\group1" into UMC at the same time
– The UMC groups are named "DOMAIN\group1" and "SUBDOMAIN\group1".
– The AD user "DOMAIN\testUser1" is imported and given the name "domain\testUser1".
– The AD user "SUBDOMAIN\testUser1" is imported and given the name
"subdomain\testUser1".
– The UMC user "domain\testUser1" becomes part of the group "DOMAIN\group1".
– The UMC user "subdomain\testUser1" becomes part of the group "SUBDOMAIN\group1".
Situation C
• Import an AD group "DOMAIN\groupX" that contains users from both AD domains
– The UMC group is named "DOMAIN\groupX".
– The AD user "DOMAIN\testUser1" is imported and given the name "domain\testUser1".
– The AD user "SUBDOMAIN\testUser1" is imported and given the name
"subdomain\testUser1".
– The UMC user "domain\testUser1" becomes part of the group "DOMAIN\groupX".
– The UMC user "subdomain\testUser1" becomes part of the group "DOMAIN\groupX".
The required order for the restart is the following: primary UMC ring, secondary UMC ring,
UMC servers, UMC agents.
It is assumed that within two years after expiration of the validity period of the certificate, at
least one restart in the required order is performed.
If only the computer certificate expires on a UMC computer (e.g. UMC version ≤ 2.7), the
procedure for certificate renewal only has to be carried out on this computer by restarting the
computer.
Note
If the update command "UMCONF -U" is not executed on the computer after a UMC update, the
automatic certificate renewal is disabled and a restart of the computer does not trigger the
certificate renewal
Exceptions
• If the certificates have already expired, the automatic renewal cannot be carried out and a
manual procedure is required.
Workflow
1. Logging in to the UMC Web UI (Page 94)
2. Home page of the UMC Web UI (Page 96)
Note
Note that when you log in to UMC, you enter a protected environment. To leave, you must log
out, because simply closing the browser does not guarantee that you have left this protected
environment. In addition, the following security information must be taken into account.
• Do not use the "Back" and "Forward" navigation buttons of the browser.
• Do not copy a URL of the UMC Web UI to insert it into other browser windows.
Requirements
To log in to the UMC Web UI, you must have at least one of the following UM function rights:
• "UM_ADMIN": You can perform all available UMC Web UI operations.
• "UM_VIEW": You can view the data contained in the UMC Web UI, but you cannot make any
changes.
Depending on the existing UM function right, certain operations may or may not be allowed.
Note that during the use of custom plugins for authentication, some may not have the
required "strong" security level to log in to the UMC Web UI.
Note
The computer is automatically added to the allowlist when you authenticate as a user with the
UM role "Administrator".
Procedure
You can log in to the UMC Web UI in one of the following ways:
• Enter the user name and password of a UMC user.
• Click "Log in with current Windows session".
Depending on the type of authentication method configured (smartcard and/or plugin),
additional selection elements are displayed on the login page.
Possible options
You can select the following options from the menu in the upper right corner of the page:
• Logoff
• Access to the "User profile" page
In addition, depending on your UM function rights, you can access the pages of the UMC
Web UI where you have additional options:
• Managing UM users (Page 101)
• Managing UM groups (Page 112)
• Managing UM roles (Page 119)
• Managing account policies (Page 123)
• Managing IdP configurations (Page 130)
• Managing system users (Page 136)
• Viewing event log (Page 137)
Additional functions
If UMC has been installed on the client computer and corresponding user access rights are
available, you can use the "Register client" button in the upper left corner to register the
computer from which login station information can be provided as a trusted computer.
For more information on the UMC station client, see <Topic in the installation guide> section.
Possible options
The following options are available on the "Settings" page:
• Changing Password (Page 97)
• Changing Language (Page 98)
• Generating a Secret Key (Page 99)
Procedure
1. Select "User profile" from the menu at the top right of the UMC home page or click on the
"User profile" button on the home page.
The "User profile" page is displayed.
2. Select the "Change password" tab.
The "Change password" tab is displayed.
Procedure
1. Select "User profile" from the menu at the top right of the "UMC home page" or click on the
"User profile" button on the home page.
The "User profile" page is displayed.
2. Select the "Change language" tab.
Requirements
• Secure Application Data Support (SADS) has been enabled in the account policies via the
UMC Web UI or UMX and is required for secret protection.
See also: Managing account policies (Page 123)
• The two-factor authentication has been enabled as an authentication method via the UMC
Web UI or the central configuration management UMCONF.
See also: Configuring authentication options (Page 131)
• The two-factor authentication has been enabled for the user in his account policies via the
UMC Web UI or the encryption has been enabled for the user via UMX.
See also: Editing account policies (Page 106)
Procedure
1. Select "User profile" from the menu at the top right of the UMC home page or click on the
"User profile" button on the home page.
The "User profile" page is displayed.
2. Click the "Manage 2FA" tab.
The "Manage 2FA" tab is displayed.
Possible options
Below each column name is a filter box that you can use to filter the content of the selected
column. The following options are available on the "Settings" page:
• Creating UMC users (Page 102)
• Updating UM users (Page 103)
• Importing AD users (Page 108)
• Unlocking UM users (Page 111)
• Delete a user
Note that users imported from an AD group cannot be deleted.
See also: Managing UM groups (Page 112)
When you manage UM users, keep in mind the field restrictions of the corresponding
umx commands.
See also "Importing and exporting UM users and groups (Page 216)" in the UMX reference.
Note
System users that have been imported into UMC (via UMX), such as local Windows users, virtual
service accounts, IIS app pool identities, are not listed on the "User" page. The "System user" page
can be used for the visualization.
Procedure
1. Select the "User" option from the menu at the top right of the UMC home page.
The "User" page is displayed.
Note
• The default domain for new users is UMC.
• If "Password must be changed" is selected, the user must set a new password at the next login.
• If "Password can be changed" is selected, the password can be reset by the user.
• The password specified by an administrator when creating or updating a UMC user is not
bound by password policies. This is only the case if the password check has been activated.
Note
For imported AD and local users, editing restrictions apply. For more details, see the "Updating
AD users" and "Updating local users" sections.
Note that the password that you specify when you edit a UM user is not bound by password
policies. This is only the case if the password check has been activated.
Editing UM users
You can edit the primary information of a UM user directly in the table on the "User" page. To do
this, select the corresponding UM user and click "Edit". If you want to insert or edit additional
user details, first select the UM user and click "Details". The corresponding detail dialog is
displayed.
Possible options
Each tab groups the user details that you can edit in that tab. A description is provided for the
properties whose editing requires additional explanation:
• "Attributes" tab: Editing User Attributes (Page 105)
• "Groups" tab: Display of the group membership of the UM user. To find out how to add a UM
user to a group, see Managing groups (Page 112).
• "Roles" tab: Assigning UM role to a user (Page 106)
• "Account policy" tab: Editing account policies (Page 106)
• "Status" tab: With the "Change user status" function, you can perform the following actions:
– Enable or disable a UM user
– Unlock a user
– Reactivate an expired user
– Define whether a UM user can or must change their password
Note
No input validation has been implemented in the current version of UMC.
Updating AD users
Imported fields are not editable. Only the following fields, which are not imported, can be
changed:
• "General" tab: "Language" and "Data language"
• "Info" tab: "E-mail2" and "E-mail3"
• "Status" tab: "Enabled"
• "Attributes" tab: User-defined UMC attributes can be created, modified and deleted.
• "Groups" tab: For all users, this tab displays only the membership in a user group. For a
description of how to add a user to a group, see Managing UM groups (Page 112).
• "Roles" tab: UM roles can be changed.
• "Account policy" tab: The "User expiration date" field, the alert fields and the "Password
duration (days)" field are not applicable. Only the "PKI alias" and the "authentication alias" can
be changed.
• "Time (minutes) until autom. logout" tab: Number of minutes before the session will be
automatically ended.
All other fields are imported from AD and cannot be changed via the UMC Web UI. They must
be changed in AD and are automatically synchronized by UMC.
Procedure
1. Select the "User" option from the menu at the top right of the UMC home page.
The "User" page is displayed.
2. Select the row of the user for whom you want to change the attributes.
3. Click "Details".
A dialog is displayed containing the details of the user.
4. Open the "Attributes" tab.
Note
• You can create new UM roles with the umx command. See the UMCONF reference for more
details.
• The "Administrator" role cannot be linked to UM groups.
Procedure
1. Select the "User" option from the menu at the top right of the UMC home page.
The "User" page is displayed.
2. Select the row of the user to whom you want to assign UM roles.
3. Click "Details".
A dialog is displayed containing the details of the UM user.
4. Open the "Roles" tab.
5. Enter the role name in the field above the table. This field has autocomplete, so you only need
to type the first few letters.
6. Select the desired UM role and click "Save".
Procedure
1. Select the "User" option from the menu at the top right of the UMC home page.
The "User" page is displayed.
2. Select the row of the UM user for whom you want to change the account policy.
3. Click "Details".
A dialog is displayed containing the details of the UM user.
4. Open the "Account policy" tab.
General recommendations
• Local users can only be imported using the umx command. For more details, see the UMX
reference under "Import local users or virtual user accounts (Page 226)".
• Editing restrictions apply to imported AD users and local users.
See also: Updating UM users (Page 103)
• The import of users requires a search in Active Directory, which may take a long time and may
not yield results if the AD management limits are exceeded. It is strongly recommended to
limit the search. To import multiple users at the same time, import them via the import of an
AD group.
See also: Managing UM groups (Page 112)
Procedure
1. Select the "User" option from the menu at the top right of the UMC home page.
The "User" page is displayed.
2. Click "Import users".
The following dialog opens:
3. Enter the search criteria. The search criteria must contain at least the first three letters of the
user name. Insert a * before the string if you want to search for other characters contained
in the name.
The search is performed in the following Active Directory fields:
– User name (sAMAccountName)
– Full user name (displayName)
– Common Name (cn)
4. Click on "Search".
The following dialog opens:
6. To import the selected AD users into the UMC database, click "Import".
The Windows groups associated with these users are not imported into the UMC database.
For imported users, user authentication is performed using the Windows system.
Note
UM users cannot be explicitly locked. Rather, they are locked if they enter a specified number of
incorrect passwords. The number depends on the global account policies
"SL_ENABLE_LOCK_AFTER_NATTEMPTS" and "SL_MAX_LOGIN_ERRORS".
See also: Managing account policies (Page 239)
Procedure
1. Select the "User" option from the menu at the top right of the UMC home page.
The "User" page is displayed.
2. Select the row of the user you want to unlock.
3. Click "Unlock user".
The "Status" tab in the detail dialog of the user shows whether the user is locked or not.
Alternatively, you can unlock the user in this tab.
Possible options
Below each column name is a filter box that you can use to filter the content of the selected
column. The following options are available on the "Settings" page:
• Creating UM groups (Page 112)
• Updating UM groups (Page 113)
• Importing AD groups (Page 115)
• Deleting UM groups (Page 118)
When you manage groups, keep in mind the field restrictions of the corresponding
umx commands.
See also "Importing and exporting UM users and groups (Page 216)" in the UMX reference.
Procedure
1. Select "Groups" from the menu at the top right of the UMC home page.
The "Groups" page appears.
Offline groups
If the group is created offline, the description may include an LDAP query that is used by the "UP
Service" service to find the Active Directory group and to fill the UMC group with its users.
For more information on offline groups and the format of the description field used to
configure the import, see UM group (Page 15).
Possible options
Each tab groups the group details that you can edit in that tab. A description is provided for the
properties whose editing requires additional explanation:
• "Members" tab: Assign users to a group
• "Roles" tab: Link UM roles to groups
More details can be found in the section Assigning UM role to a user (Page 106)
• "Group policy" tab: Configure the SADS offline behavior, i.e. secure data support, for the
group.
You can reset the offline behavior back to default at any time. Offline use is then no longer
possible.
Note
The import of all AD users that belong to a group may take longer (usually a few minutes),
depending on the number of members. During user import, the UMC Web UI can be used to
perform other operations.
Procedure
1. Select "Groups" from the menu at the top right of the UMC home page.
The "Groups" page appears.
2. Click "Import domain groups".
The following dialog is displayed:
3. Enter the search criteria for the group name in the "Group" field and click "Search".
The following dialog is displayed:
5. Click "Import" to import the selected Active Directory groups and their associated Active
Directory users into the UMC database.
Updating AD groups
Recursive AD groups are not imported by default. Members of the imported group and its
recursive groups are imported in to UMC. For these users, authentication is performed using AD.
The imported fields cannot be edited. Therefore, the following rules apply:
• "General" tab: Fields cannot be changed.
• "Group members" tab: Group members cannot be changed, users cannot be added to or
deleted from the group. As a result, users imported from an AD group cannot be deleted.
• "Roles" tab: UM roles can be changed.
See also: Importing AD users (Page 108)
Additional configurations
• Users that belong to nested groups can also be imported. These users are imported and
bound to the parent group. The nested group itself is not imported.
You can find additional information and activation instructions in the section
"AUTOHOTSPOT".
• If an AD group is not allowed to be imported with its Common Name (CN), the group must
be created offline and the description can be used to configure the import criteria.
See also: UM group (Page 15)
Note
• If a group was created from scratch in the UMC database and is linked to users, all links are
deleted. Users are not deleted.
• If a group was imported from Active Directory into the UMC database and has associated
users, all users not belonging to other groups are deleted.
Procedure
1. Select "Groups" from the menu at the top right of the UMC home page.
The "Groups" page appears.
2. Select the row of the group you want to delete.
3. Click "Delete".
Possible options
Below each column name is a filter box that you can use to filter the content of the selected
column. The following options are available on the "Settings" page:
• Creating UM roles (Page 119)
• Updating UM roles (Page 121)
• Deleting UM role
When you manage UM roles, keep in mind the field restrictions of the corresponding
umx commands.
See also "Importing and exporting UM users and groups (Page 216)" in the UMX reference.
Procedure
1. Select "Roles" from the menu at the top right of the UMC home page.
The "Roles" page is displayed.
Note
Due to a database limitation for the role IDs, you may receive an error message stating that no
more role IDs are available. If you want to create new UM roles in this case, you must first delete
the existing UM role with the corresponding umconf command.
For more details, see the UMCONF reference.
Possible options
Each tab groups the role details that you can edit on that tab. A description is provided for the
properties whose editing requires additional explanation:
• "Rights" tab: Assigning a UM function right to a UM role
3. Click "Save".
Note
The maximum duration for password expiration is 1827 days (about 5 years).
Possible options
On the "Account policies" page, you have the following options:
• "Password structure" tab: Definition of the password structure
• "Password lock, duration and reuse" tab: Definition of settings for duration, locking, and
reuse of passwords.
• "Advanced" tab: Configuration of advanced settings
2. Fill in the available fields with the values you want to set for your passwords. You can also
enable the password policy check during user administration so that administrative users can
only set passwords that comply with the specified policies. This does not apply to password
reuse policies.
The check is disabled if the value in the "Minimum password length" and "Maximum
password length" fields is set to "0". Empty passwords are not allowed.
Definition of settings for the password lock, duration, and reuse settings
1. Open the "Password lock, duration, and reuse" tab.
2. Set the maximum number of errors during login that can occur during login before the user
is locked. The user lock is disabled if the value is set to "0".
3. Set the number of days prior to password expiration.
2. Select the field to be used for user authentication via smartcard from the "Built-in filter or
custom filter" drop-down list. The following options are available:
– "Authenticate with common name"
– "Alias authentication using CN"
– "Authentication with filters by subject"
– "Alias authentication with filters for subjects"
– "Authentication with filters for alternative subjects"
– "Alias authentication with filters for alternative subjects"
3. Select the "Enable secure application data support for users and groups" check box to enable
the SADS functionality. At application level, SADS can be enabled via UMX or the UMC Web
UI by changing an account policy. At subject level this is only possible with UMX.
4. Click "Save" to apply your changes.
5. Click "Restore to default" to restore the default values of the global account policy.
Requirement
You have administrator rights.
2. Select the checkbox to confirm that you have a valid license to manage the number of users
in the UMC domain.
3. Click "Save".
Possible options
On this page, you can make the following settings:
• Manage authentication options, e.g. enable specific authentication methods and define the
security level.
See also: Configuring authentication options (Page 131)
• Manage disclaimers and customize the content of the disclaimer in the following languages:
English, French, Spanish, German, Italian and Chinese.
See also: Configuring disclaimers (Page 133)
• Manage languages, enable and disable integrated languages and add languages that are not
provided by UMC.
See also: Configuring Languages (Page 133)
Note
Enabling or changing the disclaimer establishes a centralized configuration if one does not
already exist. If certain configurations have been made in the local file, these may have to be
applied to the central configuration or overwritten.
Note
Be careful not to make any configuration that makes it impossible to log in to the UMC Web UI.
In the worst case, even the root user can no longer log in. Therefore, make sure that at least one
authentication level is set to "strong" or that two-factor authentication has been configured and
enabled. For more information, see the installation guide.
Note
Enabling or changing the disclaimer establishes a centralized configuration if one does not
already exist. If certain configurations have been made in the local file, these may have to be
applied to the central configuration or overwritten.
Enabling disclaimers
To enable the display of disclaimers, follow these steps:
1. Select the "Disclaimer configuration" tab.
2. Select the "Enable disclaimer when a login request is made" check box.
Customizing disclaimers
To customize disclaimers in one of the six standard languages, proceed as follows:
1. Select the "Disclaimer configuration" tab.
2. Select the language from the drop-down list.
3. Change the disclaimer as required and click "Update".
4. Click "Save all changes".
Note
Only the html tags "br" (page break) and "b" (bold) can be used in the disclaimer.
Note
• Each new resource file must be named like the resource files already present in the paths by
adding the language ID inserted during the configuration. In the example below, the file must
be named "umc.ja-jp.json".
• The value of the "language" property in the new resource file must match the value of the
"Language ID" entered in the "Custom languages" tab:
Example:
"language": "ja-jp",
"keys": {
"sessionExpiredLabel": "Session Expired",
Possible options
On this page, you can view all system users that have been imported into UMC (via UMX):
• Local Windows users
• Virtual service accounts
• IIS app pool identities
These system users are not listed on the "User" page.
Below each column name is a filter box that you can use to filter the content of the selected
column. On the settings page, you can do the following:
• Update user
• Delete user
When you manage users, keep in mind the field restrictions for the corresponding umx
commands.
See also "Importing and exporting UM users and groups (Page 216)" in the UMX reference.
Requirements
You need the UM function rights "UM_VIEW" and "UM_VIEWELG" or "UM_ADMIN" to access the
"Event log" page.
See also: UM function rights (Page 17)
Procedure
1. Select the "Event log" option from the menu in the upper right corner of the UMC home page.
The "Event log" page is displayed.
2. Select a row and click "Details" to view the details of a record in the event log.
The value is displayed in JSON format on the "Value" tab in the "Log record detail" dialog.
Error codes
In the event of errors, the UMC Web UI provides one of the following two responses:
• Display of a text error message
• Display of the last error code in hexadecimal format
See UMC APIs error codes (Page 250) for more information.
Parameter sizes
The following table contains the sizes for the most important UMC database fields:
Name of the API API object Display name in UMX parameter Size in characters
property the UMC Web UI
SL_USER_NAME SLOBJ_USER User name name 100
SL_USER_PASS‐ SLOBJ_USER Password password 120
WORD
SL_USER_FULL‐ SLOBJ_USER Full name fullName 250
NAME
SL_GROUP_NAME SLOBJ_GROUP Group name name 100
SL_GROUP_DE‐ SLOBJ_GROUP Description description 260
SCRIPTION
SL_ROLE_NAME SLOBJ_ROLE Role name name 255
SL_ROLE_DESCRIP‐ SLOBJ_ROLE Description description 40
TION
SL_ATTRIB‐ SLOBJ_ATTRIBUTE Attribute name attribute name 80
UTE_NAME
Plant security
• Check whether the required organizational and technical security measures are taken and
kept up to date in your company (e.g. security management process).
Network security
• Implement firewalls (Page 149) so that access points are protected and the communication
to and from a security cell is regulated. Only the required ports should be open:
– for UMC, the ports 4002, 4004 and 443
– for GUM, also port 6006
– for SLRA, port 16389
• Implement VPNs (Page 149) to establish secure network connections via public networks.
• Create security cells (Page 144) so that the plant is divided into areas that are easier to control
that are logically structured according to function and location.
• Create one or more perimeter networks (Page 144) so that direct communication between
the bottommost and topmost levels of the plant infrastructure is processed in the perimeter
network before the lower levels of the plant are reached.
System integrity
• Harden the system (Page 150) by removing all unnecessary software components and
functions, adding the needed software to the allowlist and then performing the
solidification for the system; in addition, hosts that can connect to an identity provider (IdP)
must be added to the allowlist.
• Enable the code signing check (Page 153) so that the system logs when an executable UMC
file has been modified and thus possibly compromised.
• Create backups (Page 157) of the system and database.
• Set up a patch management (Page 158) to keep the operating system up-to-date and more
secure.
• Implement a management of user accounts (Page 160):
– Configure the authentication and authorization (Page 162) to verify users and restrict
their access.
– Reinforce passwords (Page 162) and implement a password policy.
– Pursue a policy of least privilege (Page 161).
The division of networks and connected systems into security cells includes the division of a
large company network into individual networks that are each used for a specific business
function. This strategy increases the availability of the overall system is an effective way to
reduce security risks. The segmentation of the system into cells is integral to the application of
IEC 62443. With this approach, parts of a network, e.g. an IP subnet, are protected by a security
device and the network is secured through use of segmentation. This allows devices within this
"cell" to be protected from unauthorized access from the outside without impairing real-time
capability, performance or other functions. Security threats that could lead to failure can thus be
limited to the immediate environment.
The various ISA95 levels can be used to designate security cells, e.g. in which ERP functions
(Enterprise Resource Planning) are separated from MES functions (Manufacturing Execution
System). In addition, the example configuration (Page 146) organizes various products into
security cells, each with their own firewall.
Perimeter network
In addition to the secure lower level networks, we have also Perimeter Networks in our
scenarios, sometimes called DMZs (Demilitarized Zones). These are networks used to isolate
certain applications from outside networks, thereby mitigating security risks.
Typically, Web Servers are placed in this network, so that they can collect data from low level
networks and, at the same time, they can provide web pages to outer networks (for example
an Enterprise Control Network).
If you are planning to connect to UMC using the Remote Desktop Service, the Remote
Desktop Service Server should be placed in this network.
Design principles
When creating security cells, you should follow some common guidelines and implementation
best practices, such as the following:
• a security cell is an independent part of the plant;
• all participants inside the cell trust each other;
• access to the security cell is permitted only through clearly-defined access points;
• access points are monitored and access is logged (data traffic, user, hardware);
• all participants of a security cell are directly connected (no bypass to the outside);
• participants with high network load will be integrated into a security cell to avoid bottlenecks.
• DCS server: Computer that hosts DCS components for a production environment, with the
exception of the data memory.
• SCADA data memory: Computer on which the required databases are to be hosted.
• SCADA server: Computer that hosts the SCADA components for a production environment,
with the exception of the data memory.
• Generic MCS system: Computer/device with a generic Manufacturing Control System (MCS)
according to ANSI/ISA95.
• Generic MCS engineering station: Development computer for the MCS solution.
• Generic MCS client: Client computer for the MCS solution.
To ensure network security (Page 142), the access points to the security cells and the
communication between the different access points must be secured. We explore these two
aspects in this section.
Note
Firewalls must be configured with rules to mitigate DDoS attacks.
Access points
In the configuration example (Page 146), the access points to the various security cells are
protected by firewalls that protect the TCP port 4002 and the port used for HTTPS IIS binding
(usually 443) on the computer(s) running UMC.
UMC communication
All UMC communication between servers is carried out using TLS/SSL encryption protocols to
ensure network security, while communication between clients and servers should be carried
out via HTTPS.
In information security, the term integrity refers to something, such as data or services, that has
not undergone unauthorized changes. The increase in system integrity should be considered as
the third pillar of a balanced security concept. In order to improve the system integrity, it is
necessary to use automation systems and control components, such as SCADA and HMI
systems, that are protected against unauthorized access and malware or meet special
requirements such as know-how protection.
Customizations can be made by system integrators. However, bear in mind that a distinction
must be made between the effects of the product and the custom code. This distinction can
be made by reviewing the execution and deployment of user-defined code or by providing
coding policies, where the responsibility for code compliance and/or monitoring of the
execution lies with the customer.
In information security, hardening is the removal of all software components and functions that
are not essential to perform a specific task. In other words: Hardening summarizes all measures
and settings aimed at:
• reducing the possibility of exploiting vulnerabilities in software
• minimizing possible attack methods
• limiting the tools for a successful attack
• minimizing the available rights after a successful attack
• increasing the probability that a successful attack will be detected
This is to increase local security and resistance of a computer to attacks.
Consequently, a system can be said to be "hardened" if:
• the installed software components and services are limited to those required for the actual
operation
• a restrictive user management is introduced
• the local Windows firewall is enabled and configured restrictively
Recommended hardening measures prior to the installation of UMC:
• Uninstall unnecessary programs and Windows components
• Disable unnecessary services
• Harden the computer's BIOS
A system hardening can be achieved by:
• File system configurations (Page 151)
• Creating an allowlist for the identity provider (Page 153)
• Enabling of code signing check (Page 153)
File system
This section describes the security of the file system using the objectives described in the
overview section for system hardening.
UMC has a predefined directory structure that is created during the installation. Folders that
are organized according to the UMC needs are configured with specific permissions during
the installation. These configurations are summarized below in the "Access control table of
UMC" section.
In addition, it is possible to improve the integrity of the file system depending on the security
policies of the customer:
• Encryption of the file system, by using the transparent file system encryption offered by the
operating system
• Configuration of an allowlisting software, for more information, see Allowlisting (Page 155).
Note
The paths listed in the table above are to be interpreted as follows:
• %ProgramData% and %ProgramFiles% are variables in the Windows environment.
Procedure
1. Add each host to the allowlist by using the required command of the UMCONF utility, as
described on the creation page of the allowlist entry in the UMCONF reference (Page 179).
UMC provides a security measure that checks whether the executable files are signed when
the services are started and creates a log file with the list of errors found during the check.
This function is disabled by default.
Note
• The operating system may need to use the Internet connection to verify the validity of the
signature.
• In order to enforce this security check, the following procedure must be performed on each
computer on which the UMC is installed.
Procedure
1. Go to "HKEY_LOCAL_MACHINE > SOFTWARE > SIEMENS > User Management > Common" in
the registry editor
2. Right-click on Common, select "New > Key" and insert "SecurityChecks" in the name.
3. Select the "SecurityChecks" key, right-click anywhere in the right window and click "New",
select "DWORD".
5.3.3.2 Allowlisting
UMC has been tested with McAfee Application Control 6.1.3 as an allowlisting application. For
the management of McAfee Application Control, there are different options:
• Locally on a computer system (standalone)
• Centralized use of McAfee ePolicy Orchestrator (ePO)
UMC has been tested with a local administration configuration that can only be operated
via the command line. The commands are understandable and self-explanatory, and McAfee
provides excellent reference material. McAfee Application Control can be managed easily
with batch files or scripts.
In either case, after the installation of McAfee Application Control on the computer, you must
first run the Solidify function on all local disks and partitions, which checks all connected
drives for the presence of executable files. After execution of the Solidify function:
• Only the found programs can be executed in the future
• All executable files found during the check are protected from manipulation (renaming,
deletion, etc.) and new files cannot be executed
The duration of the execution of the solidify function depends on the amount of data and
the computing power and can be several hours.
Requirements
You must have the Siemens certificate that is connected to the binary files (for
example, .exe, .dll) that are installed by the UMC installer in the "bin" folder. If you have not yet
retrieved the Siemens certificate, read the section "Obtaining the Siemens certificate".
Procedure
1. Install and configure the operating system.
2. Install all required programs and components.
3. Install all security updates that are available for the operating system and programs.
4. Install a virus scanner and update it with the latest virus signature files.
5. Set up the system architecture to minimize the risks from malware before and during the
integration of McAfee Application Control.
6. You should disconnect the computer from external/foreign networks (e.g. at the front-end
firewall).
7. Run a full virus scan on the computer.
8. Install McAfee Application Control locally.
9. Open the McAfee Application Control command line ("Start > Programs > McAfee > Solidifier
> McAfee Solidifier Command Line").
10.Start the solidification by entering the "sadmin solidify" or "sadminso" command and wait
until the process is completed.
11.Add the Siemens UMC certificate as an updater with the "sadmin cert add -u "certificate""
command.
12.Enable the configuration by typing "sadmin enable" (McAfee Solidifier Control is enabled
when the computer is restarted).
Result
All partitions and local disks of the computer system are now scanned for the presence of
executable files (applications), for example, exe, com, bat, dll, as well as Java, ActiveX controls
and scripts. McAfee Application Control then signs and authorizes all files found during the scan
for future use. It also protects the files from manipulations such as deletion and renaming. After
successful completion of the "Solidification", the Solidifier command line reports the number of
scanned files per partition or disk, including the number of files that have been authorized. After
the restart, you can query the status of McAfee Solidifier by entering the "sadmin status"
command in the Solidifier command line.
System backup
A system backup stores data in the system partition. In the case of UMC, this is necessary to store
system data related to UMC, such as certificates and allowlisting.
This means that the data storage medium is backed up with the following data:
• hardware-specific files (for example, "Ntldr", "Boot.ini")
• Windows operating system files
Note
The database backup is related to the disaster recovery strategies. The prevention of data loss
cannot be ensured and depends strictly on the backup strategy (for example, the selected
interval for creating backups).
Note
When changing the system configuration or the roles of the users, it must be noted that the
memberships in local groups must be adjusted accordingly. If the working environment is
changed, the settings must be made again.
The systems should be regularly updated and patched to mitigate potential security risks
and eliminate known security vulnerabilities. To achieve this, Microsoft fixes security
vulnerabilities in its products and makes these fixes available to its customers in the form
of official updates/patches.
Installation of patches is recommended to make operation of the UMC solution more secure
and stable. Siemens provides support to customers only if these updates have been installed
and only for problems not addressed by these updates.
In the previous sections, it has been shown that a defense concept that confronts an attacker
with multiple hurdles (defense-in-depth concept) is required to defend against the various
threats and achieve an adequate level of protection. At the same time, however, this also means
that authorized personnel must be restricted by some hurdles. In practice, there are usually
different access rights or classes of rights. Certain users can only access certain parts of the
system, devices or applications. Some users are given administrator rights, while others are only
granted read or write rights.
The management of user and operator rights involves the assignment of rights in the
Windows environment (to run UMC modules, Windows users must be granted the rights
that belong to the corresponding UMC group) and the assignment of UM roles to users based
on activities. These procedures are strictly separated from each other, but both are strictly
applied according to the principle of minimum necessary rights.
The user accounts are managed by:
• Assignment of the least privileges (Page 161)
• Configuration of Windows groups (Page 161)
• Authentication and authorization of operators (Page 162)
• Strength of passwords (Page 162)
• Physical protection (Page 163)
Least privileges
UMC has a number of integrated UM roles:
• The UM role "Administrator" is assigned to the integrated root administrator. It is used to
grant full rights to a specific user. Use this UM role for installation and disaster recovery
purposes only. Also, use strict password policies for users who are connected to this UM role
and revoke this UM role when it is not required. This UM role cannot be assigned to a UM
group. This UM role cannot be deleted and only UM users with the UM role "Administrator"
can change other UM users with this UM role.
• The UM role "UMC admin" is used to manage UMC users, UMC groups, and all other UMC
units.
• The UMC role "UMC viewer" is used to access the configuration of the user management
without making any changes.
The lowest permissions should be used for management of UMC functions via user accounts
for the purpose of performing administrative operations. To follow this principle, you could,
for example, assign a specific UMC user to the "UP Service" service.
manually configure access rights for each individual user. The following table contains all the
details about the local Windows groups used by UMC.
Password strength
The following general recommendations should be followed:
• Keep the default values for password account policies or make them more restrictive.
• Force users to change the password at first login if the password assigned to a new user does
not comply with the password account policies
• Force users to change the password if the password has been reset and does not comply with
the password account policies
We strongly recommend that you follow your organization's password policies to ensure the
strength of the password for the administrator. For example, a password policy may require
that your password meet the following requirements:
• Length of at least 8 characters
• Contains characters from three of the following four categories:
– Uppercase letters of European languages (A to Z, characters with diacritical marks, Greek
and Cyrillic characters).
– Lowercase letters of European languages (a to z, sharp s, characters with diacritical marks,
Greek and Cyrillic characters).
– Decimal numbers (0 to 9)
– Non-alphanumeric characters: ~!@#$%^&*_-+=`|\(){}[]:;"'<>,.?/
If a user is created as an administrator and the command is executed via a script, a warning
should be added with the recommendation that a password should be entered according to
the password policy of your company.
In addition, UMC provides the following default values for global user account policies:
Physical protection
To ensure the security of UMC, the target system on which the UMC server is running must be
configured correctly. The following conditions in particular are mandatory:
• Physical access to UMC servers must be prevented
• The administrator account may only be used for administrative tasks
• Use a special user account for the UM server launcher (this user account must belong to the
Windows group "UM service accounts" created during the UMC setup).
• Avoid changing the files directly in the folders used by the UM server. The data can only be
changed using the tools provided by UMC:
– %ProgramData%\Siemens\UserManagement\CONF
– %ProgramData%\Siemens\UserManagement\CERT
Note
• Use the UMCONF utility with caution. Incorrect use may result in the system becoming
unavailable.
• Close all applications that use UMC before starting UMCONF and making changes to the
computer configuration.
After the initial installation, the above configuration steps must be performed in order to run
UMC on a computer that becomes a UMC ring server after configuration.
Note
To perform the configuration steps, it is highly recommended that you run the "umconf -i"
command to perform all configuration steps.
Configuration options
The following options are supported:
• New configuration: UMC is being configured for the first time.
• Overwrite an existing configuration: You have already configured UMC and want to change
the configuration.
• Upgrade an existing configuration from a previous version: You have already configured
UMC, installed a newer version of UMC and need to upgrade the configuration.
When the UMCONF utility is run interactively, the various options are offered.
Syntax
umconf -h
Note
Set up a secure LDAP connection for provisioning services
Syntax
umconf -c -d name [-e] [-f]
Parameters
• name: String that represents the name of the UM domain. Only alphanumeric characters are
allowed.
Optional parameters
Parameter Description
-e Specifies the number of days until the network certificate expires.
The default validity is 10 years.
-f Forces the creation of a new UM domain. If a UM domain with the same name
exists, it is overwritten.
Examples
umconf -c -d mydomain
Creates a UM domain "mydomain".
umconf -c -d mydomain -e 7300
Creates a UM domain "mydomain" whose network certificate expires after 7300 days.
Note
With UMCONF, only one UM user with the UM role "Administrator" can be created and neither
user nor password can be changed.
The password can be changed with the UMX utility or via the UMC Web UI.
General recommendations
It is highly recommended that you adhere to the password policies of your organization to
ensure the strength of the password for the administrator. For example, a password policy may
require your password to meet the following requirements:
• At least 8 characters long.
• Must contain characters from three of the following four categories:
– Uppercase letters of European languages (A to Z, characters with diacritical marks, Greek
and Cyrillic characters).
– Lowercase letters of European languages (a to z, sharp s, characters with diacritical marks,
Greek and Cyrillic characters).
– Decimal numbers (0 to 9).
– Non-alphanumeric characters: ~!@#$%^&*_-+=`|\(){}[]:;"'<>,.?/
If a user is created as an administrator and the command is executed via a script, a warning
should be added with the recommendation that a password should be entered according to
the password policy of your organization.
Syntax
umconf -c -u name -p password
Parameters
• name: String that represents the user name. Only alphanumeric characters and the special
character '_' are allowed.
• password: Password assigned to the user. A blank password is not accepted.
Example #1
umconf -c –u administrator -p 123
exported. When a domain is created, a claim key is created that overwrites the existing claim
key. The applications of the relying party must be updated with the new key if necessary.
Note
In a decentralized environment, after creating a new claim key on one UMC master ring
server/UMC server, the "UMC Service" service of the other UMC ring server/UMC server must be
manually restarted to match the keys.
Syntax
umconf -c -k
Note
To disable the AD provisioning, the value for the registry key
"HKEY_LOCAL_MACHINE\SOFTWARE\Siemens\User
Management\WebUI\Settings\domains_support" must be set to "no" and the "UP Service" service
stopped.
Syntax
umconf -P -u name -p password [-f]
Parameters
• name: String that represents the user name, preceded by a domain.
• password: Password assigned to the user.
Optional parameters
Parameter Description
-f If the "UP Service" service is running and is already configured, this parameter allows
you to overwrite the existing configuration.
Note
The user assigned to the "UMC Service" service may only be changed via UMCONF.
Syntax
umconf -s -u name -p password [-f]
Parameters
• name: String that represents the user name, preceded by a domain. For a local user, the name
must be preceded by the string ".\" or "machinename\".
Example: .\administrator, mydomain\myuser
• password: Password assigned to the user. If the virtual account "NT SERVICE\UMC Service" is
specified, no password is requested.
Optional parameters
Parameter Description
-f If the services are running and are already configured, this parameter allows the
existing configuration to be overwritten.
6.1.4.3 Set secure LDAP connection for the "UP Service" service
You can use this command to set the entry "ldaps" in the configuration file
(C:\ProgramData\Siemens\UserManagement\CONF\piisrv_config.json).
You can also change the configuration file manually:
json
{
"ldaps": "yes|no",
}
Note that the command will fail if the configuration file does not exist.
The "UP Service" must be restarted after execution of the command in order for the new
setting to take effect.
This setting is not passed to other UMC servers, the command only changes the local
configuration file.
Syntax
umconf -P -ldaps <1|0> [-f]
Parameters
• -ldaps: Enables or disables the LDAPS connection with AD. The parameter is mandatory; it
is case sensitive.
Possible values:
– 1: Enables LDAPS. Converted to "yes" in the configuration file.
– 0: Disables LDAPS (LDAP is used instead). Converted to "no" in the configuration file.
Optional parameters
Parameter Description
-f If the "UP Service" service is running and is already configured, this parameter allows
the service to be restarted.
Examples
umconf -P -ldaps 1
Forces the provisioning server to use an LDAPS connection to AD. The "UP Service" is not
restarted.
umconf -P -ldaps 0 -f
Forces the provisioning server to use an LDAP connection to AD. The "UP Service" is restarted.
getgumport
umconf -getgumport
setgumport
umconf -setgumport -p <portNr>
Once you have changed the port to an available port, the service starts
immediately. You must, however, update the IIS so that it uses the new port
for GUM. For this reason, you should run the batch files for removing and
adding the IdP configuration after changing the port. The two batch files are
located by default in "C:\Program Files\Siemens\UserManagement\BIN" under the names
"REMOVE_IdP_WebUI_configuration.bat" and "IdP_WebUI_configurator.bat".
Syntax
umconf -a [-f] [-c computerName] [-u userName] [-p password] [-s
serviceUserName servicePassword] [-v] [-fp fingerprint] [-t]
Parameters
• computerName: Name of a UMC ring server or UMC server of a domain to which you want
to establish the connection. Both the NetBIOS name and the FQDN name can be used.
• userName: Name of a UM user with the UM function right "UM_ATTACH" or the UM role
"Administrator".
• password: Password of the UM user assigned to parameter "userName". If the "-t"
parameter is present, "password" is a ticket generated for this user.
• serviceUserName: Name of a local Windows/domain user (who either belongs to the "UM
service accounts" group or has administrator rights) who is to be assigned to the UMC
services. The "serviceUserName" parameter may remain empty (the password must then also
remain empty). The "UMC Service" service can thus be executed as a LocalSystem user.
• servicePassword: Password of the Windows user assigned to parameter
"serviceUserName".
• fingerprint: Fingerprint of the UMC domain. See Retrieve fingerprint (Page 175).
Optional parameters
Parameter Description
-f If the computer is already configured, the existing configuration is overwritten.
-v If this parameter is present, the certificates are not installed interactively. The "-v"
parameter must be present if the fingerprint is specified.
-t If this parameter is present, a ticket generated for the user must be provided instead
of the password.
Note
If you have configured AD provisioning on the primary UMC ring server, the service must also
have been installed on the computer that you want to join. To exclude the configuration for AD
provisioning, see the description of the "-b" parameter below. If this command is to be used via
a script, the "-b" parameter must be used and the "umconf" command must be used for the
configuration of the "UP Service" service in order to link the AD Windows user to the service.
Syntax
umconf -j [-f] [-m serverType] [-c computerName] [-u userName] [-p
password] [-s serviceUserName servicePassword] [-v][-b] [-fp
fingerprint] [-t]
Parameters
• serverType: Type of server to be connected to the ring:
– 0: The computer becomes a UMC server, in which case the "UP Service" is not configured.
– 1: The computer becomes a UMC ring server.
– 2: The computer becomes a UMC runtime server, in which case the "UP Service" is not
configured. The UM ring servers of the domain must be version UMC 2.9 SP3 or higher.
You can find additional information in the section "Computer roles (Page 18)".
• computerName: Name of one of the UMC ring servers of the domain to which the
connection is to be made. Both the NetBIOS name and the fully qualified domain name
(FQDN) can be used.
• userName: Name of a UM user with the UM function right "UM_RINGMNG" (for creating a
UMC ring server) or "UM_JOIN" (for creating a UMC server) or with the UM role
"Administrator". For more details, see UM function rights (Page 17).
• password: Password of the UM user assigned to parameter "userName". If the "-t"
parameter is present, "password" is a ticket generated for this user.
• serviceUserName: Name of a local Windows/domain user (who either belongs to the "UM
service accounts" group or has administrative rights) to be assigned to the UM services. The
"serviceUserName" parameter may remain empty (the password must then also remain
empty). The "UMC Service" service can thus be executed as a LocalSystem user.
• servicePassword: Password of the Windows user assigned to parameter
"serviceUserName".
• fingerprint: Fingerprint of the UMC domain.
Optional parameters
Parameter Description
-f Forces a stop and restart of the "UMC Service".
-m Specifies the type of server to be connected to the ring:
• 0: UMC server
• 1: UMC ring server
• 2: UMC runtime server
-v If this parameter is present, the certificates are not installed interactively. The "-v"
parameter must be present if the fingerprint is specified.
-fp If the "-v" and "-fp" parameters are present, the specified fingerprint is used for
validation.
-b The configuration of the Active Directory provisioning is not performed. The pa‐
rameter is relevant only for the configuration of the UMC ring server. The "UP Serv‐
ice" service is never configured for a UMC server.
-t If the "-t" parameter is present, a ticket generated for the user must be specified
instead of the password.
Note
If this procedure is carried out via remote access ("computerName" parameter is present) for a
device that is disconnected from the network and the device is reconnected to the network after
some time, the UMC configuration must be deleted before reconnecting this computer.
Syntax
umconf -u [-u userName] [-p password] [-c computerName] [-f]
Parameters
• userName: Name of a UM user with the UM function right "UM_RESETJOIN" or with the UM
role "UM administrator".
• password: Password of the UM user assigned to parameter "userName" or a ticket generated
for this user.
• computerName: NetBIOS name of the computer with the role as UMC ring server or UMC
server whose connection is to be disconnected. This parameter is to be used only if the UMC
services of the device on which you are executing the command cannot communicate with
the UMC services of the device whose connection you want to disconnect. This is the case,
for example, if the device that is to be disconnected is no longer available.
Optional parameters
Parameter Description
-f Forces a stop of the "UMC Service" service.
Syntax
umconf -fingerprint [-c computerName]
Parameters
• computerName: Name of the computer from which you want to obtain the fingerprint. Both
the NetBIOS and FQDN names can be used for a remote computer.
Syntax
umconf -getdefaultconfig -file fullpath
Parameters
• fullpath: Path and name of the file where the default configuration is to be saved.
Syntax
umconf -setconfig -u username -p password -file fullpath [-label
labelName]
Parameters
• userName: Name of a UM user with the UM function right "UM_ADMIN" or the UM role
"Administrator".
• password: Password of the UM user assigned to parameter "userName". If the optional "-t"
parameter is present, the "password" parameter is a ticket generated for this user.
• fullpath: Full path of the JSON file with the UMC configuration to be set.
• labelName: Name of the configuration.
Optional parameters
Parameter Description
-label (for future use) Optional, allows a label to be specified for each individual configu‐
ration.
Syntax
umconf -getconfig -file fullpath [-label labelName]
Parameters
• full_path: Full path of the file to be retrieved.
• labelName: Name of the configuration.
Optional parameters
Parameter Description
-label (for future use) Optional, allows a label to be specified for each individual configu‐
ration.
Note
It is strongly recommended to execute the "umconf -i" command to perform all steps for
upgrading that involve upgrading for this UM domain.
Note
Renewing certificates
If the validity of the network or device certificates is about to expire, the command to upgrade
a UM domain triggers the automatic process for renewing the certificates.
Syntax
umconf -U [-f]
Optional parameters
Parameter Description
-f Forces a stop of the "UMC Service" service.
Note
A restart of a "UMC service" service and/or the execution of the "Reuse" command in the
application pool can lead to an interruption of the service.
Syntax
umconf -D [-f]
Optional parameters
Parameter Description
-f Forces a stop of the UMC services before deletion of all data.
Syntax
umconf -c -w -d name
Parameters
• name: String that represents the host in the standard URL format. The string must specify the
exact path of the relying party. Options are:
– https://computername/UMC/slwapi/service
– https://computername.userdnsdomain/UMC/slwapi/service
Alternatively, the computer name can also be specified as IP address or localhost.
Syntax
umconf -l -w
Example
umconf -l -w
Result:
The allowlist contains the domains depending on the local IT configuration, e.g.:
localhost
myMachine
170.23.1.48
Syntax
umconf -d -w -d name
Parameters
• name: String that represents the host in the standard URL format. Options are:
– localhost
– Name of the device (e.g. myMachine)
– Name of the domain (e.g. www.myDomain.net)
– IP address (e.g. 172.23.1.48)
Example
umconf -d -w -d 175.22.3.55
Result:
Domain 175.22.3.55 has been successfully removed from the allowlist.
The UMC service must be restarted for all pending changes to take effect.
Note
The execution of the "Reuse" command in the application pool can lead to an interruption of the
service.
Syntax
umconf -r -u userName -p password -P url -d plugin_description -w -pk
public_key_path -sl securityLevel [-l languagefile]
Parameters
• userName: Name of a UM user with the UM function right "UM_ADMIN" or with the UM role
"Administrator".
• password: Password of the UM user assigned to parameter userName. If the "-t" switch is
present, "password" is a ticket generated for that user.
• url: URL of the cookie adapter to be registered.
• plugin_description: String that appears in the drop-down menu on the right of the Idp
login page on the client computer.
• public_key_path: The public key generated when setting up the cookie adapter.
• securityLevel: This information is transmitted in the IdP claim so that the third-party
application can determine the security level of the authentication. Possible values are:
– weak
– standard
– strong
• languagefile: Not used.
Optional parameters
Parameter Description
-w Specifies that you are registering a web adapter.
-pk Denotes a public key that is assigned to the plugin.
Syntax
umconf -l -P
Example
The umconf -l -P command lists the following registered plugins:
#1
Plugin Uid: 5a25fc03-3bd1-479b-9b02-2dcb9f6f60f3
Path: https://mymachine/tcss_web
Description: Teamcenter Web
Class: web
Pub keyid: 88FACEFCD6ED416BC6D516D10E09ABBBDA85FDC6
Security level: strong
Use alias: enabled
Plugin name: Teamcenter Web
#2
Plugin Uid: 113dc9ec-ada6-4f61-b938-9bf2a50b1401
Path: https://vm-chessa/tcss_hybrid
Description: Teamcenter Hybrid
Pub keyid: 88FACEFCD6ED416BC6D516D10E09ABBBDA85FDC6
Security level: strong
Use alias: enabled
Plugin name: Teamcenter Hybrid
Note
Running the "Restore" command in the application pool can cause the service to be interrupted.
Syntax
umconf -dP -u userName -p password -name pluginname [-P pluginId]
Parameters
• userName: Name of a UM user with the UM function right "UM_ADMIN" or with the UM role
"Administrator".
• password: Password of the UM user assigned to parameter "userName". If the "-t" switch is
present, "password" is a ticket generated for that user.
• pluginname: Name of the plugin, alternatively "pluginId" can be used.
• pluginId: Position of the plugin in the list of registered plugins. See example below.
Example
In the example in "List registered plugins (Page 181)", two registered plugins were listed using
the command umconf -l -P.
The command umconf -dP -u myUser -p 098P@ssword! -name Teamcenter
Hybrid removes the registration for the Teamcenter Hybrid plugin.
Syntax
umconf -log -a -f file [-p password]
Parameters
• file: Path and name of the package file, for example "C:\temp\myLogs".
• password: Password for the package. If no password is entered, the user is prompted to
enter a password.
Syntax
umconf -log -e -f file [-p password]
Parameters
• file: Path and name of the package file, for example C:\temp\myLogs.
• password: Password for the package
You can use the following commands to update certificates that are created when a UMC agent
is attached or a UMC server is added as a node. The certificate is an x.509 certificate that allows
SSL communication between UMC computers.
Note
Network and device certificates can be automatically renewed when their expiration date
approaches. You can find additional information under Performing the automatic certificates
renewal (Page 91).
Note
If this operation is performed on a computer that is not a UMC ring server, the ring server will be
disconnected if the operation fails and must be reconnected to repeat the operation.
Syntax
umconf -rc [-f(orce)] [-c computername] [-u username] [-p password]
[-v] [-fp fingerprint]
Parameters
• computerName: If the computer for which a certificate renewal is requested is a UMC server,
then "computerName" is the name of the master UMC ring server to which the server
computer is connected and on which the certificate is located. Both the NetBIOS name and
the FQDN name can be used.
• userName: Name of a UM user with the UM function right "UM_ATTACH" or the UM role
"Administrator". See also UM function rights (Page 17).
Optional parameters
Parameter Description
-f Forces a stop of UMC services before renewal of the certificate.
-v If this parameter is present, the certificates are not installed interactively. The "-v"
parameter must be present if the fingerprint is specified.
Note
If this operation is performed on a computer that is not the primary UMC ring server, the
operation will fail.
Syntax
umconf -rnc [-f(orce)]
Optional parameters
Parameter Description
-f Forces a stop of UMC services before renewal of the certificate.
See also
UM function rights (Page 17)
Syntax
umconf -i
or alternative
umconf
Note
This command stops the "UMC Service" service and restarts it after it has been executed. The
stop may cause an interruption of the service.
Syntax
umconf -purge -roles
Syntax
umconf -t
Example
umconf -t
Result
The server list contains:
servername: myname1 ring server
servername: myname2 ring server
servername: myname3 server
You can use this command to enable or disable Desktop Single Sign-on (DSSO) functionality.
Syntax
umconf -dsso [enable|disable] [-f(orce)]
Optional parameters
Parameter Description
-f Forces a restart of the "UMC Secure Communication" service
Examples
umconf -dsso enable
The DSSO functionality is enabled. The "UMC Secure Communication" service must be
restarted manually.
umconf -dsso disable -f
The DSSO functionality is disabled. The "UMC Secure Communication" service is restarted.
Syntax
umconf -slra [enable|disable] [-secure <1|0>] [-localonly <1|0>] [-
certpath <certpath>] [-certname <certname>] [-certkeyname
<certkeyname>] [-f(orce)]
Parameters
• certpath: Full path of the certificate folder
• certname: Name of the certificate (CER file)
• certkeyname: Name of the certificate key (PEM file)
Optional parameters
Parameter Description
-secure Enables or disables TLS
-localonly Enables or disables remote connections
-f Forces a restart of the "UMC Service" service
Note
Certificates
If TLS is needed, create the certificates and save them in the default folder for "CERT/SLRAUTH"
certificates in "C:\ProgramData\Siemens\UserManagement".
The default folder for "CERT/SLRAUTH" certificates inherits the access rights of the parent "CERT"
folder. The authorizations for the folder may have to be changed.
Example
UMConf.exe -slra enable -secure 1 -localonly 0 -certpath
"C:\ProgramData\Siemens\UserManagement\CERT\SLRAUTH" -certname
"mycert.cer" -certkeyname "mycertkey.pem"
Result
SLRA functionality has been successfully enabled.
The "UMC Service" service must be restarted manually.
Accordingly, as the server list does not contain any UMC runtime servers, the search result
includes only UMC ring servers or UMC servers.
The names of the servers (from the GUM server list and the server list of the current domain)
are not case-sensitive.
Syntax
umconf -c -g -u url -s servername -fp fingerprint -n username -p
password [-t]
Parameters
• url: URL of the computer on which the GUM server runs. The URL is the unique identifier of
the entry in the list. There must not be two entries with the same URL in the GUM list (the
"umconf" command will fail in that case). The "url" parameter is not case-sensitive.
• servername: Host name of the computer to which the URL refers. The server name is used
in the GUM search to create a list of URLs supported by GUM, whereby a check is made to
determine which entry in the GUM list is also present in the UMC server list. For the purposes
of this check, the server name is not case-sensitive.
• fingerprint: SHA1 of the public key for the certificate for the HTTPS binding in IIS. UMC
provides a Powershell script for querying the fingerprint of the GUM server. If the server
certificate must be validated based on the infrastructure of the customer (valid CA), the
"fingerprint" parameter must be empty.
• username: Name of a UM user with the UM role "Administrator". See also UM function rights
(Page 17).
• password: Password of the UM user assigned to parameter "userName". If the parameter "-
t" is present, "password" is a ticket generated for this user.
Optional parameters
Parameter Description
-t If the "-t" parameter is present, a ticket generated for the user must be specified in
place of the password.
Syntax
umconf -l -g
Example
umconf -l -g
The GUM list contains the following values:
url: https://srvname
server: srvname
fingerprint: FDD47C931853722CCD6595A404EA47476793A235
Syntax
umconf -d -g -u url -n username -p password [-t]
Parameters
• url: URL of the GUM service. The URL is the unique identifier of the entry in the list. There
must not be two entries with the same URL in the GUM list (the "umconf" command will fail
in that case). The "url" parameter is not case-sensitive.
• username: Name of a UM user with the role "Administrator".
• password: Password of the UM user assigned to parameter "userName". If the switch "-t" is
present, "password" is a ticket generated for this user.
Optional parameters
Parameter Description
-t If the "-t" parameter is present, a ticket generated for the user must be specified
instead of the password.
Example
umconf -d -g -u https://srvname
After execution of this command, the message appears: "gum list delete command
completed successfully"
Value Description
0 Success
1 The user entering the command does not have the required administrator rights.
10 Initialization errors, such as missing registry keys
50 Syntax error of the command
100 Command execution error
Note
Because the UMX utility works with command lines, a parameter with spaces that is to be
inserted must be enclosed in double quotation marks.
Syntax
umx -h [command]
Parameters
command: Command category for which the help is to be displayed.
Examples
The following examples show the help calls for creating and updating objects:
umx -h -c
umx -h -U
Syntax
Create user:
umx [-x commandUserName commandUserPassword] -c -u name -p password
[-f fullName] [-m paramMustPwd] [–C paramCanPwd] [–l paramLock] [-e
paramEnabled]
Create offline user:
umx [-x commandUserName commandUserPassword] -c -u name -off
Users created as "offline" are always enabled. See also "Offline users" in UM user (Page 14).
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• name: String that represents the user name. Only alphanumeric characters are allowed.
• fullName: String that represents the full user name, for example, last name and first name.
• password: String that represents the password of the user. Empty passwords are not
allowed. The password entered for the user with this command may not meet the password
policies. You can enable a password check to ensure that the password complies with the
policy.
See also: Change account policies - Enable password check (Page 243)
• paramMustPwd: Can have the values "0" or "1". If the parameter is set to "1", the user must
change his password when logging in for the first time. If the parameter is set to "0", the user
is not required to change his password when logging in for the first time. The default value
is "0".
• paramCanPwd: Can have the values "0" or "1". If the parameter is set to "1", the user can
change the password. If the parameter is set to "0", the user cannot change the password. The
default value is "0".
• paramLock: Can have the values "0" or "1". If the parameter is set to "1", the user is locked
and cannot perform any action. If the parameter is set to 0, the user is not locked and can
perform actions according to his UM function rights. The user can be locked by the system if
they try to log in with an incorrect password several times. The number of permitted attempts
is specified in the security policies. The default value is "0".
• paramEnabled: Can have the values "0" or "1". If the parameter is set to "0", the user cannot
perform any action. If the parameter is set to 1, the user is enabled and can perform actions
according to his UM function rights. The default value is "0".
Parameter behavior
The following table describes the behavior of the application depending on the values of the
"paramMustPwd" and "paramCanPwd parameters":
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-off The specified user is created as an offline user.
See also: UM user (Page 14).
Examples
umx -c -u myUser -f "Peter Brown" -p default123 -m 1 -C 1 -l 0 -e 1
The user "myUser" is created with the full name "Peter Brown" and the password
"default123". The user must change the password when logging in for the first time, he
is not locked and is enabled.
umx –c –u DOM\userOFF –off
The offline user "DOM\userOFF" is created, all flags are set to "0".
umx –c –u userOn –p a
The online user "userOn" is created with the password "a", all flags are set to "0".
Syntax
umx [-x commandUserName commandUserPassword] -c -g name –d
description [-off]
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• name: String that represents the group name. Only alphanumeric characters are allowed.
• description: String with a short description of the group. This field is optional when the
group is created offline.
If the group is created offline, the description can include an LDAP query that is used by the
"UP Service" service to search for the AD group and populate the UMC group with the users.
See also: UM group (Page 15)
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-d If the description begins with "{{Q=", the rest of the string is the LDAP query for the
group.
-off The specified group is created as an offline group.
Examples
Create offline group with an LDAP query:
umx -x manager manager -c -g UMC_domain\Group_test -d
{{Q=distinguishedname=cn=colors,ou=other_ou1,dc=umc_domain,dc=net
-off
In the example, an offline group is created with name "UMC_domain\Group_test". The
created group is assigned to the users of the AD group, who are queried with the execution
of the following command:
&(objectCategory=group)
(distinguishedname=cn=colors,ou=other_ou1,dc=umc_domain,dc=net))
It is recommended to use this mode only if a single group is returned as a result of the query,
as is the case when searching for a group with "distinguishedname", for example.
In addition, there is a database restriction regarding the role identifiers. If an error message is
displayed that states that no more role identifiers are available for new UM roles, the existing
identifier must first be purged with the corresponding umconf command.
See also: Purge Role IDs (Page 187)
Syntax
umx [-x commandUserName commandUserPassword] -c -r name –d
description
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• name: String that represents the role name. Only alphanumeric characters are allowed.
• description: String with a short description of the UM role.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -U -u user [-s (use
username instead of userId)] [–e expirationDate] [-ae
alertOnExDays] [-p pwdDays] [-ap alertOnPwdExDays] [-al
autologoffMinutes] [-wa warningOnAutologoffMinutes] [-la language]
[-da dataLanguage] [-fu fullname] [-co comment] [-em emailAddress] [-
o paramOverrideLock] [-canchangepsw 0|1] [-mustchangepsw 0|1]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• user: Represents the user name if "–s" parameter is present, or the internal user ID if "–s"
parameter is not present. The ID is a positive number that uniquely identifies the data record.
• expirationDate: Expiration date of the user account in UNIX time format.
• alertOnExDays: Number of days from which a warning appears to the UM user of the
imminent user account expiration.
• pwdDays: Number of days that the password is valid, max. 1828 days.
• alertOnPwdExDays: Number of days from which a warning appears to the UM user of the
imminent password expiration.
• autologoffMinutes: Number of minutes after which a UM user is automatically logged
out of the system (session-based).
• warningOnAutologoffMinutes: Number of minutes after which a warning appears to
the UM that he/she will be logged out of the system (session-based).
• language: User language in format "<langcode>- <countrycode>", for example "en-GB".
The two components have the following meaning:
– "langcode": Language code according to ISO 639. Two-digit codes (ISO 639-1) and three-
digit codes (ISO 639-2) are accepted.
– "countrycode": Country code according to ISO 3166.
• dataLanguage: Language in which the user data is displayed. The format is the same as for
the "language" parameter.
• fullname: Full name. It must be enclosed in double quotation marks if it contains spaces,
e.g. -fu "Full Name".
• comment: User comment: It must be enclosed in double quotation marks if it contains
spaces, e.g. -co "This User is Used Only For Test".
• emailAddress: Email address of the UM user.
• paramOverrideLock: Can have the values "0" or "1". If the parameter is set to "1", the UM
user cannot be locked. If the parameter is set to 0, the UM user can be locked.
Example: The UM user can be locked by the system if they try to log in multiple times with an
incorrect password. The number of attempts allowed is specified in the general security
policies for accounts. If the value is set to 1, a UM user will not be locked out, even if he/she
tries to log in with an incorrect password several times.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s After the "-u" parameter, the user name must be entered instead of the numeric user
ID.
UMX parameter UMC web name AD name UMC user Active Directory Windows local
expirationDat Expiration date of -/-
e the user
alertOnExDays Alarm when a user -/-
is about to expire
pwdDays Period of validity of -/-
the password
(days)
alertOnPwdExD Alarm when a pass‐ -/-
ays word is about to ex‐
pire
language Language -/-
Syntax
umx [-x commandUserName commandUserPassword] -U(pdate) -g(roup) <Id|
name> [-s (use name instead of Id)][-d(escription) <Description>][-
o(verride user lock) <0|1>] [-sadsstatus <1(empty)|2(sync)>]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• group: Represents the name of the UM group if the "–s" parameter is present, or the internal
identifier if the "–s" parameter is not present. The ID is a positive number that uniquely
identifies the data record.
• description: String that contains a short description of the UM group.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s After the "-g" parameter, the UM group name must be entered instead of the ID.
Syntax
umx [-x commandUserName commandUserPassword] -U -a -v aliasName -u
user [-s (use username instead of userId)]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• aliasName: String that represents the alias name.
• user: Represents the user name if the "–s" parameter is present, or the internal user ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record. You can query the user ID with the "Create list of object details" command.
See also: Create list with object details (Page 202)
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s After the "-u" parameter, the user name must be entered instead of the numeric user
ID.
Syntax
umx [-x commandUserName commandUserPassword] -U -A attributeName -v
attributeNewValue -u userId
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• attributeName: String that represents the attribute name.
• attributeNewValue: String that contains the new attribute value.
• userId: Positive number that represents the internal ID of the record that corresponds to
the UM user to whom the specified attribute and its value are assigned. You can query the
user ID with the "Create list of object details" command.
See also: Create list with object details (Page 202)
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -i {–u user [-s]| -g
group [-s]| -r role [-s]}
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing
the command.
• user: Represents the user name if the "–s" parameter is present, or the internal user
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
• group: Represents the group name if the "–s" parameter is present, or the group-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
• role: Represents the role name if the "–s" parameter is present, or the role-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, the objects are identified with their internal identifier.
Syntax
umx [-x commandUserName commandUserPassword] -i -at time [-f ]
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• time: Date in Unix time format of the day whose data records are requested in the event log.
String now denotes the current date.
Example: The Unix time 1460939793 corresponds to ISO 8601: 2016-04-18T00:36:33Z
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-f Forces the transfer of all data records of the relevant day to a file with the name
"<unixtime>.dat", which is stored in the location from which UMX is started.
Examples
Examples of commands:
umx –i –at now
umx –i –at 1450259593
umx –i –at 1460279589 -f
In the last example, UMX creates a file with the name 1460279589.dat with all data records
for Sunday, April 10, 2016 09:13:09 GMT
Example result:
---- AT Records 1 ----
AT Record {
"timestamp": "2015-12-1613:44:23.0+0100",
"source": "",
"username": "SWQA\\itre0043",
"action": "login error",
"value": {
"result":4
}
}
Time taken: 0.02s
Syntax
umx [-x commandUserName commandUserPassword] -l {-u [-v] | -wu | -du
searchStringUsers | -g | -dg searchStringGroups | -r | -f | -a | -d
domainName | -xc}
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• searchStringUsers: Filters the list of Active Directory users. The wildcard character "*"
is allowed and the search field is the user name.
• searchStringGroups: Filters the list of Active Directory groups. The wildcard character
"*" is allowed and the search field is the group name.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-u Displays the list of UM users.
-v If this parameter is present, additional details about the user are displayed.
-wu Shows the list of local Windows users.
-du Shows the list of Active Directory users belonging to the domain to which the local
computer is attached, filtered with the search string. The first field in the display is
used for import purposes. The name of the domain must be specified with the "-d
domainName" parameter.
-g Shows the list of UM groups.
-dg Shows the list of Active Directory groups belonging to the domain to which the local
computer is attached, filtered with the search string. The first field in the display is
used for import purposes. The name of the domain must be specified with the "-d
domainName" parameter.
-r Shows the list of UM roles.
-f Shows the list of UM function rights.
-a Shows the list of UM account policies. Note that the user assigned to the "UP Serv‐
ice" service is stored as account policy and shown in this list.
-d Shows the list of Windows domains.
-xc Displays the names and fingerprints of the registered clients of the station.
Example
umx -l -du ross*
Shows the list of Active Directory users belonging to the domain to which the local computer
is attached and whose user name starts with the string "ross".
• UM groups
• UM function rights
Syntax
umx [-x commandUserName commandUserPassword] -k
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -d {-u user | -g group |
-r role | -a} [-f][-s]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing
the command.
• user: Represents the user name if the "–s" parameter is present, or the internal user ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record.
• group: Represents the group name if the "–s" parameter is present, or the group-internal ID
if the "–s" parameter is not present. The ID is a positive number that uniquely identifies the
data record.
• role: Represents the role name if the "–s" parameter is present, or the role-internal ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-a All UM users, groups and roles are deleted, except for the user who initiates the
command and the UM users with the UM roles "Administrator" and "UMC Admin".
-s If the "-s" parameter is present, objects are identified with their name. If the "-s"
parameter is not present, objects are identified with their internal ID.
-f Forces the deletion of the user who initiates the command.
Binding commands
• Add attribute to a UM user (Page 208)
• Add attribute to a UM user - Size (Page 208)
• Add a set of attributes to a UM user (Page 209)
• Add alias name to a UM user (Page 210)
• Assign a UM group/UM role to a UM user (Page 210)
• Assign a UM role to a UM group (Page 211)
• Assigning a UM function right to a UM role (Page 212)
Unbinding commands
• Remove UM user from a UM group/UM role (Page 213)
• Remove UM role from a UM group (Page 213)
Syntax
umx [-x commandUserName commandUserPassword] -a -A attributeName -v
attributeValue -u user [-s (use username instead of userId)]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing
the command.
• attributeName: String that represents the attribute name.
• attributeValue: String that represents the attribute value.
• user: Represents the user name if the "–s" parameter is present, or the internal user ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record. You can query the user ID with the "Create list of object details" command.
See also: Create list with object details (Page 202)
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, objects are identified with their internal ID.
Syntax
umx [-x commandUserName commandUserPassword] -a –A attributeName -S
size -u user [-s (use username instead of userId)]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing
the command.
• attributeName: String that represents the attribute name.
• size: Attribute size in bytes
• user: Represents the user name if the "–s" parameter is present, or the internal user ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record. You can query the user ID with the "Create list of object details" command.
See also: Create list with object details (Page 202)
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If parameter "-s" is present, objects are identified with their name. If the "-s" param‐
eter is not present, objects are identified with their internal ID. The ID is a positive
number that uniquely identifies the data record.
Syntax
umx [-x commandUserName commandUserPassword] -a –A namePrefix -n
number –S size -u user [-s (use username instead of userId)]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• namePrefix: Prefix for the name of the attribute set.
• number: Number of attributes that are to be added.
• size: Attribute size in bytes
• user: Represents the user name if the "–s" parameter is present, or the internal user ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record. You can query the user ID with the "Create list of object details" command.
See also: Create list with object details (Page 202)
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, objects are identified with their internal ID.
Example
umx -a -A testAtt -n 10 -s 20 -u myUser
This command adds ten attributes for the UM user "myUser". The attributes have the names
"testAtt1", "testAtt2" and so on, each attribute has a size of 20 bytes.
Syntax
umx [-x commandUserName commandUserPassword] -a -a -v aliasName -u
user [-s (use username instead of userId)]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing
the command.
• aliasName: String that represents the alias name.
• user: Represents the user name if the "–s" parameter is present, or the internal user ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record. You can query the user ID with the "Create list of object details" command.
See also: Create list with object details (Page 202)
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, objects are identified with their internal ID.
Syntax
umx [-x commandUserName commandUserPassword] -a -u user {-g group| -r
role} [-s]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• user: Represents the user name if the "–s" parameter is present, or the internal user ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record.
• group: Represents the group name if the "–s" parameter is present, or the group-internal ID
if the "–s" parameter is not present. The ID is a positive number that uniquely identifies the
data record.
• role: Represents the role name if the "–s" parameter is present, or the role-internal ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, objects are identified with their internal ID.
Syntax
umx [-x commandUserName commandUserPassword] -a -g group -r role [-s]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• group: Represents the group name if the "–s" parameter is present, or the group-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
• role: Represents the role name if the "–s" parameter is present, or the role-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, the objects are identified with their internal identifier.
Syntax
umx [-x commandUserName commandUserPassword] -a –f functionRightName
-r role [-s]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• functionRightName: Name of a UM function right.
An overview of the UM function rights can be found here: UM function rights (Page 17)
• role: Represents the role name if the "–s" parameter is present, or the role-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, the objects are identified with their internal identifier.
Syntax
umx [-x commandUserName commandUserPassword] -R -u user {-g group |
-r role} [-s]
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• user: Represents the user name if the "–s" parameter is present, or the internal user
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
• group: Represents the group name if the "–s" parameter is present, or the group-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
• role: Represents the role name if the "–s" parameter is present, or the role-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, the objects are identified with their internal identifier.
Syntax
umx [-x commandUserName commandUserPassword] -R -g group -r role [-s]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• group: Represents the group name if the "–s" parameter is present, or the group-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
• role: Represents the role name if the "–s" parameter is present, or the role-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, the objects are identified with their internal identifier.
Syntax
umx [-x commandUserName commandUserPassword] -R -A attributeName -u
userId
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• attributeName: String that represents the attribute name.
• userId: Positive number that represents the internal ID of the data record that corresponds
to the UM user to whom the specified attribute and its value were assigned. You can query
the user ID with the "Create list of object details" command.
See also: Create list with object details (Page 202)
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -R -a -u userId [-s (use
username instead of userId)]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• userId: Positive number that represents the internal ID of the data record that corresponds
to the UM user to whom the specified attribute and its value were assigned. You can query
the user ID with the "Create list of object details" command.
See also: Create list with object details (Page 202)
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -R -f functionRightName
–r role [-s]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• functionRightName: Name of a UM function right.
An overview of the UM function rights can be found here: UM function rights (Page 17).
• role: Represents the role name if the "–s" parameter is present, or the role-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s"
parameter is not present, the objects are identified with their internal identifier.
Import commands
• Import objects from a file (Page 216)
• Import local Windows users or virtual user accounts (Page 226)
• Import AD users (Page 227)
• Import AD groups (Page 228)
• Import AD Groups with LDAP query (Page 229)
• AUTOHOTSPOT
Export commands
• Export objects to a file (Page 225)
• AUTOHOTSPOT
• AUTOHOTSPOT
NOTICE
Order of columns
The order of the columns in the file must match the listing.
Name Description
Name User name
Password User password
This field is empty during export.
Full name Full name of the user
Groups List of group names to which the user belongs, separated by ",". Example: group1,group2,group3. If
the group does not exist, no binding is performed. No error is returned.
Email Email address of the user
Language User language
Data Language User data language
Status A bit mask that represents the following flags:
• USER_IS_ENABLED
• USER_IS_LOCKED
• USER_IS_IMPORTED: indicates that the user was imported from AD. This information is only
relevant in the case of an export.
• USER_HAS_EXPIRATION_DATE
To set a flag to True, the character "x" must be inserted in the corresponding position, otherwise the
character "-" must be entered.
Example: x-xx:
• User is enabled
• User is not locked
• User is imported
• User has an expiration date
The expiration of the validity is stored in a user property. If USER_HAS_EXPIRATION_DATE flag is set
to False, the stored value is ignored.
Mobile Mobile phone number
Phone Telephone number
First name First name
Last Name Last name
Initials Initials
Comment Comment
Name Description
Policy Bit mask that represents the following flags:
• USER_MUST_CHANGE_PASSWORD
• USER_CAN_CHANGE_PASSWORD
• USER_HAS_PASSWORD_EXPIRATION
• USER_HAS_ALARM_BEFORE_PASSWORD_EXPIRATION
To set a flag to True, the character "x" must be inserted in the corresponding position, otherwise the
character "-" must be entered.
Example: xx-- indicates that a user must have the password to log in for the first time and can change
the password, that the password never expires and that no alarm for password expiration is displayed.
The time until expiration of the password in days is stored in a user property. If the
flag USER_HAS_PASSWORD_EXPIRATION is set to false, the stored value is ignored.
Expiration Date Expiration date of the user
Password Expiration Integer value that displays the days until the password expires
Days
Alarm Password Expira‐ Integer value that displays the alarm message, in days, prior to the expiration of the password
tion Days
NOTICE
Active Directory users
Active Directory users cannot be imported into UMC with a CSV file. If this is attempted, the
newly created UM users are not linked to AD. To import AD users, the UMC Web UI or the
corresponding umx command must be used.
See also: Import AD users (Page 227)
"objver": 2,
"fullname": "full name",
"firstname": "Mario",
"lastname": "Rossi",
"initials": "M.R.",
"groups": [ ],
"roles": [ "UMC admin" ],
"alias": [ ],
"attributes": [
{
"name": "attr_name",
"value": "attr_value"
}
],
"canchange": 1,
"mustchange": 0,
"locked": 0,
"override_lock_policy": 0,
"offline": 0,
"comment": "",
"datalanguage": "and",
"language": "und",
"autologoff": 0,
"email1": "",
"email2": "",
"email3": "",
"enabled": 1,
"expirationdate": "",
"expired": 0,
"imported": 0,//read only
"importedfromad": 0,//read only
"importedfromgroup": 0,//read only
"otp_enabled": 0,//read only
"passwordexpirationdays": 60,
"alertbeforepasswordexpirationdays": 0,
"alertsbeforeexpirationdate": "",
"phone": "",
"mobile": "",
"sid": "",
"timebeforeautologoff": 0
}
]
}
Note
Alias names and groups cannot be imported currently.
Note
• The password cannot be exported (visible or hashed) under any circumstances.
• Recommended values:
– Salt 32 bytes
– Length 128 bytes
– Iterations 1000
• The use of different parameters can have an impact on security (lower) or performance
(higher).
Name Description
Name Name of the group
Description Description of the group
Note
CSV format is not available.
Name Description
UM_ADMIN Allows the viewing of data from the UMC database and the configuration of the
UMC database, i.e. create users, groups, etc., import and export data via a file and
register clients at the UMC station. All umx commands can be executed with this
UM function right.
UM_VIEW Allows the viewing of data from the UMC database about UM users, UM groups, UM
roles and account policies.
UM_RESETPWD The user can reset the password of another user. The user must also have the
"UM_VIEW" function right.
UM_UNLOCKUSR The user can unlock another user. The user must also have the "UM_VIEW" function
right.
UM_ATTACH The user can attach a computer to a UM domain, the device is then given the role
of UM agent.
UM_JOIN The user can promote a computer to the role of UM server. If the computer is not yet
joined to the UM domain, it is joined with this command. This UM function right
includes the UM function right "UM_ATTACH".
UM_RESETJOIN The user can demote a computer from the role of UMC ring server or UMC server to
the role of UMC agent.
UM_IMPORT The user can import the UM configuration via a package. The user must also have
the "UM_VIEW" function right.
Name Description
UM_EXPORT The user can export the UM configuration to a package. The user must also have the
"UM_VIEW" function right.
UM_BACKUP The user can back up the UM configuration (full backup). This UM function right is
not used because the corresponding functionality has not yet been implemented.
UM_EXPORTCK The user can export claim keys. This UM function right is not used because the
corresponding functionality has not yet been implemented.
UM_EXPORTDK The user can export domain keys. This UM function right is not used because the
corresponding functionality has not yet been implemented.
UM_RA Log in via remote authentication. This UM function right is not used because the
corresponding functionality has not yet been implemented.
UM_RINGMNG The user can promote a computer to the role of "UMC ring server". If the computer
is not yet joined to the UM domain, it is joined with this command.
UM_ADSYNC The user can run the synchronization of the AD provisioning service in the back‐
ground.
UM_VIEWELG The user can view event log data. The user must also have the "UM_VIEW" function
right.
UM_CLAIMAUTH The user can create an identity from a valid claim.
UM_REGCLIENT The user can register clients for the UMC station.
Note
CSV format is not available.
"passwordAging": 60,
"passwordMaxLength": 120,
"passwordMinAlphaChar": 2,
"passwordMinLength": 8,
"passwordMinLowerChar": 1,
"passwordMinNumericChar": 1,
"passwordMinOtherChar": 0,
"passwordMinUpperChar": 1
},
"systemPolicies": {
"pki": {
"authmode": 10,
"filter": "test",
"issuer": "anothertest"
},
"sads": { "enableAkp": 0 }
}
}
The following list contains rules for the handling of special characters:
• Semicolon: If a data record value contains a semicolon, it must be enclosed inside quotation
marks. Example: If a full name such as Brown;Peter is to be entered, it must appear in the CSV
file as "Brown;Peter".
• Quotation marks: If a data record value contains a quotation mark, it must be enclosed inside
quotation marks and each quotation mark must be preceded by a quotation mark. Example:
If the value "Peter" is to be entered, the value ""Peter"" must be entered in the CSV file
• Comma: Value lists are separated by commas. If one of the values contains a comma
character, each value must be enclosed inside quotation marks. Example: To enter group,1
and group,2 for a user, enter "group,1","group,2" in the CSV file. If one of the values contains
a quotation mark, this character must be preceded by three quotation marks.
Syntax
umx [-x commandUserName commandUserPassword] -I {-u |-g |-all} -f
fileName -t format -noroot -fout outputfileName
Parameters
• filename: Name of the CSV file, for example: myFile.csv.
• format: File format: 0 for CSV, 1 for JSON.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-u The data of the csv or json files is imported as UM users.
-g The data of the csv or json files is imported as UM groups.
-all The entire configuration is imported. Is only supported for json format.
-f File name
-t File format, i.e.:
• 0 for csv
• 1 for json
-noroot If this flag is enabled, the password of the root user is not changed.
-fout Name of the result file
For the option -all, the JSON format is a concatenation of the sections for UM groups, UM
users, UM roles and policies.
Syntax
umx [-x commandUserName commandUserPassword] -E {-u | -g |-all} -f
fileName -t format
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• filename: Name of the CSV file, for example "myFile.csv".
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-u The data of the CSV or JSON files is exported as UM users.
-g The data of the CSV or JSON files is exported as UM groups.
-all The entire configuration is exported. Is only supported for JSON format.
Parameter Description
-f File name
-t File format:
• "0" for a CSV file
• "1" for a JSON file
NOTICE
Local users
Local users imported from Windows should only be used for configuration purposes, for
example for assignment to a Windows service running on the computer. Authentication to the
underlying operating system is required.
Syntax
umx [-x commandUserName commandUserPassword] -I -u -w userName [-r
role]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• userName: String that represents the user name.
• role: Represents the role name. It must be present in UMC.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-w Specifies that the user to be imported is a local user.
Syntax
umx [-x commandUserName commandUserPassword] -I -du -s searchString
-d domainName [-r role] [-f]
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• searchString: Filters the list of AD users. The "*" wildcard character is allowed and the
search is performed in the following Active Directory fields:
– user name (sAMAccountName)
– user full name (displayName)
– Common Name (cn)
• domainName: Domain from which the user(s) is/are imported.
• role: UM role that is assigned to the imported user(s).
Optional parameters
Parameter Description
-f Forces the creation of multiple users.
See also
Create list of objects (Page 204)
Syntax
umx [-x commandUserName commandUserPassword] -I -dg -s searchString
-d domainName [-r role] [-f]
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• searchString: Filters the list of AD groups, the "*" wildcard character is allowed, the
search field is the name of the group (cn).
• domainName: Name of the AD domain (without extension) to which the group belongs.
• role: UM role assigned to the imported user(s).
Optional parameters
Parameter Description
-f Forces the creation of multiple groups.
Note
If an Active Directory group is not allowed to be imported with its Common Name (CN), the
group must be created offline and the description can be used to configure the import criteria.
You can find more information in the section "UM group (Page 15)".
Note
Nested groups of the imported group are not imported. It is possible to enable the import of
users belonging to nested groups so that the users of nested groups are imported and linked to
the parent group.
You can find information and activation instructions in the section "AUTOHOTSPOT".
Syntax
umx [-x commandUserName commandUserPassword] -c -g
<ADdomainName>\<GroupName> -d {{Q=<ldap query> -off
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• <ADdomainName>\<GroupName>: String that represents the group name. Only
alphanumeric characters are allowed.
• {{Q=<ldap query>: String with the LDAP query for the group.
Optional parameters
Parameters Description
-x The command is executed by the user specified as the input parameter.
-d LDAP query for the group.
-off The specified group is created as an offline group.
Syntax
umx [-x commandUserName commandUserPassword] –setpwd userName
newPassword
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• userName: String that represents the user name.
• newPassword: The new password, which may deviate from the global password
requirements. You can enable a password check with the "Change account policies - Set
password check" command.
See also: Change account policies - Enable password check (Page 243)
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
See also
UM function rights (Page 17)
Syntax
umx [-x commandUserName commandUserPassword] -enableusr userName
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• userName: String that represents the user name.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -disableusr userName
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• userName: String that represents the user name.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -unlockusr userName
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• userName: String that represents the user name.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] –disablesafe
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Note
To retrieve the status of UMC, a user must be specified who is a Windows user with administrator
rights or an elevated user when "User Account Control" (UAC) is enabled.
Info Description
UMC health sta‐ Status of the UMC server.
tus Example: All UMC servers are running.
UMC communica‐ Status of the secure UMC communication services.
tion status Example: All UMC communication are running.
Machine role Possible values are:
• ring
• server
• agent
Example: Machine role is ring
Claim Key A claim key is available or not available. Not available for a UMC agent.
Ticket Key A ticket key is available or not available. Not available for a UMC agent.
UMC databases UMC databases are available or not available. Not available for a UMC agent.
Discovery status Details for the connection between UMC server and UMC client. Not available for a
UMC agent.
Example: Discovery status is connected
Possible values are:
• connected
• standalone (not used)
• no configuration found
• not initialized
• generic error
Workstation sta‐ Not available for a UMC agent.
tus Example: Workstation status is master
Possible values are:
• master: The device is a master UMC ring server.
• online: The device is a UMC ring server (not a master) or a UMC server.
• remote_master_is_in_safe_mode: The device is a UMC server that is connected
to a master in safe mode.
• initializing: The device is initialized.
• degraded: The device is a UMC server and is not connected to a UMC ring server.
• unconnected: Not connected
• segregated: The device is a segregated server.
• error: Generic error
Info Description
Ring master Name of the UMC ring master.
Example: The UMC ring master is now: vm-umc1.
This field also indicates whether the ring server is in safe mode:
Example: vm-umc1 in safe mode
Proxy server Name of the connected proxy server.
Example: Connected with proxy: vm-proxy1
Authentication The connected authentication server.
server Example: Authentication server is vm-umc1
Network certifi‐ Example, if a certificate has been found: present and it expires in 3649 days
cate Example, if certificate is missing: not present
Machine certifi‐ Example, if a certificate has been found: present and it expires in 3649 days
cate Example, if certificate is missing: not present
Example, if certificate has expired: present and it expires in 0 days
NOTICE
Renewing certificates
Network and device certificates can be automatically renewed when their expiration date
approaches. For more information on renewal of certificates, see section <Topic in the
installation guide>.
Syntax
umx [-x commandUserName commandUserPassword] –status
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
Examples
Example #1: The following example shows the output after a health check for the UMC ring
server.
UMC Health Check information.
UMC Health Status : All UMC servers are running.
Syntax
umx [-x commandUserName commandUserPassword] -getdomainid
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -getdomainname
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x UserName UserPassword] -resettotp
Parameters
• UserName: String that represents the name of the user for whom the secret key is to be
generated or reset.
• UserPassword: String that represents the password of the user for whom the secret key is
to be generated or reset.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-resettotp The command is executed to reset the temporary one-time password. (TOTP).
Syntax
umx [-x commandUserName commandUserPassword] -changeUserLang language
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• language: User language in format "<langcode>- <countrycode>", for example "en-GB".
The two components have the following meaning:
– "langcode": Language code according to ISO 639. Both two-digit codes (ISO 639-1) and
three-digit codes (ISO 639-2) are accepted.
– "countrycode": Country code according to ISO 3166.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -changeDataLang
datalanguage
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• datalanguage Language of the user data in the format <langcode>-<countrycode>, for
example, en-GB. The two components have the following meaning:
– "langcode": Language code according to ISO 639. Both two-digit codes (ISO 639-1) and
three-digit codes (ISO 639-2) are accepted.
– "countrycode": Country code according to ISO 3166.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -showUserProperties
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -sync
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] -AP
[-pwdMinLen minLen]
[-pwdMaxLen maxLen]
[-pwdMinLowChar minLC]
[-pwdMinUpChar minUC]
[-pwdMinAlphaChar minAlphaC]
[-pwdMinNumChar minNumC]
[-pwdMinOtherChar minOC]
[-enablePwdHistoryByDays flag -pwdMinDaysBeforePwdReuse
daysReuse]
[-enablePwdHistoryByNumPwd flag
-pwdMinNumPwdBeforePwdReuse numPwd]
[-maxLoginErrors numErrors]
[-ADCacheAge numDays]
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• minLen: Minimum permissible password length If "0" is set, this check will be disabled.
Empty passwords are not allowed.
• maxLen: Maximum permissible password length If "0" is set, this check will be disabled.
Empty passwords are not allowed.
• minLC: Minimum permissible lowercase letters.
• minUC: Minimum permissible uppercase letters.
• minAlphaC: Minimum permissible alphabetic characters in passwords.
• minNumC: Minimum permissible numeric characters in passwords.
• minOC: Minimum permissible special characters, i.e. neither alphabetic nor numeric, in
passwords.
• flag: "0" corresponds to "false" and "1" corresponds to "true".
• daysReuse: Number of days before the same password can be used again.
• numPwd: Number of passwords before the same password can be used again.
• numErrors: Number of errors when entering the password, after which the user is locked.
The lock of a user also depends on the value of the "paramOverrideLock" parameter.
See also: Update user (Page 198)
• numDays: Number of days before the AD cache expires. This number must have a value
between "30" and "250" days. The default value is "0" (AD cache disabled).
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
6.2.11.2 Change account policies – Assign Windows user to the "UP Service" service
You can use this command to assign the UMC user designated with the "name" parameter to the
"UP Service" service. This UMC user must have a UM role with the associated UM function
right "UM_ADSYNC". This UM role is not created automatically and must be created before this
UMC user is assigned. This UMC user is saved as an account policy. After execution of the
command, the "UP Service" service must be restarted.
Note
This configuration is not mandatory. The UMC user assigned to the provisioning service by
default is the administrator. We strongly recommend making this configuration to harden your
system according to the least privilege principle.
Syntax
umx [-x commandUserName commandUserPassword] -AP
-provisioningDefaultUser user [-s]
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
• user: Represents the user name if the "–s" parameter is present, or the internal user ID if the
"–s" parameter is not present. The ID is a positive number that uniquely identifies the data
record.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s" parameter is not
present, objects are identified with their internal ID.
Syntax
umx [-x commandUserName commandUserPassword] -AP -restore
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
Syntax
umx-AP -setdefaultpki -issuer issuerName -authmode authModeValue [-
filter filterValue]
Parameters
• issuerName: Name of the certificate issuer. This value is not currently used.
• authModeValue: Represents the different types of allowed authentication modes:
– 2: Authentication with filtering by "Subject"
– 3: Alias authentication with filtering by "Subject"
– 4: Authentication with CN
– 5: Alias authentication with CN
– 10: Authentication with filtering by "Alternate subject"
– 11: Alias authentication with filtering by "Alternate subject"
• filterValue: Regular expression for the filter.
See also
Change account policies - Reset default PKI rule (Page 243)
Syntax
umx -AP -resetdefaultpki
Syntax
umx -AP {-setakp | -resetakp}
Optional parameters
Parameter Description
-setakp Enables the Secure Application Data Support for users and groups.
-resetakp Disables the Secure Application Data Support for users and groups.
Syntax
umx -AP -setpswcheck
Syntax
umx -AP -resetpswcheck
Syntax
umx -interactive
Note
Database lock
If umx is started in interactive mode, a write lock is set up for the database. In this way, database
objects cannot be changed by other processes or applications. Read access is allowed.
Syntax
umx [-x commandUserName commandUserPassword] -N
Parameters
• commandUserName: String that represents the name of the UM user executing the
command.
• commandUserPassword: String that represents the password of the UM user executing the
command.
Optional parameters
Parameter Description
-x The command is executed by the UM user specified as the input parameter.
Syntax
umx -t userName userPassword [-totp]
umx -t -win [-totp]
umx -t -dsso [-totp]
Parameters
• userName: Represents the user name of the UM user to be authenticated.
• userPassword: Represents the user password.
Optional parameters
Parameter Description
-win Authenticates the currently logged in Windows user.
-dsso Authenticates the currently logged in DSSO user.
-totp Displays the secret key.
Syntax
umx [-x commandUserName commandUserPassword] -T userName password
duration
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• userName: Represents the user name.
• password: Represents the user password.
• duration: Represents the period of validity of the ticket in seconds.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
Syntax
umx [-x commandUserName commandUserPassword] –changepwd userName
oldPassword newPassword
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• userName: String that represents the user name.
• oldPassword: String that contains the old password.
• newPassword: String that contains the new password.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
Overview
You can use the following commands to encrypt and decrypt the data of users and groups in
order to apply Secure Application Data Support (SADS):
• Enable encryption (Page 247)
• Encrypt keys (Page 248)
• Decrypt keys (Page 248)
At the application level, SADS can be enabled via umx or the Web UI by modifying an
account policy. At the level of users and groups, this is only possible with umx.
See also: Change account policies - Secure Application Data Support (Page 243)
Syntax
umx [-x commandUserName commandUserPassword] -SK -e {-u user |-g
group} [-s]
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• user: Represents the user name if the "–s" parameter is present, or the internal user
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record. You can query the user identifier with the "Create list of object
details" command.
See also: Create list with object details (Page 202)
• group: Represents the group name if the "–s" parameter is present, or the group-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s" parameter is not
present, the objects are identified with their internal identifier.
Syntax
umx [-x commandUserName commandUserPassword] -AK -e -k Key {-u user |-
g group} [-s] [-f]
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• Key: Application key to be used to encrypt the application data.
• user: Represents the user name if the "–s" parameter is present, or the internal user
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record. You can query the user identifier with the "Create list of object
details" command.
See also: Create list with object details (Page 202)
• group: Represents the group name if the "–s" parameter is present, or the group-internal
identifier if the "–s" parameter is not present. The identifier is a positive number that uniquely
identifies the data record.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-s If the "-s" parameter is present, the objects are identified with their name. If the "-s" parameter is not
present, the objects are identified with their internal identifier.
-f The encrypted key is stored in the clipboard of umx.
SADS provides offline authentication, which means that users can authenticate themselves
even if a connection to a UM server is not possible. This only applies if the user has
performed at least one decryption, the decryption of the EAKs must be possible according to
the subject keys available for this user. To use this functionality, the subject keys used for the
decryption are copied to the local cache.
Syntax
umx [-x commandUserName commandUserPassword] -AK -d {-k
EncryptedKey|-f}
Parameters
• commandUserName: String that represents the name of the user executing the command.
• commandUserPassword: String that represents the password of the user executing the
command.
• EncryptedKey: Key to be decrypted for the user or group, depending on their data access
configuration.
Optional parameters
Parameter Description
-x The command is executed by the user specified as the input parameter.
-f The UMX clipboard is used as input for the encrypted key.
Value Description
0 Success
-1 Syntax error of the command
In all other cases, the command returns the last error code in decimal format returned by the
UMC APIs called during the command execution.
For more information, see the section Error codes for UMC APIs (Page 250).
Example #1
As an example, the following script is used to display information on a user designated as 66
when the identifier "66" is not assigned to any user in the UMC database:
umx -i -u 66
echo %errorlevel%
Nothing is deleted and umx returns the decimal number "273". This corresponds to the
following error code in the error codes for UMC APIs:
See also
Create list with object details (Page 202)
General errors
Authentication errors
Processing errors
File errors
Package errors
Database errors
Alias error
Parameter sizes
The following table contains the sizes for the most important UMC database fields:
Name of the API API object Display name in UMX parameter Size in characters
property the UMC Web UI
SL_USER_NAME SLOBJ_USER User name name 100
SL_USER_PASS‐ SLOBJ_USER Password password 120
WORD
SL_USER_FULL‐ SLOBJ_USER Full name fullName 250
NAME
SL_GROUP_NAME SLOBJ_GROUP Group name name 100
SL_GROUP_DE‐ SLOBJ_GROUP Description description 260
SCRIPTION
SL_ROLE_NAME SLOBJ_ROLE Role name name 255
SL_ROLE_DESCRIP‐ SLOBJ_ROLE Description description 40
TION
SL_ATTRIB‐ SLOBJ_ATTRIBUTE Attribute name attribute name 80
UTE_NAME