WinCC Security · User Roles · Industrial Access Control

SCADA Security in WinCC: User Roles, Permissions & Access Control Explained

Design WinCC access control around least privilege: separate operators, maintenance, supervisors and engineers, protect critical commands, and verify security during commissioning.

User Administrator / roles Least privilege Command permissions Audit-ready commissioning

Learning Overview

Part 1: Role modelPart 2: WinCC permissionsPart 3: Industrial security controlsEstimated time: 150 minutes

Prerequisites / What You’ll Need

  • WinCC engineering/test project with security features available
  • Defined operational roles for the plant or training system
  • List of critical HMI actions and engineering functions
  • A non-production test account for each role
Security principle

SCADA security is not “one password on the HMI”. Build layers: unique user identity, role-based permissions, protected engineering access, network controls, backups, patch/change management and PLC-side validation of critical commands.

  • Define roles and protected actions before creating user accounts.
  • Use least privilege: users receive only the functions needed for their job.
  • Protect critical writes in both WinCC and PLC logic; HMI security alone is not a process interlock.
  • Test every role by attempting both allowed and denied actions during commissioning.

Practical WinCC Engineering Guide

This technical guide focuses on WinCC User Administrator, SCADA security and hands-on Siemens PLC / SCADA commissioning practices.

1. SCADA Security Model for WinCC

A practical security model separates identity, authorization and process validation. WinCC identifies the logged-in user and controls HMI permissions. The operating system/network protect the station and communications. The PLC still validates whether a command is permissible for the current machine state.

Layered model

User Identity → WinCC Role/Permission → Screen/Command Authorization → PLC Permissive/Interlock → Audit/History

2. Define Roles Before Creating Accounts

Avoid assigning permissions one user at a time without a role model. Start with job functions and create a permission matrix.

RoleTypical allowed actionsTypical restrictions
OperatorStart/stop permitted equipment, acknowledge alarms, select approved recipeNo engineering changes, no user administration
MaintenanceDiagnostics, manual maintenance functions, limited resetsNo recipe master edits unless required
SupervisorProduction overrides defined by policy, recipe approval, reportsNo project engineering by default
EngineerEngineering/commissioning functions in controlled modeAccess limited to authorized personnel
AdministratorUser/security administrationNot used as a routine operator account

3. Map Permissions to HMI Actions

List every high-impact action and assign the minimum role required. Examples include motor start/stop, auto/manual selection, alarm reset, setpoint edit, recipe edit, maintenance bypass, report deletion, user management and Runtime exit.

For setpoints, use both authorization and range validation. A user may be permitted to edit temperature, but the PLC should still reject values outside the approved engineering range.

4. Configure WinCC Users, Groups or Roles

In WinCC Classic, user administration is commonly engineered with the User Administrator. Other WinCC generations use their own user/role engineering environment. Create groups/roles first, assign permissions, then add named user accounts.

  • Use unique accounts instead of shared “operator/operator” credentials.
  • Do not use the administrator account for routine operation.
  • Apply the password/session rules available in the installed product and plant policy.
  • Document account ownership and disable accounts that are no longer required.
Version note: exact menus and security features differ between WinCC Classic, WinCC Professional/Advanced and WinCC Unified. Follow the product generation and licensed options used in the project.

5. Protect Screens, Buttons and Critical Commands

Authorization should be enforced at the action itself, not only by hiding a navigation button. A hidden button is a usability technique; it is not the entire security boundary.

  • Protect recipe-edit controls.
  • Protect maintenance/manual commands.
  • Protect Runtime exit and engineering shortcuts.
  • Protect user administration.
  • Make denied actions clear to the operator without revealing sensitive configuration details.

6. Login, Logout and Session Behavior

Define what happens when no user is logged in, when a session times out and when a shift changes. Shared terminals should not remain indefinitely authenticated as an engineer. If automatic logout/session timeout is available and compatible with operations, use it according to plant policy.

7. Engineering and Maintenance Access

The engineering workstation and Runtime server deserve stricter control than a standard operator action. Restrict who can modify the WinCC project, download PLC changes, change network settings or install software. Maintain tested backups and a documented change-management process.

Remote access should be explicitly authorized, time-bounded where possible, and protected by the organization’s approved secure-access architecture rather than exposing SCADA services directly to the internet.

8. Network and Platform Security Controls

WinCC user permissions are one layer of an industrial cybersecurity program. Coordinate with OT/IT policy for network segmentation, host firewall rules, patch management, malware protection compatible with the control system, time synchronization, backups and account lifecycle management.

  • Separate control networks from general office networks where architecture requires it.
  • Allow only required communication paths and services.
  • Keep engineering laptops controlled and scanned according to site policy.
  • Protect backup media and restore procedures.
  • Review third-party remote-support access.

9. Audit and Accountability

For critical operations, record who changed what and when using the audit/history capabilities available in the installed WinCC environment or the plant’s approved logging system. At minimum, important recipe changes, setpoint changes, alarm acknowledgements and security administration should have defined accountability where process requirements demand it.

10. Security Commissioning Test

  1. Log in as Operator and verify allowed production controls.
  2. Attempt a protected engineering or recipe-edit action and confirm denial.
  3. Log in as Maintenance and test the approved diagnostic/manual functions.
  4. Log in as Supervisor and test only the additional approved privileges.
  5. Verify administrator functions are inaccessible to operational accounts.
  6. Test logout/session behavior and what permissions remain when no user is logged in.
  7. Attempt an out-of-range setpoint as an authorized user and confirm PLC validation still rejects it.

11. Common WinCC Security Problems

ProblemLikely causeCheck
User can see screen but button failsAction permission missingControl authorization and user role
Everyone uses one accountNo role/account lifecycle processCreate named users and groups
Engineer stays logged inNo session discipline/timeoutLogout policy and supported timeout settings
HMI blocks edit but PLC accepts external writeSecurity only implemented at HMIPLC validation and network/write paths
Cannot reconstruct parameter changeNo audit/history requirement implementedUser/event logging design

12. Hands-On Role-Based Access Lab

Create Operator, Maintenance, Supervisor and Engineer roles. Protect recipe editing, setpoint changes, maintenance mode and Runtime exit with different permissions. Test every role against an access-control matrix and document pass/fail evidence.

WinCC User Roles & Permissions Lab

Hands-on lab
Before you start
  • Use a training or test system, not a live production plant.
  • Document the starting PLC/WinCC state and expected result.
  • Verify communication and backups before applying engineering changes.
1

Build role matrix

Define Operator, Maintenance, Supervisor and Engineer permissions.

Every critical HMI action has an owner/required role.
2

Configure users

Create test users and assign only the planned rights.

Accounts inherit the intended role permissions.
3

Protect actions

Apply authorization to recipe edits, maintenance mode and Runtime exit.

Unauthorized role cannot execute protected actions.
4

Prove defense in depth

Try an invalid setpoint with an authorized account.

PLC range/interlock logic still rejects unsafe command.

Frequently Asked Questions

What is WinCC User Administrator?

In WinCC Classic, User Administrator is used to configure users/groups and authorizations. Other WinCC generations use different user/role engineering interfaces.

What is least privilege in SCADA?

Least privilege means each user receives only the permissions needed for the assigned operational or engineering role.

Is hiding a button enough to secure a command?

No. Apply authorization to the action and keep process validation/interlocks in the PLC. Hiding a control is not a complete security boundary.

Should operators share one WinCC account?

Unique user identities are preferable where accountability is required. Shared accounts reduce traceability and make access revocation difficult.

Does WinCC security replace network security?

No. User permissions are one layer. Industrial security also requires controlled engineering access, network architecture, host security, backups and change management.

Verified learning pathway

Discuss SQL Fundamentals and Automation Training

Explore practical SQL Server, PLC/SCADA integration and industrial data training options.

Content reviewed: 4 August 2026

☎ Call WhatsApp ✉ Email Enquire Now