User Documentation

OPC UA Server
Systemhandbuch
2696780000/02/04.2020
71
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:String"
NodeId="1:i=1018" BrowseName="MyString" DisplayName="MyString"
ValuePath="APPL.system.vSTRING" AccessLevel="0x03"/>
<!-- string constant -->
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:String"
NodeId="1:i=1020" BrowseName="String Constant" DisplayName="String Constant"
ValueConstant="My test string constant" AccessLevel="0x03"/>
<!-- int32 constant-->
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:Number.0:Integer.0:Int32"
NodeId="1:i=1021" BrowseName="Int32 Constant" DisplayName="Int32 Constant"
ValueConstant="12" AccessLevel="0x03"/>
<!-- float constant -->
<Variable
DataType="0:Types.0:DataTypes.0:BaseDataType.0:Number.0:Float"
NodeId="1:i=1022" BrowseName="Float Constant" DisplayName="Float Constant"
ValueConstant="12.47" AccessLevel="0x03"/>
<!-- create a subfolder for arrays -->
<Object DataType="0:Types.0:ObjectTypes.0:BaseObjectType.0:FolderType"
NodeId="1:i=1023" BrowseName="1-dim Arrays" DisplayName="1-dim Arrays">
<!-- boolean array - block mapping -->
<Variable DataType="0:Types.0:DataTypes.0:BaseDataType.0:Boolean"
NodeId="i=1024" BrowseName="bool array" DisplayName="bool array"
AccessLevel="0x03" ValueRank="1"> <!-- ValueRank must always be 1 -->
<!-- ArrayOffset and ArrayLength are optional -->
<ArrayDimension ArrayOffset="0" ArrayLength="2"
ValuePath="APPL.system.vBoolArray"/>
</Variable>
</Object>
</Object>
</Instances>
</OpcUAInformationModel>
Rollenbasiertes Berechtigungsmodell
Der OPC UA Server unterstützt die Vergabe von Zugriffsberechtigungen für
Benutzer auf Basis von Benutzerrollen. Diese Zugriffsberechtigungen gelten
nur für die in der XML Datei definierten Knoten und bei Anmeldung des Cli-
ents mit Benutzername und Passwort. Ein anonymer Client hat weiterhin
vollen Zugriff auf alle Knoten.
In der Benutzerverwaltung müssen sowohl Benutzer und Rollen angelegt,
als auch den Benutzern eine oder mehrere Rollen zugewiesen werden. Die
Rollennamen im XML müssen mit den Namen in der Benutzerverwaltung
übereinstimmen. Wenn sich ein OPC UA Client mit dem Server verbindet,
greift dieser auf die Benutzerverwaltung zu, um die Authentifizierungsdaten
und Rollen des Clients auszulesen. Im XML werden den angelegten Rollen
Berechtigungen zugewiesen. Diese Berechtigungen gelten nur für die vom
XML instanzierten Knoten. Falls in der Benutzerverwaltung bereits Rechte
für Rollen vergeben wurden, werden diese vom OPC UA Server nicht be-
rücksichtigt. Der OPC UA Server überprüft vor jeder Anfrage, ob die Rollen
des Benutzers die Berechtigungen für den Zugriff erfüllen.
Bei gewünschten Zugriffen auf Werte von Variablenknoten wird zuvor zu-
sätzlich die am jeweiligen Variablenknoten eingestellte Zugriffsberechtigun-
gen (Attribut AccessLevel) überprüft. Wenn der Wert eines Variblenknotens