Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

Resumo sobre o conteúdo da páginaThis page provides an overall introduction on Security Module configuration objects and settings. 


On this page:

Table of Contents
maxLevel2
minLevel32


Security

Settings

Users

This section describe the settings related to Security module.

AnchorSecurityUserProperties

is the summary for SecurityUsers configuration. For detailed information, see the Security Users page.

Pre-defined Users

SecurityUserPropertiesUsersPre-defined users

The following user names are configured by default:

  • Administrator: built-in user that controls the Security System. No password is configured by default. You should set a password for this user.

  • Guest: used by default to access and when you log off as another user. No password is configured by default.

  • User: used as a generic login user. No password is configured by default.

Note
titleGuess access

If the User did not execute any Log On or Identification procedure, it will be recognized as the pre-defined Guest User, which is equivalent to an anonymous access.


The Guest user is the default user for anonymous logins and does not have a password assigned. It cannot be deleted or have a password added. When you log off as another user, the Guest user must be availableis activated. To restrict access to resources, you may modify the permissions for the Guest user.

Avoid creating other users with the same names or altering the row IDs of these built-in platform objects. The Administrator is the sole user capable of deleting, blocking users, and defining passwords for database interfaces.

Default properties

Main Configuration Properties

Security Users Main Properties

Security Users properties

Field/Column

Description

Name

Enter a user name. The system allows you to know if the name is not valid.

Permissions

Select the permission group to be used by this user. See

Configuring

Security Permissions.

Password

Enter a password for the user. The system allows you to know if the password is not valid. You can configure password requirements. See

Configuring

Security Policies.

PasswordHint

Enter information that can help you remember the user’s password.

Blocked

Select to block the user’s access. You may want to use this for users who are no longer in your company.

Deleted

Select to block the user’s access and flag the user as deleted, without deleting the user. You may want to use this for users who are no longer in your company.

Policy

Select the policy settings to use for this user. See

Configuring Policies.

Security Policies.

Profile

Enter the user’s email address, phone number, and full name.

AnchorSecurityPermissionsPropertiesSecurityPermissionsProperties



Permissions Groups

This is the summary for Security PermissionsGroups configuration. For detailed information, see the Security Permissions page.

Permissions

Pre-defined Security

groups

Permissions Groups

The platform comes with a few predefined Permission Permissions groups that you can use, or you can create your own.

  • Administrator
  • Guest
  • User
  • Engineering
  • Supervisor
  • Maintenance
  • Operator

Security Permissions propertiesMain Configuration Properties

Column

Description

Name

Enter a name for the group. 

Edit

Select the modules users in the group can access when editing a project.

Run

Select the modules users in the group can access when using the runtime.

Description

Enter a description for the Permission group.


Edit

permissions

Permissions (Designer Restrictions)

It is possible to allow/deny a user to edit different project tabs in the Engineering Environment. The available options are shown in the image below.

Edit Permissions

properties

Properties

Property

Description

Unrestricted

Select to allow all Edit Permissions

EditTags

Select to allow tag editing.

Historian

Allow edition in Historian module.

Security

Select to allow for the Security module access.

Alarms

Select to allow for the Alarms module access.

Scripts

Select to allow for the Script module access.

Datasets

Select to allow for the Datasets module access.

Displays

Select to allow for the Displays module access.

Reports

Select to allow for the Reports module access.

Startup

Select to allow Startup.

Publish

Select to allow Publish.

Settings

Select to allow for the Settings access.

Notes

Select to allow for the Notes access.

CreateTags

Select to allow tag creating.


Run

permissions

Permissions (Runtime)

It is also possible to allow/disallow a user to perform different actions during Runtime.

Run Permissions propertiesProperties

Property

Description

Unrestricted

The user gets permission to do everything.

Test

Once selected, the user can run a Test.

Startup

Once selected, the user can run a Startup with all the modules. If not, the modules script, datasets, devices, and reports will not start.

Shutdown

Once selected, the user is able to shutdown the application

ClientStart

Once selected, the user is able to run all the modules in a startup. If not, the modules displays and devices will not start.

ClientShutdown

Once selected, the user is able to shutdown the application as a client.

StartTools

Once selected, the user can run the diagnostics tool, such as: property watch, trace window and module information. If it is not selected, the user is unable to start these tools.

ToolsSetValues

Once selected, the user gets the read-only permission in the diagnostics tool, such as: property watch, trace window and module information.

CreateUsers

Once selected, the user is able to create new user for the project.

SwitchApplication

If it is not selected, the user can not switch application, the taskbar disappears.

WebAccess

When the user has this permission, he can access the Web Client through the URL found in the Info → Redundancy → Web Client URL. If this option is not selected, the user cannot use the Web Client.

Anchor

.



Security Policies

This is the summary for Security Policies configuration. For detailed information, see the Security Policies page.

On Security → Policies, there are three main configuration columns that can be important for CFR 11 compliance.

SecurityPoliciesPropertiesSecurityPoliciesPropertiesPolicies

Pre-defined Policies

The platform comes with a few predefined policies that you can use, or you can create your own.

  • Default

  • Enhanced

  • Critical

Security Policies propertiesProperties

Column

Description

Name

Enter a name for the policy. The system allows you to know if the name is not valid.

Identification

Select the password rules for both editing a project and accessing the runtime.

Esign

For runtime only. Select to enable a timeout for the runtime login. Enter the timeout period in minutes.

Session

For runtime only. Use to enable a timeout for the runtime session. Select what will cause an automatic logoff, then enter the appropriate values for InactivityMinutes and DurationHours. This setting only logs the user off. The application continues to run.

Description

Enter a description for the policy.


Identification Properties

Contains several password configuration options, detailed below: properties

Security Identification propertiesProperties

Property

Description

AllowPasswordChange

Allows password changesIndicates if a user, other than an administrator, can change its own password.

PasswordMinLength

Sets the minimum password lengthMinimum character length for password (0 means no restrictions).

BlockOnInvalidAttempts

Defines the maximum Maximum number of invalid login attempts before blocking user (0 means no restrictions).

AllowShareUser

Indicates if user can be shared between stations.

UserNameMinLength

Sets the minimum length of the user name.

PasswordHistory

MinPasswordAge

MaxPasswordAge

BlockAging

Minimum character length for username (0 means no restrictions).

PasswordHistory

Remember last passwords (Range: 0-5).

MinPasswordAge

Minimum password age in hours (0 means no restrictions).

MaxPasswordAge

Maximum password age in hours (0 means no restrictions).

BlockAging

Maximum blocking age in hours (0 means no restrictions).


Anchor
EsignProperties
EsignProperties
Esign Properties

When enabled, a password will be requested for Action Dynamics with eSign. The password remains valid for a specified timeout time (in minutes).Esign properties

Security Esign propertiesProperties

Property

Description

Enableed

TimeoutMinutes

Enabled

Password will be requested for Action Dynamics with eSign is enabled.

TimeoutMinutes

Timeout  in minutes for password with eSign to remain valid.


Session Properties

User can be logged off according to a determined Inactivity Time (in minutes) and/or after a maximum session duration (in hours).Session properties

Security Session

properties

Properties

Property

Description

AutoLogOff

InactivityMinutes
  • None
DurationHours
  • Inactivity
RuntimeUsers
  • Duration
Content
  • Both

Advanced settings

Runtime Execution

Content about Security Runtime Execution

AnchorMonitoringClientConnectionsMonitoringClientConnectionsMonitoring Client Connections

InactivityMinutes

Inactivity Time (in minutes).

DurationHours

Inactivity Time after a maximum session duration (in hours).


To apply a created session configuration to a User, go to Security → Users (Policies Column), and select the desired option.


RuntimeUsers

The combination of the RuntimeUsers and regular SecurityUsers table are called Solutions Users.

Info

The main difference between the two groups is that engineering users can access the software's engineering mode, allowing them to design and configure the project. In contrast, runtime users only can use the application, they cannot change the project configuration or design since they don't have access to the engineering mode.

Another distinction is that the regular Users are defined within the Solution file itself, as the Runtime Users are defined in external Security Servers or databases.

Learn more at Security RuntimeUsers.

The Monitoring Client Connections empowers you to track and manage active connections. This functionality enables efficient troubleshooting and resource allocation for your project's needs.

AnchorManagingUsersWithScriptsManagingUsersWithScriptsManaging Users with scripts

During the launch of an application, the Login process accepts all users defined in the Project Configuration. Additionally, it is possible to dynamically add Runtime Users during runtime execution, and they are stored in a default database located in Datasets → Dos → RuntimeUsers. Customization of the database used for user storage is also possible in the Module Datasets. Furthermore, users can be created or modified using the Security Namespace's available methods. 

To simplify user management, a platform Plugin is available in the Security Module that provides a template application for creating a Runtime Display. The UserManagement Plugin can be imported by selecting the appropriate Plugin in Project → Plugins. Once imported, the Plugin creates names, such as SecurityAccounts and ChangePass, that aid in user management.

The Security Namespace offers a wide range of methods that can be used to create or modify Runtime Users before starting runtime execution or during project execution. The documentation provides detailed information on the available features and methods, allowing users to enhance their application's functionality and flexibility during runtime. By utilizing the Security Module's capabilities, users can effectively manage Runtime Users, increasing the overall security and functionality of their applications.

In the following, you can find more details regarding the available RuntimeUser methods in the Security namespace:

Code Block
languagec#
titleCreating RuntimeUser examples
Adding Runtime Users
@Security.NewRuntimeUser(string name, out int errorCode)
// Creates a new RuntimeUser
//  name:  User  Name
// errorCode: Error code (output)
// Returns: String containing the error message (if error) or empty (if not error)
 
@Security.AddRuntimeUser(string name, string permissionsStr, string password, string passwordHint, string policyStr, string profilePhone, string profileCompleteName, bool oneTimePassword)
// Add Runtime User
// name:  User  Name
// permissions Str: Permissions
// password: Password
// passwordHint: Password hint
// policyStr: Policy
// profileEmail: Profile email
// profilePhone: Profile phone
// profileCompleteName: Profile complete name
// oneTimePassword: flag (true or false) to set a One Time Password setting. If true, a password change is required after first login
// Returns: String containing error message (if error) or empty (if not error)
AnchorCustomizingLoginProceduresCustomizingLoginProceduresCustomizing Login Procedures

The Login page is editable. You just need to select the display with name LogOn to edit its layout. As you can see in the code behind of that display, it calls the method Security.Logon() to do the validation of the user. If you want to perform any other user validation, you just need to modify that logic calling your own validation system, and then calling the LogOn method, according to the results of your validation.

Another way to customize the logon is to put your own custom logic on the ClientStartup script task. The script is executed on any computer that is connected to the server application. You can perform verifications based on computer IP, computer name, Windows Active-Directory Logged user, or any other criteria to specify if the user is allowed to start the application and which should be their credentials. After that, you can either call client.Shutdown to terminate the application if it was an unauthorized access or Security.Logon() with a user that matches the selected security profile.

By default, when starting the application on a client computer, instead of requesting a login, we start the system with the user GUEST. The user Guest is equivalent to an anonymous login. If you do not want that on your application, just replace the startup page with a page requesting the Logon information.


In this section...

Page Tree
root@self@parent
spacesV10