Beitragsliste anzeigen
WinCC SIMATIC Logon / AUA -- Produktinformationen -- Informationen zu SIMATIC Logon / Advanced User Administrator
Wie kann bei Einsatz eines Chipkartenlesers beim Ziehen der Chipkarte automatisch ein voreingestellter Benutzer eingeloggt werden?
Welche Unterstützung bietet die Siemens AG, um die FDA-Richtlinien mit den Produkten zu erfüllen?
Welche Unterstützung bietet die Siemens AG, um die FDA-Richtlinien beim Einsatz von WinCC zu erfüllen?
Wie kann mit SIMATIC Logon eine Chipkarte konfiguriert werden, mit der man sich an jedem Rechner lokal anmelden kann?
Warum wird ab WinCC V6.2 kein Gruppenauswahl-Dialog mehr angezeigt?
Wie kann ab SIMATIC Logon V1.4 die Funktion "GetSignature" verwendet werden?
Wie lautet das Standardpasswort des Benutzers "Administrator" im WinCC User Administrator?
Warum wird der angemeldete Benutzer nicht zur Runtime angezeigt?
Wie kann die Windows Bildschirmtastatur von SIMATIC Logon (ab V1.4) durch die ProTool Tastatur ersetzt werden, um während der Runtime nicht auf das Betriebssystem zu gelangen?
Wie kann zur Runtime ein angemeldeter Benutzer überprüft werden, wenn SIMATIC Logon (ab V1.3) verwendet wird?
Wie kann zur Runtime ein angemeldeter Benutzer überprüft werden, wenn SIMATIC Logon bis zur Version V1.2 SP1 verwendet wird?
Wie kann die SIMATIC Logon Dialogbox per C-Script aufgerufen werden?
In WinCC Runtime erscheint anstatt der SIMATIC Logon Box die WinCC Login Box
Option Logon -- Entwicklungsumgebung einrichten -- System parametrieren
Wie kann nach dem Hochlauf ein Standardbenutzer automatisch angemeldet werden, ohne die Login Box zu verwenden?
Wie kann bei Einsatz eines Chipkartenlesers beim Ziehen der Chipkarte automatisch ein voreingestellter Benutzer eingeloggt werden?
Warum wird der angemeldete Benutzer nicht zur Runtime angezeigt?
Wie kann zur Runtime ein angemeldeter Benutzer überprüft werden, wenn SIMATIC Logon (ab V1.3) verwendet wird?
Wie kann zur Runtime ein angemeldeter Benutzer überprüft werden, wenn SIMATIC Logon bis zur Version V1.2 SP1 verwendet wird?
Wie kann mit SIMATIC Logon eine Chipkarte konfiguriert werden, mit der man sich an jedem Rechner lokal anmelden kann?
Anmeldefenster SIMATIC Logon im CFC/SFC
Wie kann nach einer einstellbaren Anzahl fehlgeschlagener Anmeldeversuche ein Benutzerkonto gesperrt werden?
Wie können die von SIMATIC Logon erzeugten Einträge in die passwortgeschützte Datei angezeigt bzw. ausgedruckt oder exportiert werden?
Wie kann die WinCC Logon Box in der OS-Runtime wiederhergestellt werden, wenn SIMATIC Logon auf diesem Rechner installiert ist?
Warum wird ein Benutzer beim Einloggen in WinCC RT der Gruppe "Emergency_Operator" zugewiesen?
Warum ist bei Verwendung von SIMATIC Logon nach dem Start von WinCC RT bereits ein Benutzer angemeldet?
Warum wird bei Verwendung von SIMATIC Logon im WinCC User Administrator nur der eingeloggte Benutzer bei laufender Runtime angezeigt?
Warum funktioniert ein C-Script "PWRTSilentLogin" nur mit WinCC Benutzern, nicht aber mit SIMATIC Logon Benutzern?
Wie kann zur Runtime ein angemeldeter Benutzer überprüft werden, wenn SIMATIC Logon bis zur Version V1.2 SP1 verwendet wird?
Bestellnummer:

Anleitung:
Der WinCC User Administrator stellt standardmäßig keine Funktion zur Verfügung, mit der ein aktuell angemeldeter Benutzer durch eine Passwortabfrage überprüft werden kann. WinCC verfügt über  Funktionen, mit denen ein Anmeldevorgang ausgelöst bzw. durchgeführt werden kann. Das führt jedoch dazu, dass eine komplett neue Anmeldung erfolgt, auch wenn bei der Anmeldung der aktuelle Nutzername wieder verwendet wird. Eine Anmeldung ist in der Regel mit einem Bildwechsel (Aufruf des Startbildes) und dem Schließen aller Bildbausteine verbunden.

Ziel:
Oft besteht die Anforderung, unmittelbar vor dem Ausführen einer Schalthandlung den aktuell angemeldeten Benutzer durch eine zusätzliche Passwortabfrage zu überprüfen. Es soll keine erneute Anmeldung durchgeführt werden. Nach erfolgreicher Verifizierung des Benutzers soll die Schalthandlung ausgeführt und der Bedieneingriff als Bedienmeldung gespeichert werden. Dadurch kann ein nicht berechtigter Bedieneingriff, z.B. während einer kurzen Abwesenheit des aktuell angemeldeten Benutzers ohne Abmeldung vom System, verhindert werden.

Lösung:
Bei Verwendung der Option SIMATIC Logon bis zur Version V1.2 SP1 stehen die Funktionen der so genannten AUA-Schnittstelle zur Verfügung, um auf die SIMATIC Logon Benutzerverwaltung zuzugreifen. Dieser Beitrag verwendet die Funktionen "VerifyUser()" und "GetSignature()" der AUA-Schnittstelle, um den aktuell angemeldeten Benutzer zur Runtime zu überprüfen.

Achtung!
Beachten Sie, dass die AUA-Schnittstelle ab der Version SIMATIC Logon V1.3 nicht mehr unterstützt wird. Der Beitrag 24458155 zeigt, wie Sie in diesem Fall vorgehen.
 
Nr. Beschreibung
1 "VerifyUser()"
Die Funktion ist wie folgt deklariert:

LPCSTR WINAPI VerifyUser (LPCTSTR UserID, LPCSTR Password);

Der Funktion werden die Parameter  "UserID" und "Password" als Zeichenketten übergeben. Die Funktion prüft für die übergebene "UserID" (Benutzername) das übergebene Passwort. Bei erfolgreicher Überprüfung des Passwortes gibt die Funktion die Zeichenkette "ok" und im Fehlerfall einen Fehlertext zurück.

2 "GetSignature()"
Die Funktion  ist wie folgt deklariert:

BOOL (LPCTSTR UserID);

Der Funktion wird der Parameter "UserID" als Zeichenketten übergeben. Die Funktion öffnet den Dialog "Electronic Signature" und belegt das Feld "UserID" mit der übergebenen "UserID" vor.


Bild 01

Der Anwender kann nun im Eingabefeld "Password" das entsprechende Passwort eingeben. Bei Betätigung der Schaltfläche "Sign" überprüft die Funktion die übergebene UserID und Passwort. Bei erfolgreicher Verifizierung des angegebenen Nutzers wird der Dialog geschlossen und die Funktion gibt den Wert "TRUE" zurück. Bei nicht erfolgreicher Verifizierung bleibt der Dialog "Electronic Signature" geöffnet. Das Passwort kann erneut eingegeben werden. Bei Betätigen der Schaltfläche "Cancel" wird der Dialog geschlossen und die Funktion gibt den Wert "FALSE" zurück.

Dieser Beitrag stellt Ihnen das Script "SimaticLogonVerifyUser()" zur Verfügung, um eine Benutzerüberprüfung zur Runtime durchzuführen. Das Script setzt die Option SIMATIC Logon voraus. Die folgende Tabelle beschreibt, wie Sie dieses Script verwenden und Ihren Wünschen anpassen können.
 
Schritt Beschreibung
1 C-Funktion zur Benutzerüberprüfung in das WinCC-Projekt kopieren
Der folgende Download enthält die Datei "simaticlogonverifyuser.fct".

WinCC_VerifyUser.zip ( 3 KB )

Kopieren Sie diese Datei in das Verzeichnis "library" in Ihrem WinCC-Projektverzeichnis. Öffnen Sie den Editor "Global Script C" und führen Sie den Menübefehl "Optionen > Header neu generieren" durch. Danach steht Ihnen die Funktion "SimaticLogonVerifyUser()" als Projekt-Funktion zur Verfügung. Dieser Schritt muss auch im WinCC-Projekt eines Clients (MultiClients) durchgeführt werden, wenn die Bedienung mit Benutzerüberprüfung auf einem Client erfolgt.

Hinweis:
Nachfolgend wird der Aufbau der Funktion "SimaticLogonVerifyUser()" beschrieben:

BOOL SimaticLogonVerifyUser(char* pszUserID, char* pszPassword);

Die Funktion prüft, ob in den Parametern "pszUserID" und "pszPassword" gültige Zeichenketten übergeben wurden. Sie übergibt die Werte an die Funktion "VerifyUser()". Für den Fall, dass im Parameter "pszUserID" der Wert "NULL" übergeben wurde, wird der aktuell angemeldete Nutzer ermittelt und übergeben. Bei erfolgreicher Überprüfung durch die Funktion "VerifyUser()" liefert die Funktion den Wert "TRUE" zurück. Schlägt die Überprüfung durch die Funktion "VerifyUser()" fehl, wird die Funktion "GetSignature()" mit dem entsprechenden Nutzer aufgerufen. Gibt der Bediener nun im Dialog "Electronic Signature" das gültige Passwort ein und bestätigt die Eingabe mit der Schaltfläche "Sign", gibt die Funktion den Wert "TRUE" zurück. Wird der Dialog "Electronic Signature" abgebrochen, liefert die Funktion den Wert "FALSE".

2 C-Funktion zur Benutzerüberprüfung verwenden
Sie können die Funktion "SimaticLogonVerifyUser()" direkt im Prozessbild bzw. in einem Bildbaustein verwenden. Das folgende Bild zeigt den Aufruf der Funktion bei Mausklick auf einen Button.


Bild 02

Passen Sie dieses Beispiel Ihren Erfordernissen an. In diesem Beispiel wird nach erfolgreichem Aufruf der Funktion "SimaticLogonVerifyUser()" eine Bedienmeldung ausgelöst und die entsprechende WinCC-Variable zum Einschalten der Pumpe gesetzt.

Hinweis:
Die Funktion "ISALG_OperationLog()" ist hier nur beispielhaft angegeben, um eine Bedienmeldung zu erzeugen. In Beitrags-ID 24325381 finden Sie detaillierte Informationen zum Erzeugen einer Bedienmeldung. Beachten Sie, dass das System beim Erzeugen einer Bedienmeldung den Systemblock "Benutzername" zur Anzeige im WinCC Alarm Control automatisch mit dem aktuell angemeldeten Benutzernamen versorgt. Der Funktion "SimaticLogonVerifyUser()" wird deshalb in diesem Beispiel bewusst der Wert "NULL" im Parameter "pszUserID" übergeben, damit keine Abweichung vom aktuell angemeldeten und dem tatsächlich verifizierten Benutzer besteht.

 Beitrags-ID:24458070   Datum:2007-01-10 
Dieser Artikel...hat mir geholfenhat mir nicht geholfen                                 
mySupport
My Documentation Manager 
Newsletter 
CAx-Download-Manager 
Support Request
Zu diesem Beitrag
Drucken
PDF erstellen 
Beitrag versenden
QuickLinks
Kompatibilitäts-Tool 
Hilfe
Online Hilfe
Guided Tour