Nachfolgend finden Sie einige allgemeine Informationen zu Sicherheitsfunktionen ("Security"-Maßnahmen). Diese Informationen gelten unabhängig von der Nutzung in CODESYS oder einer mit verbundenen Steuerung.
Zugriffsschutz durch Benutzerverwaltung
Als Mittel zum Schutz vor unberechtigtem Zugriff auf Daten ist die Verwendung von Benutzerkonten notwendig, die mit bestimmten Zugriffsrechten verknüpft sind. Nur ein Benutzer, der die Anmeldedaten kennt, bekommt entsprechenden Zugang auf die Daten oder Funktionen.
Das Erstellen von Passwörtern gemäß den allgemeinen Empfehlungen zum Erzielen einer hohen Passwortstärke ist ein erheblicher Beitrag zur Sicherheit.
Grob werden folgende Typen von Benutzerverwaltung unterschieden:
-
Einfache Benutzerverwaltung:
Für den Zugriff auf Daten müssen nur ein Passwort oder die gültige Kombination aus Benutzername und Passwort eingegeben werden. Damit kann nur ein Zugang gewährt oder verweigert werden, aber keine abgestuften Rechte realisiert werden.
-
Gruppenbasierte Benutzerverwaltung:
Die Zugriffsrechte sind an Benutzergruppen vergeben. Benutzer, die einer Gruppe angehören, können nach Eingabe der Anmeldedaten mit nur genau diesen zugewiesenen und unterschiedlichen Rechten auf die Daten oder Funktionen zugreifen.
Verschlüsselung, Signatur
Verschlüsselung:
Verschlüsselung von Daten bedeutet: Die Daten werden in eine nicht lesbare Form umgewandelt und können nur mit einem passenden Schlüssel wieder lesbar gemacht werden. Der Schlüssel ist im einfachsten Fall ein Passwort oder ein Schlüsselpaar.
Es gibt folgende zwei Arten von Verschlüsselungsverfahren:
-
Symmetrische Verfahren: (bis Mitte der 1970er Jahre einzige Art der Verschlüsselung)
Merkmal: Verwendung eines geheimen Schlüssels
Vorteile: schnell; einfache Codierung
Nachteile: Austausch des Schlüssels muss geheim erfolgen!
-
Asymmetrische Verfahren:
Merkmal: Verwendung eines Schlüsselpaares (privater/geheimer und öffentlicher Schlüssel)
Vorteile: Öffentlicher Schlüssel kann jedem zugänglich gemacht werden; Authentifizierung damit möglich
Nachteile: Langsam (ca. 1.000-10.000x langsamer als symmetrische Verfahren); komplexe Codierung; große Schlüssellängen
Der Schlüsselaustausch erfolgt meist durch asymmetrische Verfahren, die Ver- und Entschlüsselung meist durch symmetrische Verfahren .
Signatur:
Damit die nichtabstreitbare Urheberschaft und Integrität einer Nachricht prüfbar ist, sollte sie mit einer Signatur versehen werden. Dazu sind die folgenden Schritte üblich:
-
Sender: Ermittelt einen eindeutigen Hash-Wert über die Daten (H)
-
Sender: Verschlüsselt den Hash-Wert mit privatem Schlüssel (He)
-
Empfänger: Berechnet ebenfalls den Hash-Wert und entschlüsselt den He mit öffentlichem Schlüssel und vergleicht die beiden Werte. Damit kann der Sender eindeutig identifiziert werden, und dass er im Besitz des privaten Schlüssels ist.
Bei asymmetrischem Verschlüsselungsverfahren wird zwischen Sendern und Empfängern zunächst ein öffentlicher Schlüssel ausgetauscht, der in einem Zertifikat enthalten ist. Zusätzlich benötigt jeder Beteiligte einen privaten Schlüssel, mit dem er, wenn er das Zertifikat besitzt, die Daten entschlüsseln kann. Wer zugreifen will, benötigt also jeweils ein Zertifikat UND einen privaten Schlüssel.
Hierzu sind sogenannte Hash-Verfahren notwendig:
-
Hash-Verfahren:
Merkmal: Eindeutiger "Fingerabdruck“ der Daten (beispielsweise Quersumme der Daten)
Möglichst kollisionsarm (es ist sehr schwer, zwei unterschiedliche Daten zu einem einzelnen Hash-Wert zu finden/zu konstruieren)
Zertifikate
Um den öffentlichen Schlüssel einer Identität zuordnen zu können, wird dieser meist in ein so genanntes Zertifikat eingebettet.
In zertifikatbasierten Systemen erhält jeder Benutzer ein digitales Zertifikat. Das Zertifikat dient als digitaler Ausweis. Es enthält Angaben zur Identität und den öffentlichen Schlüssel des Benutzers. Jedes Zertifikat ist von einer ausgebenden Stelle beglaubigt, die ihrerseits wieder von höheren Stellen beglaubigt sein kann. Das Vertrauenssystem dieser PKI (Public-Key-Infrastruktur) ist streng hierarchisch. Den gemeinsamen Vertrauensanker bildet ein so genanntes Wurzelzertifikat (Root Certificate).
Inhalte eines Zertifikats:
-
Version
-
Seriennummer
-
Algorithmen-ID
-
Aussteller (ausstellende Behörde oder Firma)
-
Gültigkeit Von (not before) Bis (not after)
-
Zertifikatsinhaber (Subject)
-
Zertifikatsinhaber-Schlüsselinformationen (Subject Public Key)
-
Public Key Algorithmus
-
Public Key des Zertifikatsinhabers
-
-
Eindeutige ID des Ausstellers (optional)
-
Eindeutige ID des Inhabers (optional). Der Inhaber besitzt einen Private Key passend zum Public Key
-
Erweiterungen
-
Verwendungszweck (Extended Key Usage)
-
...
-
Das Zertifikat besteht somit aus 2 Teilen / Dateien:
-
Öffentliches X.509-Zertifikat (kann jedem ausgehändigt werden)
-
Privater Schlüssel, der ausschließlich zu dem Zertifikat bzw. dessen öffentlichen Schlüssel „passt“ (muss geheim gehalten werden!)
Zur Verwaltung der Zertifikate in Ihrem lokalen "Windows Certificate Store" sehen Sie bitte auch folgende Hilfeseite: