Sicherheitseinstellungen konfigurieren

Der OPC UA Server ermöglicht die Konfiguration von Berechtigungen auf Namespace- und Node-Ebene. Hierdurch kann sowohl der Zugriff auf ADS-Geräte (z. B. auf verschiedene SPS‑Laufzeiten) als auch Variablen feingranular eingestellt werden. Diese Sicherheitseinstellungen sind für alle ADS-Geräte verfügbar, die im Server-Namespace dargestellt werden können.

Sicherheitseinstellungen konfigurieren 1:

Konfiguration

Die Konfiguration der Berechtigungen erfolgt auf Basis einer XML-basierten Konfigurationsdatei (TcUaSecurityConfig.xml), die in demselben Verzeichnis wie der Server liegt. Die Konfigurationsdatei besteht aus den drei Bereichen Benutzer (Users), Gruppen (Groups) und AccessInfos.

Benutzer (Users)

Im Bereich Users können Sie Benutzerkonten konfigurieren, die vom OPC UA Server als Login akzeptiert werden sollen. Hierbei gibt es drei verschiedene Authentifizierungsmethoden:

OS (empfohlene Authentifizierungsmethode)

Es werden die Mechanismen vom Betriebssystem verwendet, um Benutzername und Passwort zu validieren. Das Benutzerkonto obliegt vollständig der Kontrolle des Betriebssystems und/oder der Domäne.

Server (nicht empfohlen)

Benutzername und Passwort sind nur dem OPC UA Server bekannt. Beide Informationen werden hierbei im Klartext in der XML-Datei hinterlegt.

None

Es wird nur der Benutzername vom Server ausgewertet, das Passwort wird ignoriert.

Benutzer können mit einem Tag <DefaultAccess> konfiguriert werden, das den Standardzugriff des Benutzers auf einen bestimmten Namespace angibt.

Benutzer können Mitglied einer oder mehrerer Gruppen sein. Dies können Sie über das Attribut MemberOf spezifizieren. Bei Mitgliedschaft in mehreren Gruppen trennen Sie die Gruppen durch ein Semikolon.

Sicherheitseinstellungen konfigurieren 2:

Gruppen (Groups)

Um eine einfachere Konfiguration mit mehreren Benutzeraccounts zu ermöglichen, können Sie die Benutzer in Gruppen zusammenfassen.

Gruppen können ebenfalls mit einem Tag <DefaultAccess> konfiguriert werden.

Über das Attribut MemberOf können Sie Gruppen verschachteln. Bei Mitgliedschaft in mehreren Gruppen trennen Sie die Gruppen durch ein Semikolon.

Sicherheitseinstellungen konfigurieren 3:

AccessInfos

Wenn eine feingranulare Einstellung von Berechtigungen auf Node-Ebene erfolgen soll, können Sie zusätzlich AccessInfos konfigurieren, welche die Zugriffsberechtigungen auf Nodes spezifizieren. Zugriffsrechte können hierbei auf Unterelemente vererbt werden. Obwohl AccessInfos die feingranularste Konfigurationsmöglichkeit von Berechtigungen ermöglichen, wird eine solche Konfiguration auch schnell unübersichtlich. Prüfen Sie daher, ob eine Konfiguration von Zugriffsrechten auf Namespace-Ebene (siehe oben) nicht ausreichend ist.

Die AccessInfo für eine Node beinhaltet die folgenden Einstellungen:

NS

Konfiguriert den NamespaceName, in dem die Node lokalisiert ist

Id

Konfiguriert den Identifier der Node, inklusive des IdentifierTypes (z. B. s = String)

Depth

Vererbungstiefe der Berechtigungen (-1 für unendlich)

User/Group

Benutzer oder Gruppe, der/die auf diese Node Zugriff erhalten soll, inklusive des AccessLevels

Sicherheitseinstellungen konfigurieren 4:

AccessInfos können per Drag-and-drop von Variablen aus dem Target Browser konfiguriert werden. Die konfigurierbaren Berechtigungen sind kumulativ.

Beispielkonfiguration

Gegeben sei folgendes einfaches Steuerungsprogramm. Die Variablen sind bereits im OPC-UA-Namespace des Servers veröffentlicht. Der OPC UA Server befindet sich zunächst im Auslieferungszustand.

Sicherheitseinstellungen konfigurieren 5:

Zugriffbeschränkungen

Der Zugriff auf den Server soll für Clients wie folgt eingeschränkt werden:

Einstellungen

Die Konfiguration des OPC UA Server wird wie folgt eingestellt:

Sicherheitseinstellungen konfigurieren 6:

Einstellungen für den Benutzer „Administrator“:

Sicherheitseinstellungen konfigurieren 7:

Einstellungen für den Benutzer „User1“:

Sicherheitseinstellungen konfigurieren 8:

Einstellungen für den Benutzer „User2“:

Sicherheitseinstellungen konfigurieren 9:

Einstellungen Access Infos „MAIN.Instance1“:

Sicherheitseinstellungen konfigurieren 10:

Einstellungen Access Infos „MAIN.Instance2“:

Sicherheitseinstellungen konfigurieren 11:

Einstellungen für die Gruppe „Users“:

Die Benutzergruppe wird sowohl mit grundlegendem Zugriff auf benötigte Server- und Typsystem-Namensräume ausgestattet als auch mit Read- und Browse-Berechtigungen auf den PLC1-Namensraum.

Sicherheitseinstellungen konfigurieren 12:

Ergebnis

Nach Aktivierung der Konfiguration stellt sich der Namensraum des Servers für „User1“ nach einem Verbindungsaufbau wie folgt dar:

Sicherheitseinstellungen konfigurieren 13:

Auf die Node „Instance1“ hat der Benutzer nur Leserechte, was durch das Attribut UserAccessLevel deutlich wird:

Sicherheitseinstellungen konfigurieren 14:

Der Benutzer „Administrator“ hingegen hat volle Zugriffsrechte auf alle Elemente des Namensraums:

Sicherheitseinstellungen konfigurieren 15: