Nutzerverwaltung und Zugriffsschutz für Strukturbausteine
(auf Anfrage erhältlich)
1 Überblick
Über die Nutzerverwaltung kann der Zugriff auf ausgewählte Strukturbausteine in den Projekten und der Zugriff auf Programmiersystemfunktionen (Editieren, Download. usw.) beschränkt werden.
- Know-How-Schutz für ausgewählte Software-Module
- Schutz vor Veränderung von Sicherheitsfunktionen
- Schutz vor unbeabsichtigter Änderung wichtiger Programmfunktionen
Durch die Verwendung der Nutzerverwaltung kann iCon-L nun auch an berechtigtes Service-Personal übergeben werden, ohne dass befürchtet werden muss, dass die Software manipuliert oder zerstört wird.
Die maximalen Rechte werden auch weiterhin durch überlagerte Schutzsysteme, z.B. durch Dongleeinstellungen, limitiert. In den Konten der Nutzer werden der Name, das Anmeldepasswort, die Rechte und die Passwörter für die Strukturbausteinzugriffe gespeichert.
Typ | Beschreibung |
---|---|
Administrator | Der Administrator kann alle Funktionen des Programmiersystems bis auf den Befehl „Freier Zugriff“ aufrufen. Außerdem kann er andere Nutzer hinzufügen, bearbeiten und löschen. |
Entwickler/Developer | Der Entwickler kann alle Funktionen des Programmiersystems bis auf den Befehl „Freier Zugriff“ aufrufen. |
Anwender/User | Bei Anwendern ist der Funktionsumfang des Programmiersystems auf den der Viewerversion beschränkt. Außerdem sind die Befehle zum Anlegen neuer Projekte, für die Offlineprogrammierung und zum Laden und Speichern von Anschlussparametern und der Parameterliste deaktiviert. |
Gast/Guest | Zusätzlich zu den Einschränkungen des Anwenders können Gäste die Befehle „Download“, „Simulation“ und „Parameter-Download“ nicht aufrufen. |
In den Konten der Nutzer werden der Name, das Anmeldepasswort, die Rechte und die Passwörter für die Strukturbausteinzugriffe gespeichert.
Alle Nutzer können ihr eigenes Konto bis auf die Rechte ändern. Die Einstellung der Rechte kann nur durch einen anderen Administrator vorgenommen werden. Damit wird sichergestellt, dass es immer mindestens einen Administrator gibt.
Administratorrechte (Beschränkungen)
Administratoren können zusätzlich Einstellungen anderer Nutzer ändern, neue hinzufügen und vorhandene bis auf sich selbst löschen. Die Einstellmöglichkeiten für andere Nutzer sind jedoch auf den Namen, die Rechte und die Vergabe eines neuen Anmeldepassworts begrenzt. Der Administrator kann von anderen Nutzern NICHT die Passwörter für den Zugriff auf Strukturbausteine lesen oder verändern. Mit dieser Einschränkung wird auch Administratoren der Zugriff auf fremde, geschützte Strukturbausteine verwehrt.
Zugriff
Zum Zugriff auf die Nutzerkonten stellt die erweiterte IACCESS.DLL eine Schnittstellenfunktion für das „Extras“-Menü zur Verfügung. Nach entsprechender Konfiguration kann die Funktion auch über die zugehörende Werkzeugleiste aufgerufen werden. Sie öffnet bei Administratoren einen Dialog mit einer Liste der Nutzerkonten. Mit den Tasten können neue Konten angelegt, vorhandene editiert und gelöscht sowie die Liste aktualisiert werden. Nutzer mit geringeren Rechten gelangen gleich zum Dialog mit ihren Kontoeinstellungen. Die Änderungen an den Konten werden sofort nach Schließen der Dialoge zum Anlegen neuer und Bearbeiten vorhandener Nutzer sowie nach dem Löschen von Konten in die Binärdatei geschrieben.
Die Möglichkeit mehrere Instanzen des Programmiersystems gleichzeitig zu nutzen, macht das permanente Speichern der Änderungen erforderlich. Die lokal und in der Datei gespeicherten Einstellungen des angemeldeten Nutzers werden außerdem beim Öffnen der Dialoge mit der Nutzerliste, einem Nutzerkonto oder der Passwortliste für Strukturbausteine auf Änderungen untersucht. Falls notwendig wird eine Aktualisierung empfohlen.
Besonders kritisch sind Änderungen von Namen oder Rechten von Nutzern, die in einer anderen Instanz des Programmiersystems angemeldet sind. Auf Basis des Namens können die zugehörenden Konteneinstellungen in der Datei gefunden werden. Eine sofortige Anpassung des Programmiersystems an neue Nutzerrechte ist nur in Ausnahmefällen möglich. Deshalb wird dem „extern geänderten“ Nutzer der Zugriff auf seine und andere Nutzerverwaltungsdaten bis zum erneuten Start des Programmiersystem und Login mit eventuell geändertem Namen verwehrt.
3 Nutzerverwaltung verwenden
Login
Während des Starts des Programmiersystems muss der Nutzer sich in einem Login-Dialog mit Namen und Passwort anmelden. Der Name des Nutzers, der zuletzt auf das System zugegriffen hat, wird vorgegeben. Nach fünfmaliger falscher Angabe von Name oder Passwort wird der Login-Dialog geschlossen und das Programmiersystem beendet.
Nach erfolgreichem Anmelden kann das Programmiersystem verwendet werden.
Auslieferungseinstellung
Derzeit wird die Nutzerverwaltung mit dem Konto für „Administrator“ und leerem Passwort ausgeliefert.
User Manager als Administrator aufrufen
Wenn Sie sich als Administrator eingeloggt haben, sehen Sie im User Manager die Liste aller für das Programmiersystem registrierten Anwender.
- Der Administrator kann sich selbst nicht löschen (deaktiviertes Delete)
- Der Administrator kann sich selbst konfigurieren
- Login Passwort ändern
- Passwörter für den Zugriff und den Schutz von Strukturbausteine eintragen, ändern, löschen
Die Passwortliste hat zwei Funktionen
- Wenn ich einen Strukturbaustein schützen möchte, dann kann ich hierfür ein Passwort aus der Liste auswählen.
- Wenn ich einen Strukturbaustein öffnen möchte, dann muss ich das hierfür bekanntgegeben Passwort in die Liste eintragen.
4 Voraussetzungen für das korrekte Arbeiten der Verwaltung
Die Konten der Nutzer werden in einer verschlüsselten Binärdatei gespeichert. Die Nutzerverwaltung erfordert immer eine korrekte Datenbasis mit mindestens einem Administrator.
5 Zugriffsschutz für Strukturbausteine
Der Zugriff auf Programme und Makros wird durch Passwörter beschränkt. Die Konfiguration ist für jeden Nutzer sichtbar und kann von Administratoren und Entwicklern jederzeit editiert werden. Ein Nutzer kann bis zu 10 Passwörter definieren, die er im Strukturbausteindesign Programmen und Makros zuordnet. Da in den Datenstrukturen für Strukturbausteine nur je ein Word-Wert für den Zugriffsschutz angegeben werden kann, werden aus den Passwörtern Checksummen berechnet und in die Datenstrukturen eingetragen. Der Wert 0 ist für den freien Zugriff reserviert. Alle Passwörter, die diese Checksumme ergeben, sind ungültig. Natürlich ist es bei 65536 Checksummenwerten nicht unwahrscheinlich das zwei Passwörter die gleiche Checksumme ergeben. So lassen sich allein aus vier Großbuchstaben (A-Z) 456976 verschiedene Passwörter bilden, d.h. mindestens 6 Kombinationen ergeben die gleiche Checksumme.
Enthält ein Programm oder Makro einen von 0 verschiedenen Word-Wert, so ist es geschützt. Vor dem Ausführen der Befehle „Bearbeiten“ und „Design“ sowie beim Ebenenwechsel in der Inbetriebnahme wird die Liste der Passwörter des angemeldeten Nutzers durchsucht. Ergibt keines die benötigte Checksumme, wird der Zugriff verweigert. Außerdem können gesperrte Strukturbausteine nicht exportiert und ausgedruckt werden. Die Befehle „Löschen“, „Umbenennen“ und „Kopieren“ für Strukturbausteine können auch bei fehlenden Zugriffsrechten aufgerufen werden.
Für den angemeldeten Nutzer im aktuellen Systemzustand gesperrte Strukturbausteine sind im Projektbaum durch gelbe Symbole markiert. Auch Makros ohne Zugriffsschutz sind in der Inbetriebnahme gesperrt, wenn sie in einem Programm oder Makro eingefügt sind, auf das nicht zugegriffen werden kann. Im Arbeitsblatt für das Design wird nach der Zuordnung eines Passworts ein Schloss neben den Tabellenköpfen „Inputs“ und „Outputs“ zur Kennzeichnung eines geschützten Strukturbausteins dargestellt. Nach dem Entfernen des Passwortschutzes verschwindet das Symbol wieder.
Bei der Arbeit mit dem Dialog „Strukturbausteinzugriff“, der über die Toolbar für das Design aufgerufen wird, muss beachtet werden, dass man gleichzeitig die Liste der Passwörter ändern und dem Strukturbaustein ein neues Passwort zuordnen kann. Nach Betätigung von OK wird dem Strukturbaustein das markierte Passwort zugeordnet und die Liste gespeichert. Ist kein Passwort ausgewählt, kann auf den Strukturbaustein frei zugegriffen werden. Mit Abbrechen wird der Dialog ohne Änderung der bisherigen Passwortzuordnung geschlossen. Bei Änderungen an der Liste wird gefragt, ob diese trotzdem gespeichert werden sollen.
Um zu gewährleisten, dass auf neu erzeugte Strukturbausteine immer zugegriffen werden kann, ist in der Designvorlage bei iCon-L und test.con für den Zugriffsschutz immer der Word-Wert 0 gespeichert. Auch nach Aufruf des Befehls „Definieren als Design-Vorlage“ bei einem geschützten Strukturbaustein bleibt der genannte Wert erhalten. Außerdem wird durch den Befehl „Zurücksetzen auf Design-Vorlage“ der Word-Wert in den Strukturbausteindaten nicht geändert. Der Passwortschutz bleibt.
Durch Löschen oder Ändern der Passwörter kann sich der Nutzer selbst die Zugriffsrechte entziehen. Eventuell geöffnete Arbeitsblätter gesperrter Strukturbausteine werden während des Editierens automatisch geschlossen, und in der Inbetriebnahme wird in eine nicht gesperrte Ebene gewechselt. In gesperrten Strukturbausteinen können keine Editier- und Designoperationen zurückgenommen werden (Undo).
6 Patch
Der vorliegende Patch für iCon-L 6.0.0.0 R1 enthält die Module und Konfigurationsvorschläge für die Betaversion 7 zum internen Test der Nutzerverwaltung.
Im Unterverzeichnis Modules sind die geänderten Komponenten der Betaversion enthalten. Die iAccess.dll im BIN-Verzeichnis enthält die Funktionen der Nutzerverwaltung. Zum Deaktivieren der Nutzerverwaltung muss auf die iAccess.Default.dll zurückgegriffen werden.
Wie oben beschrieben, wird zur Bearbeitung der Nutzerkonten ein neuer Befehl im „Extras“- Menü benötigt. Das Unterverzeichnis Configurations enthält Vorschläge für die globalen und die projektspezifischen Konfigurationsdateien. Um eigene Einstellungen nicht zu verlieren, sollten die Dateien nicht einfach kopiert werden. Außerdem müssen wahrscheinlich auch Erweiterungen an den Konfigurationsdateien in den Projekten vorgenommen werden.
7 Dateiformate
Die Anforderung, dass die Nutzerverwaltung aktivier- und deaktivierbar sein soll, hat zur Folge, dass Dateien mit Strukturbausteinen zusätzlich geschützt werden müssen. Projektdateien und Wiederherstellungsdaten werden bei aktiver Nutzerverwaltung mit einer speziellen Kennung versehen, so dass sie bei deaktivierter Nutzerverwaltung oder von älteren Programmiersystemversionen nicht geladen werden können. Projekte und Wiederherstellungsdaten, die ohne Nutzerverwaltung erstellt wurden, können mit Nutzerverwaltung geöffnet werden. Außerdem werden bei älteren Projekten die Werte für den Zugriffsschutz für die Strukturbausteine automatisch auf 0 zurückgesetzt.
Für den Strukturbausteinexport steht bei aktiver Nutzerverwaltung nur ein Binärformat zu Verfügung, das sich von dem in älteren Versionen genutzten unterscheidet. Beim Import werden die SBX-Dateien im bekannten Textformat und das alte Binärformat unterstützt. Ohne Nutzerverwaltung können nur SBX-Dateien ex- und importiert werden. Dabei werden neue Befehle zum Anlegen von Strukturbausteinen verwendet, die in älteren Programmiersystemversionen nicht bekannt sind.