Zum Schutz von Daten und Ressourcen auf einem Datenbank-Server verwendet DB2 eine Kombination aus externen Sicherheitsservices und internen Zugriffssteuerinformationen. Wenn Sie auf den Datenbank-Server zugreifen wollen, müssen Sie einige Sicherheitsüberprüfungen durchlaufen, bevor Ihnen Zugriff auf Datenbankdaten oder Ressourcen gewährt wird. Der erste Schritt in der Datenbanksicherheit wird als Authentifizierung (Identitätsüberprüfung) bezeichnet, bei der ein Benutzer nachweisen muß, daß er der ist, der er behauptet zu sein. Der zweite Schritt wird als Berechtigung (Authorization) bezeichnet, bei der der Datenbankmanager entscheidet, ob ein überprüfter Benutzer die angeforderte Aktion ausführen oder auf die angeforderten Daten zugreifen darf.
Die Authentifizierung (Identifikationsüberprüfung) wird mit Hilfe einer Sicherheitseinrichtung außerhalb von DB2 vollzogen. Die Sicherheitseinrichtung kann Teil des Betriebssystems, ein separates Produkt oder, in bestimmten Fällen, auch nicht vorhanden sein. Auf UNIX-Systemen ist die Sicherheitseinrichtung in das Betriebssystem selbst integriert. DCE-Sicherheitsservices (DCE Security Services) ist ein separates Produkt, das die Sicherheitseinrichtung in einer verteilten Umgebung zur Verfügung stellt. Unter den Betriebssystemen Windows 95 oder Windows 3.1 gibt es keine Sicherheitseinrichtungen.
Die Sicherheitseinrichtung benötigt zwei Elemente zur Authentifizierung eines Benutzers: eine Benutzer-ID und ein Kennwort. Die Benutzer-ID identifiziert den Benutzer der Sicherheitseinrichtung gegenüber. Durch die Eingabe des richtigen Kennworts (eine Information, die nur dem Benutzer und der Sicherheitseinrichtung bekannt ist) wird die Identität des Benutzers (entsprechend der Benutzer-ID) bestätigt.
Nach erfolgreicher Authentifizierung:
DB2 ruft eine Liste von Gruppen bis zu einer maximalen Anzahl von 64 Gruppen ab. Wenn ein Benutzer Mitglied in mehr als 64 Gruppen ist, werden nur die ersten 64 Gruppen, denen gültige DB2-Berechtigungsnamen zugeordnet sind, der DB2-Gruppenliste hinzugefügt. Es wird kein Fehler gemeldet. Alle weiteren Gruppen über die ersten 64 hinaus werden von DB2 ignoriert.
DB2 verwendet die Sicherheitseinrichtung zur Authentifizierung von Benutzern auf eine von zwei Arten:
DB2-Administratoren können andere Personen auf EEE-Systemen (Enterprise - Extended Edition) unter AIX und Windows NT durch die Variable DB2CHGPWD_EEE der Profilregistrierdatenbank dazu berechtigen, Kennwörter zu ändern. Der Standardwert für diese Variable nicht definiert (d. h. NOT SET - inaktiviert.) DB2CHGPWD_EEE akzeptiert die Booleschen Standardwerte, die von anderen DB2-Profilvariablen verwendet werden.
Der DB2-Administrator ist für die zentrale Verwaltung der Kennwörter aller Knoten verantwortlich. Dazu kann er unter Windows NT einen Windows NT-Domänen-Controller oder unter AIX den NIS verwenden.
Anmerkung: | Wenn die Kennwörter nicht zentral verwaltet werden, kann die Aktivierung der Variable DB2CHGPWD_EEE möglicherweise dazu führen, daß die Kennwörter nicht über alle Knoten hinweg konsistent sind. Wenn Sie also die Funktion für die Kennwortänderung verwenden, wird Ihr Benutzerkennwort nur auf dem Knoten geändert, mit dem Sie verbunden sind. |
Mit DB2 UDB unter AIX können fehlgeschlagene Kennworteingaben beim Betriebssystem protokolliert werden. Dadurch läßt sich ermitteln, wann ein Client die Anzahl zulässiger Anmeldeversuche überschritten hat, die im Parameter LOGINRETRIES angegeben ist.
Zusätzliche Informationen zu Gültigkeitsprüfungen bei Systemanmeldungen, die besonders wichtig sind, wenn Sie ferne Clients haben, die auf die Datenbank zugreifen, finden Sie in Auswählen einer Authentifizierungsart für den Server .
Die Berechtigung (Authorization) ist der Prozeß, durch den DB2 Informationen über einen überprüften DB2-Benutzer abruft, die angeben, welche Datenbankoperationen der Benutzer durchführen und auf welche Datenobjekte er zugreifen darf. Bei jeder Benutzeranforderung kann es mehr als eine Berechtigungsprüfung geben, je nachdem, welche Objekte und Operationen beteiligt sind.
Die Berechtigung wird mit Hilfe von DB2-Einrichtungen durchgeführt. DB2-Tabellen und DB2-Konfigurationsdateien werden zur Speicherung der Berechtigungen verwendet, die jedem Berechtigungsnamen zugeordnet sind. Der Berechtigungsname eines authentifizierten Benutzers und die Namen der Gruppen, zu denen der Benutzer gehört, werden mit den gespeicherten Berechtigungen verglichen. Anhand dieses Vergleichs entscheidet DB2, ob der angeforderte Zugriff gewährt wird.
Es gibt zwei Arten der Berechtigungen, die von DB2 gespeichert werden: Zugriffsrechte und Berechtigungsstufen. Ein Zugriffsrecht definiert eine einzelne Berechtigung für einen Berechtigungsnamen, Datenbankressourcen zu erstellen oder auf sie zuzugreifen. Zugriffsrechte werden in den Datenbankkatalogen gespeichert. Berechtigungsstufen bilden eine Methode, Zugriffsrechte und Kontrolle über Operationen zur Wartung des Datenbankmanagers und über Dienstprogrammoperationen auf einer höheren Stufe in Gruppen zusammenzufassen. Datenbankspezifische Berechtigungen werden in den Datenbankkatalogen gespeichert, während Systemberechtigungen durch Gruppenzugehörigkeit zugeordnet und in der Konfigurationsdatei des Datenbankmanagers für das jeweilige Exemplar gespeichert werden.
Gruppen stellen eine zweckmäßige Methode dar, für einen Benutzerverbund Berechtigungen durchzuführen, ohne jedem Benutzer einzeln Zugriffsrechte erteilen bzw. entziehen zu müssen. Sofern nicht anders angegeben, können Gruppenberechtigungsnamen überall dort verwendet werden, wo Berechtigungsnamen zu Berechtigungszwecken verwendet werden. Im allgemeinen wird die Gruppenzugehörigkeit für dynamisches SQL und Berechtigungen für Nichtdatenbankobjekte (z. B. Befehle auf Exemplarebene und Dienstprogramme) und nicht für statisches SQL berücksichtigt. Ein Ausnahmefall zu diesem allgemeinen Fall ist das Erteilen von Zugriffsrechten für PUBLIC, die bei der Verarbeitung von statischem SQL berücksichtigt werden. Spezielle Fälle, in denen Gruppenzugehörigkeit nicht gültig ist, werden in der DB2-Dokumentation entsprechend vermerkt.
Weitere Informationen finden Sie in Zugriffsrechte und Berechtigungen .
Da ein DB2-System zusammengeschlossener Datenbanken auf Daten in mehreren Datenbankverwaltungssystemen zugreifen kann, sind möglicherweise zusätzliche Maßnahmen zur Absicherung der Daten erforderlich.
Bei der Planung der Lösung zur Authentifizierung müssen Sie berücksichtigen, daß die Benutzer sich möglicherweise bei den Datenquellen und bei DB2 authentifizieren müssen. In einem System zusammengeschlossener Datenbanken kann die Authentifizierung auf DB2-Client-Workstations, auf DB2-Servern, an den Datenquellen (DB2, DB2 für OS/390, anderen DRDA-Servern, Oracle) oder einer Kombination von DB2 (Client oder DB2-Server) und Datenquellen stattfinden. Selbst in DCE-Umgebungen, können spezielle Maßnahmen erforderlich sein, wenn für die Anmeldung an den Datenquellen eine Benutzer-ID und ein Kennwort abgefragt wird. Weitere Informationen finden Sie in Authentifizierungsverarbeitung in zusammengeschlossenen Datenbanken .
Entsprechend müssen die Benutzer eine Berechtigungsprüfung an Datenquellen und für DB2 durchlaufen. Die jeweilige Datenquelle (DB2, Oracle, DB2 für OS/390 usw.) verwaltet die Sicherheit der Objekte, die von ihr gesteuert werden. Wenn ein Benutzer eine Operation mit einem Kurznamen ausführt, muß er für die Tabelle oder Sicht, auf die sich der Kurzname bezieht, eine Berechtigungsprüfung durchlaufen.