-
Die
vorliegende Erfindung bezieht sich hauptsächlich auf das Management von
Computernetzwerken und insbesondere auf ein System und eine Verfahren
zur Zugriffsbeschränkung
auf Managementobjekte und Ereignismeldungen für autorisierte Benutzer der
Netzwerkmanagementobjekte.
-
HINTERGRUND
DER ERFINDUNG
-
SNMP
(Simple Network Management Protocol = einfaches Netzwerk-Managemant-Protokoll) wurde
entwickelt, um ein Hilfsmittel für
ein herstellerunabhängiges,
vollständig
kompatibles Netzwerkmanagement zu schaffen. SNMP bietet eine Menge von
Standards für
das Netzwerkmanagement, einschließlich eines Protokolls, einer
Datenbankstrukturspezifikation und einer Menge von Datenobjekten. SNMP
wurde 1989 als Standard für
Weitbereichsnetze, basierend auf TCP/IP, übernommen.
-
Eine
Erläuterung
der SNMP-Technik geht über
den Rahmen dieses Schriftstücks
hinaus, und es wird angenommen, dass der Leser entweder mit SNMP
vertraut ist oder Zugriff auf die gängige Fachliteratur hat, wie
etwa William Stallings "SNMP, SNMPv2
and RMON", Addison
Wesley (1996), welches hiermit durch Literaturhinweis in seiner
Gesamtheit als Hintergrundinformationen eingefügt ist.
-
Viele
Netzwerke verwenden einen Netzwerkmanager und eine Form eines einfachen
Netzwerkmanagementprotokolls (SNMP) zum Managen des Netzwerks. Zu
den Managementaufgaben des Netzwerkmanagers zählt die automatische Überwachung des
Zustands der Geräte
im Netzwerk. Der Netzwerkmanager sendet Ereignisanfragen an die
Geräte,
die aufgefordert werden, Antworten zurückzusenden, wenn bestimmte
Ereignisse eintreten. Zum Beispiel könnte ein Plattenagent aufgefordert
werden, eine Antwort zu senden, wenn der verfügbare Speicherplatz auf der
Platte 50 % unterschreitet.
-
Ein
von SNMP verwaltetes Gerät
speichert in seinem Speicher eine Managementinformationsbasis (MIB,
Management Information Base), eine Sammlung von Objekten oder Variablen,
die verschiedene Aspekte des Geräts
darstellen (z. B. Konfiguration, Statistik, Zustand, Steuerung).
Für jede Geräteklasse
hat das MIB einen Kern von Standardvariablen. Jeder Anbieter eines
Geräts
wird dem Kern Variablen hinzufügen,
die seiner Ansicht nach wichtig für das Management des Geräts sind.
-
Die
MIBs der verwalteten Geräte
eines Netzwerks speichern nicht nur Managementinformationen, die
abgerufen werden können,
sondern enthalten auch Variablen, deren Werte den Betrieb des Geräts ändern, wenn
diese von einem Netzwerkmanager modifiziert werden. Einfache Beispiele
sind das Abschalten der Operation eines Geräts, das Ändern der Prioritäten, die
verschiedenen von einem Gerät ausgeführten Aufgaben
zugewiesen werden, und das Ändern
der vom Gerät
erzeugten Menge der Meldungen oder der Menge der Zielorte, an die
diese Meldungen gesendet werden.
-
Offensichtlich
ist es wichtig, nicht autorisierten Personen den Zugriff auf die
Managementinformationsobjekte eines Netzwerks zu verwehren. Ansonsten
würden
vertrauliche Informationen nicht nur von nicht autorisierten Personen
bezogen werden, sondern das Netzwerk wäre auch zugänglich für Sabotageakte. Die vorliegende
Erfindung befasst sich mit dem Thema der Zugriffskontrolle von Netzwerkmanagementinformationsobjekten.
-
ITU-T
X.741 (1995) ist ein Industriestandard, der vom Telekommunikationsstandardisierungssektor
der International Telecommunication Union veröffentlicht wurde, vorher bekannt
als die CCITT, mit dem Titel Data Networks and Open System Communications,
OSI Management. Der X.741-Standard spezifiziert ein Zugriffskontrollsicherheitsmodell
und die zum Erzeugen und Verwalten der Zugriffskontrolle benötigten Managementinformationen,
in Verbindung mit dem OSI-Systemmanagement (OSI, open systems interconnection
= systemunabhängige
Kommunikation).
-
Es
gibt mehrere ähnliche
ITU-T-Standards, die sich auf das OSI-Systemmanagement beziehen und
für die
vorliegende Erfindung relevant sind, insbesondere X.740 (1992) (Sicherheitsprüfpfadfunktion)
und X.812 (1995) (Datennetzwerke und systemunabhängige Kommunikationssicherheit).
Alle drei ITU-T-Standards, X.741 (1995), X.740 (1992) und X.812
(1995), sind hiermit durch Literaturangabe als Hintergrundinformationen
eingefügt.
-
Während die
Standards X.741, X.740 und X.812 einen ziemlich verständlichen
Rahmen der Zugriffskontrolle zur Kontrolle des Zugriffs auf Netzwerkmanagementobjekte
definieren, verbleiben zahlreiche Zugriffskontroll- und Managementprobleme, die
von diesen Standards nicht behandelt oder gelöst werden.
-
Während X.741
und die zugehörigen
Standards die Zugriffskontrolle zum Beschränken des Zugriffs auf Managementobjekte
definieren, behandeln oder spezifizieren diese Standards insbesondere
keinen Mechanismus zum Beschränken
des Zugriffs auf Ereignisberichte. Ereignisberichte (gewöhnlich Ereignismeldungen
genannt), wie etwa die Berichte, die erzeugt werden, wenn ein Objekt
erzeugt oder gelöscht
wird oder wenn ein Managementparameter eine spezifizierte Schwelle
passiert, werden in vielen Systemen an alle Empfänger übermittelt. Dies ist offensichtlich
unzumutbar, wenn das Netzwerk etwa die Fernsprechvermittlung einer
großen
Telekommunikationsgesellschaft ist, und die Ereignisberichte Betriebsmittel
betreffen, die für
einen bestimmten Kunden installiert oder eingesetzt werden. Das
heißt, Kunde
A sollte nicht befugt sein, Ereignisberichte von Netzwerkbetriebsmitteln
zu erhalten, die im Auftrag vom Kunden B verwendet werden.
-
Tatsächlich ist
die Annahme in X.741 und den zugehörigen Standards, dass die Ereignismeldungssicherheit
implementiert werden sollte, indem eine Einrichtung verwendet wird,
die getrennt von der Zugriffskontrolleinrichtung ist, die zur Zugriffsbeschränkung auf
Managementobjekte verwendet wird. Letzten Endes filtert die Zugriffskontrolle
auf Managementobjekte eingehende Meldungen, die Zugriff auf Objekte
anfordern, während
Ereignisberichte ausgehende Nachrichten sind.
-
Von
den Erfindern der vorliegenden Erfindung wurde jedoch beobachtet,
dass in vielen Fällen die
Objekte, auf die eine Person nicht zugreifen darf, auch die Objekte
sind, von denen diese Person keine Ereignisberichte empfangen sollte.
Um etwa das obige Beispiel zu verwenden, sollten Angestellte des Kunden
A auf jegliche Objekte, die dem Kunden B zugeordnet sind, weder
Zugriff haben, noch Ereignisnachrichten über diese erhalten.
-
Daher
schaffen Beispiele der vorliegenden Erfindung ein integriertes Sicherheitssystem
zum Beschränken
des Zugriffs auf Managementobjekte und Ereignisberichte.
-
Das
Dokument
EP0789301 offenbart
ein Verfahren zur Kontrolle des Zugriffs auf eine Managementinformationsbasis
(MIB) über
einen Kommunikationsrahmen zwischen Anwendungen, indem eine vorgegebene
Anwendung oder ein Anwendungsbenutzer eine Anfrage an ein oder mehrere spezifizierte
Objekte in einer verteilten Managementumgebung übermittelt.
-
ÜBERBLICK ÜBER DIE
ERFINDUNG
-
Zusammenfassend
schafft die vorliegende Erfindung ein System und ein Verfahren zur
Kontrolle des Zugriffs auf Managementobjekte in einem Computernetzwerk,
wie in Anspruch 1 bzw. Anspruch 4 beschrieben ist. Ausführungsformen
der vorliegenden Erfindung umfassen eine Zugriffskontrolldatenbank,
die durch die Verwendung von Zugriftskontrollobjekten Zugriffsrechte
definiert. Die Zugriffskontrollobjekte umfassen Gruppenobjekte,
die jeweils eine Gruppe und eine Menge der Benutzer, die Mitglieder der
Gruppe sind, definieren, sowie Regelobjekte. Eine erste Teilmenge
der Regelobjekte spezifiziert jeweils eine Menge der Gruppenobjekte,
eine Menge der Managementobjekte sowie Zugriffsrechte seitens der
Benutzer, die Mitglieder der Gruppen sind, die durch die spezifizierte
Menge der Gruppenobjekte definiert sind, auf die spezifizierte Menge
der Managementobjekte.
-
Ausführungsformen
der vorliegenden Erfindung umfassen ferner wenigstens einen Zugriffskontroll-Server,
der dazu verwendet wird, Zugriffsanfragen entsprechend den in der
Zugriftskontrolldatenbank spezifizierten Zugriffsrechten zu bearbeiten. Eine
Teilmenge der Zugriffsanfragen spezifiziert Operationen, die auf
spezifizierte Mengen der Managementobjekte anzuwenden sind.
-
Jede
dieser Zugriffsanfragen wird zur Bearbeitung an wenigstens einen
Zugriffskontroll-Server gesendet. Der Zugriffskontroll-Server antwortet
auf die Zugriffsanfragen der Benutzer, indem er den in jeder Zugriffsanfrage
angeforderten Zugriff entsprechend den in der Zugriffskontrolldatenbank
spezifizierten Zugriffsrechten gewährt, verweigert und teilweise
gewährt
und verweigert.
-
Eine
zweite Teilmenge der Regelobjekte in der Zugriffskontrolldatenbank
spezifizieren jeweils: eine Menge der Gruppenobjekte, eine Menge
der Managementobjekte, sowie Zugriffsrechte seitens der Benutzer,
die Mitglieder der Gruppen sind, die durch die spezifizierte Menge
der Gruppenobjekte definiert sind, auf Ereignismeldungen, die von
der spezifizierten Menge der Managementobjekte erzeugt werden. Die
ersten und zweiten Teilmengen der Regelobjekte können sich teilweise überschneiden.
-
Ausführungsformen
können
ferner eine Ereignisregistrierung umfassen, die zur Registrierung von
Ereignismeldungsanfragen von Benutzern verwendet wird, wobei jede
Ereignismeldungsanfrage Ereignismeldungen von einer spezifizierten
Menge der angefragten Managementobjekten spezifiziert. Ein Ereignis-Router
empfängt
von den Managementobjekten erzeugte Ereignismeldungen. Er antwortet auf
jede Ereignismeldung, indem er entsprechende Ereignismeldungsnachrichten
an die Benutzer sendet, die eine entsprechende Ereignismeldungsanfrage
in der Ereignisregistrierung registriert haben und zudem Zugriffsrechte
für die
erhaltene Ereignismeldung entsprechend den in der Zugriffskontrolldatenbank
spezifizierten Zugriffsrechten haben.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
Weitere
Aufgaben und Merkmale von Beispielen der Erfindung werden durch
die folgende genaue Beschreibung und die beigefügten Ansprüche leichter ersichtlich, wenn
sie in Verbindung mit den Zeichnungen herangezogen werden, in welchen:
-
1 ein
Blockdiagramm eines Zugriffskontrollmechanismus zur Beschränkung des
Zugriffs auf die Managementobjekte eines Netzwerks ist;
-
2 die
Datenstruktur einer Zugriffsanfrage darstellt;
-
3 eine
verteilte Zugriffskontrolleinrichtung (access control engine, ACE)
gemäß einer
bevorzugten Ausführungsform
der vorliegenden Erfindung darstellt;
-
4 die
Zugriffskontrolldatenbank und eine Einrichtung zum Hinzufügen von
Objekten zur Datenbank und zur Veränderung der bereits in der
Datenbank vorhandenen Objekte darstellt;
-
5 die
Reihenfolge darstellt, in der die Zugriffsregeln zum Bearbeiten
jeder Zugriffsanfrage angewendet werden;
-
6 eine
Prozedur zur Bearbeitung einer Zugriffsanfrage darstellt, wobei
diese unter den zuständigen
Zugriffs-Servern aufgeteilt wird, die Antworten zusammengestellt
werden und eine kombinierte Antwort an den Initiator zurückgesendet
wird;
-
7 ein
Diagramm darstellt, das zeigt, wie Antworten auf Zugriffsanfragen
kombiniert werden, wenn das Ziel einer Zugriffsanfrage mehr als
ein Managementobjekt umfasst;
-
8 die
Ereignisregistrierung und Ereignis-Routerabschnitte eines Managementinformations-Servers
in einer bevorzugten Ausführungsform der
vorliegenden Erfindung darstellt; und
-
9 eine
Zusatzzugangseinrichtung darstellt, um einen SQL-Typ-Nur-Lese-Zugriff auf Protokollaufzeichnungen
bereitzustellen, die sich auf von Managementobjekten erzeugte Ereignismeldungen beziehen,
während
die gleichen Sicherheitsbeschränkungen
für den
Zugriff auf Managementobjekt informationen beibehalten werden wie
diejenigen, die vom Managementinformations-Server für das Netzwerk
bereitgestellt werden.
-
BESCHREIBUNG
DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
In 1 ist
ein Netzwerkmanagementsystem 100 mit einer Zugriffskontrolleinrichtung
(ACE) 102 gezeigt, die den Zugriff von Initiatoren 104 (z.
B. Benutzer und Anwendungsprogramme, die auf Befehl von Benutzern
handeln) auf Managementobjekte eines Netzwerks 106 beschränkt. Das
Netzwerk 106 kann nahezu jede Form eines computerimplementierten
Netzwerks sein, das ein Managementprotokoll zum Ausführen von
Managementfunktionen verwendet. Für die Zwecke dieses Dokuments
befassen wir uns lediglich mit den Managementobjekten des Netzwerks,
die Managementinformationen und Betriebsmittelkontrollvariablen
enthalten. Für
die Zwecke dieses Dokuments befassen wir uns ferner vorrangig mit Verfahren
zur Zugriffsbeschränkung
auf Managementobjekte und auf von Managementobjekten erzeugte Ereignismeldungen
und befassen uns daher nicht im Besonderen mit dem Inhalt und den
Funktionen der Managementobjekte.
-
Zu
beachten ist, dass in vielen Dokumenten Managementobjekte als "verwaltete Objektinstanzen" (managed object
instances, MOI's)
bezeichnet werden. in solchen Dokumenten stehen die Abkürzungen "OI" und "OC" für "Objektinstanz" und "Objektklasse". In der Terminologie
dieses Dokuments ist ein Objekt vielmehr eine Objektinstanz, da
jedes Objekt eine Instanz einer entsprechenden Objektklasse ist.
Zum Beispiel ist jedes "Router-Managementobjekt" eines Netzwerks
eine Instanz einer entsprechenden Router-Managementklasse. Außer wenn es für die Klarheit
als notwendig erachtet wird, wird in diesem Dokument der Ausdruck "Objekt" statt "Objektinstanz" verwendet. Ferner
sind in der bevorzugten Ausführungsform
alle Managementobjekte und Zugriffskontrollobjekte GDMO-konform.
-
Die
Zugriffskontrolleinrichtung umfasst eine Zugriffskontrolldatenbank 108.
Wie das Netzwerk selbst besteht die Zugriffskontrolldatenbank 108 aus einer
Hierarchie von Objekten. Verschiedene Aspekte der Zugriffskontrolldatenbank,
wie sie in den vorliegenden Ausführungsformen
implementiert sind, werden im Folgenden genauer beschrieben. Die
Zugriffskontrolldatenbank 108 enthält Zugriffskontrollregeln, die
auf Zugriffsanfragen angewendet werden können, um zu entscheiden, ob
solche Anfragen gewährt oder
verweigert werden sollen.
-
Eine
Zugriffskontrollentscheidungsfunktion (access control decision function,
ACDF) 110 ist die Prozedur (oder Menge der Prozeduren),
die die Zugriffskontrollregeln auf jede Zugriffsanfrage anwendet,
um so zu entscheiden, ob der angeforderte Zugriff auf ein Managementobjekt
gewährt
oder verweigert werden soll. Wie im Folgenden genauer erläutert wird,
können
manche Teile einer Zugriffsanfrage gewährt werden, während andere
Teile verweigert werden, wenn eine Zugriffsanfrage ein Ziel von
mehr als einem Managementobjekt hat.
-
Eine
Zugriffskontrolldurchführungsfunktion (access
control enforcement function, ACEF) 112 ist die Prozedur
(oder Menge der Prozeduren) zur Durchführung der von der ACDF 110 getroffenen
Entscheidungen. Insbesondere sendet die ACEF 112 Zugriffsverweigerungsantworten,
wenn die ACDF 110 eine Zugriffsverweigerung zurücksendet,
und leitet die Zugriffsanfrage an die entsprechenden Netzwerkmanagementobjekte
weiter, wenn der Zugriff gewährt
wird.
-
Mit
Bezug auf 2 ist jede Zugriffsanfrage 120 eine
Datenstruktur oder ein Objekt, die eine Menge von vordefinierten
Feldern enthält,
umfassend:
- • Benutzerinformationen,
die den Anfrageninitiator identifizieren;
- • Operation,
die von der Operationsart ist, die auf das/die vorgegebene(n) Zielobjekt(e)
angewendet wird/werden; festgelegte Operationen umfassen Holen,
Setzen, Erzeugen, Löschen,
Ausführen,
Filtern, Mehrfachobjektauswahl, und "Empfangen von Meldungen von"; zu beachten ist, dass
die Operation "Empfangen
von Meldungen von" (üblicherweise
an anderer Stelle in diesem Dokument als "Ereignismeldungs"-Funktion bezeichnet) nicht eine der
von X.741 definierten Operationen ist, sondern vielmehr eine neue
Operation, die von den Erfindern aus den im Folgenden beschriebenen
Gründen
hinzugefügt
wurde;
- • Modus,
der bestätigt
oder unbestätigt
entspricht, welcher angibt, ob der Managementinformations-Server
dem Initiator Antwortnachrichten senden soll; wenn der Modus unbestätigt entspricht, werden
dem Initiator keine Antwortnachrichten (z. B. Zugriffsverweigerungsnachrichten)
gesendet; wenn der Modus bestätigt
entspricht, werden dem Initiator Antwortnachrichten gesendet;
- • Synchronisation, "atomic" oder "best effort" entsprechend; wenn
die Synchronisation auf atomic gesetzt wird, wird eine Zugriffsanfrage,
die an mehr als ein Objekt gerichtet ist, abgebrochen, wenn ein
Teil der Anfrage verweigert wird; wenn die Synchronisation auf best
effort gesetzt wird, wird die Zugriffsanfrage bei den Objekten ausgeführt, bei
denen der Zugriff gewährt
wird, und die entsprechenden Ergebnisse werden an den Initiator
zurückgesendet;
und
- • Ziel,
das das Objekt oder die Objekte spezifiziert, auf die der Initiator
zugreifen will.
-
Das
Ziel der Zugriffsanfrage 120 wird durch drei Felder spezifiziert:
- • Basisobjekt,
das ein bestimmtes Objekt im Netzwerkmanagementobjektbaum bezeichnet;
- • Umfang,
der den Bereich der Objekte oberhalb oder unterhalb des Basisobjekts
im Baum angibt, auf die zugegriffen werden soll; bei der bevorzugten
Ausführungsform
ist das Basisobjekt stets das Objekt in der Zielmenge, das dem Stamm
am nächsten
liegt, wobei der Umfang eine Anzahl von Objektbaumebenen unterhalb
(d. h., weiter vom Stamm entfernt) des Basisobjekts, die als Teil
der Zielmenge eingefügt
werden sollen, angibt; und
- • Filter,
das eine Filterbedingung zur Beschränkung der Menge der Objekte
bestimmt, die in die Zielmenge eingefügt werden sollen (ein Filter kann
etwa angeben, dass lediglich Managementobjekte für Router in Menlo Park, Kalifornien
in die Zielmenge eingefügt
werden sollen); das Filterfeld ist das Gegenstück einer "Wo"-Klausel
einer Datenbankabfrage. Ein Filter kann ebenso verwendet werden,
um die Art der Ereignismeldung zu spezifizieren, die der Benutzer
erhalten möchte (z.
B. SNMP- oder CMIP-Ereignismeldungen).
-
Eine
Anfrage, die eine Zielmenge von nur einem Objekt hat, da das Umfangsfeld
in der Anfrage unbenutzt ist, wird als "unbeschränkte" Anfrage angesehen. Eine Anfrage, die
eine Zielmenge von mehr als einem Objekt hat, da das Umfangsfeld
in der Anfrage angibt, dass auf mehr als ein Objekt zugegriffen werden
soll, wird als "beschränkte" Anfrage angesehen.
-
Verteilung
der Zugriffskontrolle auf mehrere Server
-
Mit
Bezug auf 3 werden die Funktionen der
Zugriffskontrolleinrichtung 102 (1) über mehrere
Server verteilt, um so die Geschwindigkeit zu erhöhen, mit
der die Zugriffskontrolle bearbeitet wird. Es ist klar, dass die
folgende Erläuterung
von 3 kurze "Überblicks"-Erläuterungen
der Funktionen enthalten, die von manchen der in 3 gezeigten Systemkomponenten
ausgeführt
werden, und dass genauere Erläuterungen
dieser Aspekte der Erfindung, die in den oben angegebenen Normen
(z. B. X.741) nicht spezifiziert sind, an anderer Stelle dieses
Dokuments vorgesehen sind.
-
In
vielen Fällen,
wie etwa in Telephonnetzwerken, ist die Zahl an Netzwerkmanagementobjekten äußerst groß und die
Zahl an Personen, die Zugriff auf die Managementobjekte anfordern,
dementsprechend groß,
ebenso wie die tägliche
Menge der Zugriffsanfragen. Die meisten Zugriffsanfragen sind ziemlich
eng fokussiert. Eine typische Zugriffsanfrage wird etwa den Zugriff
auf die Managementobjekte eines bestimmten Typs an einem bestimmten
Ort anfragen. Wenn in einem weiteren Beispiel ein Teil des Netzwerks
für Wartungsarbeiten
abgeschaltet werden muss, wird die Zielmenge der Zugriffsanfrage
die Managementobjekte für
die abzuschaltenden Geräte bestimmen.
Andere Zugriffsanfragen, insbesondere Zustandsinformationserfassungsanfragen,
können sehr
große
Zielmengen enthalten.
-
Ein
Managementinformations-Server (MIS) 150 empfängt alle
Managementobjektzugriftsanfragen 120 und verteilt jede
Anfrage, oder Teile der Anfrage, auf eine Menge der Hilfs-Server 152 entsprechend
der Teile des Managementobjektbaums, auf den die Anfrage verweist.
Jeder Server 150 und 152 führt sowohl Zugriffskontrollfunktionen
als auch Anfragen-Antwort-Erfassungsfunktionen durch. Somit wird
die Bearbeitung der Zugriffskontrolle unter dem MIS 150 und
den Hilfs-Servern 152 aufgeteilt, wodurch während den
Phasen hohen Anfragenverkehrs eine schnellere Bearbeitung von Zugriffsanfragen
ermöglicht
wird.
-
Der
MIS 150 führt
die Zugriffskontrolle insbesondere lediglich für Objekte am oberen Ende des Managementobjektbaums
durch, während
jeder Hilfs-Server
die Zugriffskontrolle für
Objekte in entsprechenden festgelegten Unterbäumen des Managementobjektbaums
durchführt.
Eine wichtige Ausnahme der obigen Angabe ist, dass alle Zugriffsanfragen
für Ereignismeldungen
(d. h. mit einer Operation "Meldung
empfangen von")
an ein Ereignisregistrierungsmodul im MIS geliefert werden, gleichgültig, welche
Objekte die Ziele der Zugriffsanfrage sind. Dies wird im Folgenden
mit Bezug auf die Ereignismeldungszugriffskontrolle genauer erläutert.
-
Zudem
wird ein spezieller Hilfs-Server 154 verwendet, um alle
Aktualisierungen des Zugriftskontrollobjektbaums 170 zu
bearbeiten (der aus im Folgenden erwähnten Gründen nicht der gleiche ist
wie der Zugriftskontrollbaum 108 des Standes der Technik).
Bei manchen Implementierungen kann der spezielle Hilfs-Server 154 mit
dem MIS 150 oder einem der regulären Hilfs-Server 152 zusammengelegt werden.
Wahlweise kann der spezielle Hilfs-Server 154 in Systemen mit
relativ wenig Zugriftsanfragenaufkommen als eine separate Softwareinstanz
auf dem gleichen physikalischen Server wie einer der anderen Server
implementiert werden.
-
Der
MIS 150 und jeder Hilfs-Server 152, 154 speichern
eine vollständige
Kopie des Zugriffskontrollobjektbaums 170, sind jedoch
lediglich für
die Bearbeitung von Zugriffsanfragen auf einen entsprechenden Abschnitt
des Netzwerkmanagementobjektbaums zuständig. Bei einer weiteren Ausführungsform
kann jeder der MIS und Hilfs-Server nur den Abschnitt des Zugriftskontrollobjektbaums 170 speichern,
den er zur Bearbeitung der zugewiesenen Zugriffskontrollfunktionen
benötigt.
-
Wenn
eine Zugriffsanfrage Zielobjekte in den Abschnitten des Managementobjektbaums
aufweist, die von mehr als einem Server betreut werden, wird die
Zugriffsanfrage vom MIS 150 in Zugriftsteilanfragen aufgeteilt
und an die entsprechenden Hilfs-Server 152 gesendet. Die
von allen Servern erzeugten Antworten auf die Zugriftsteilanfragen
werden vom MIS 150 geordnet und gesammelt an den anfragenden
Benutzer oder die Anwendung zurückgesendet.
-
Der
MIS 150 umfasst:
- • eine Schnittstelle 160 zum
Empfangen von Zugriffsanfragen;
- • eine
oder mehrere Zentraleinheiten (CPU's) 162 zum Ausführen der
im Speicher der MIS 164 gespeicherten Zugriffskontrollprozeduren;
- • einen
Speicher 164, der sowohl flüchtige Hochgeschwindigkeits-RAM als auch nichtflüchtige Speicher
umfasst, etwa magnetische Plattenspeicher;
- • eine
Schnittstelle 166 zur Handhabung einer sicheren Kommunikation
zwischen dem MIS 150 und den Hilfs-Zugriftskontroll-Servern 152, 154; und
- • einen
oder mehrere interne Busse 168 zum Austausch von Daten
und Programmen zwischen den obenerwähnten Elementen des MIS 150.
-
Der
Speicher 164 kann speichern:
- • eine unvollständige oder
vollständige
Kopie 170 eines Zugriffskontrollbaums; zu beachten ist,
dass der Zugriffskontrollbaum 170 bei der bevorzugten Ausführungsform
unterschiedliche Komponenten und eine unterschiedliche Organisation
hat, als die in X.741 spezifizierten, und daher der in 1 dargestellte
Zugriffskontrollbaum 108 nicht gleich dem bei der vorliegenden
Erfindung verwendeten Zugriffskontrollbaum 170 ist;
- • eine
Zugriffsanfrageaufteilungs- und -routingprozedur 172 zum
Aufteilen der Zugriffsanfragen in Zugriffsteilanfragen und Leiten
der Zugriffsteilanfragen zur Bearbeitung der Zugriffskontrolle an den/die
entsprechenden Server;
- • eine
Unterbaum-Server-Zuordnungstabelle 173, die die Informationen
speichert, die der MIS 150 benötigt, um zu bestimmen, an welchen
oder welche Server jede Zugriffsanfrage zur Zugriffskontrollbearbeitung
versendet werden soll;
- • eine
Zugriffskontrolldurchführungsfunktion 174, deren
Funktionalität
die gleiche ist wie diejenige der in 1 gezeigten
ACEF 112;
- • eine
Zugriffkontrollentscheidungsfunktion 176, deren Funktionalität die gleiche
ist wie die der in 1 gezeigten ACDF 110;
- • eine
Anfrage-Antwort-Kombinationsprozedur 178 zum Kombinieren
der von mehreren Servern erzeugten Antworten auf jede einzelne Zugriffsanfrage
und zum Zurücksenden
einer einzigen kombinierten Antwort an den Initiator;
- • ein
Feld 180 mit Zustandsinformationen über Zugriffsanfragen, deren Bearbeitung
noch nicht abgeschlossen ist;
- • ein
Sicherheits-Prüfpfad 182 zur
Aufbewahrung eines Berichts aller Zugriffsanfragen;
- • eine
Ereignisregistrierung 184, die eine Einrichtung zur Verfolgung
von Ereignismeldungen ist, die bestimmte Benutzer angefordert haben;
und
- • einen
Ereignis-Router 186, der ein Modul zum Versenden von Ereignismeldungen
an Benutzer oder Anwendungen ist, die (A) diese Ereignismeldungen
angefordert haben und die (B) zum Empfang autorisiert sind.
-
Weitere
Aspekte des MIS 150, die in 3 nicht
gezeigt sind, werden im Folgenden beschrieben.
-
Der
MIS 150 und die Hilfs-Server 152, 154 erhalten
alle identische Kopien einer Bibliothek von Zugriffskontrollprozeduren
sowie eine Kopie des Zugriffskontrollobjektbaums 170. Daher
enthält
jeder Hilfs-Server 152, 154 dieselben Hardware-
und Softwareelemente, die im MIS 150 vorzufinden sind,
mit Ausnahme (A) von speziellen Prozeduren (172, 178) im
MIS, die zur Bearbeitung des Empfangs und der Aufteilung von Zugriffsanfragen
und zur Kombinierung von Antworten verwendet werden, und wobei (B)
beide nur eine Schnittstelle 160/166 zum Empfangen
von Zugriffsanfragen und zum Zurücksenden von
Antworten haben. Jeder Hilfs-Server 152 bewahrt entweder
eine vollständige
Kopie 170 des Zugriffskontrollobjektbaums oder einen Abschnitt
desselben auf, der benötigt
wird, um die von diesem Hilfs-Server zu bearbeitenden Zugriffsanfragen
zu bearbeiten.
-
Im
speziellen Hilfs-Server 154 wird eine Kopie 190 des
Zugriftskontrollobjektbaums 170 dauerhaft gespeichert,
so dass die Zugriffskontrollobjekte für die Verwendung durch alle
Zugriffskontroll-Server immer dann zur Verfügung stehen, wenn das Zugriffskontrollsystem
oder Teile desselben aus irgendeinem Grund neu gestartet oder wieder
hochgefahren werden. Der spezielle Hilfs-Server 154 ist ebenso
für die
Bearbeitung aller Aktualisierungen des Zugriffskontrollobjektbaums 170 zuständig.
-
Außer den
mit den anderen Servern geteilten Zugriftskontrollbibliotheksprozeduren
verfügt
der spezielle Hilfs-Server 154 über eine zusätzliche
Proze dur 194 zur Bearbeitung der Zugriffskontrolle auf den
Zugriffskontrollobjektbaum 170/190 und zur Bearbeitung
von Aktualisierungen des Zugriffskontrollobjektbaums 170/190.
Die gleiche Art der Zugriffskontrolle, die bei der Zugriffsbeschränkung auf
Managementobjekte verwendet wird, wird auch zur Zugriffsbeschränkung auf
den Zugriffskontrollobjektbaum 190/170 verwendet.
Anders ausgedrückt
werden manche Zielobjekte und Regelobjekte des Zugriffskontrollobjektbaums 170 verwendet,
um Zugriffsrechte auf die Zugriffskontrollobjekte zu definieren,
wobei der spezielle Hilfs-Server 154 den Zugriff auf die
Zugriffskontrollobjekte entsprechend der von diesen Zugriffskontrollobjekten
definierten Regeln beschränkt.
Auf diese Weise können
nur autorisierte Benutzer auf den Zugriffskontrollobjektbaum 190/170 zugreifen
und diesen aktualisieren.
-
Der
MIS 150 verfügt über ausreichende Kenntnisse
des Objektbaums im Netzwerk, um zu wissen, welche Hilfs-Server gebraucht
werden, um jede Anfrage zu bearbeiten. Der MIS 150 verfügt insbesondere über eine
Zugriffsanfrageaufteilungs- und -routingprozedur 172 und
eine Zuordnungstabelle 173, die Informationen speichert,
welche eine Menge der "Baumgabelungspunktobjekte" (auch Gabelpunktknoten
genannt) identifiziert. Genauer gesagt enthält die Zuordnungstabelle 173 eine
Folge von Datensätzen.
Jeder Datensatz identifiziert einen Managementobjekt-Unterbaum,
gekennzeichnet durch ein oberstes Objekt, Baumgabelungspunktobjekt
genannt, und identifiziert ebenso den Server 152 zur Bearbeitung
der Zugriffsanfragen auf Objekte dieses Managementobjektunterbaums.
Für jede
Zugriffsanfrage wendet der MIS 150 zunächst die "globalen Verweigerungsregeln" an, wie im Folgenden
genauer erläutert
wird. Wenn die Anfrage nicht durch eine globale Verweigerungsregel
verweigert wird, durchläuft der
MIS 150 daraufhin den Netzwerkobjektbaum 170,
um so den oder die Server zu identifizieren, die erforderlich sind,
um die Zugriffsanfrage weiter zu bearbeiten.
-
Genauer
gesagt durchläuft
der MIS für
jede empfangene Zugriffsanfrage (anders als bei Zugriffsanfragen
auf Ereignismeldungen) den Netzwerkobjektbaum, bis er ein Gabelungspunktobjekt
erreicht. Da alle Managementobjekte unterhalb der Gabelungspunktobjekte
von einem entsprechenden Hilfs-Server
bearbeitet werden sollen, stoppt der Baumdurchlauf an diesen Objekten.
Abhängig
von der Aufteilung der Zugriffsmanagementaufgaben unter den Servern
ist es möglich,
dass eine einzelne Zugriffsanfrage in zwei oder mehr Zugriffsteilanfragen aufgeteilt
und zur weiteren Bearbeitung an zwei oder mehr Server gesendet werden
muss. Wenn eine Anfrage zur Bearbeitung von mehr als einem Server aufgeteilt
wird, werden das Basisobjekt und die Umfangsabschnitte jeder Partition
der Zugriffsanfrage (d. h., jede Teilanfrage) verändert, um
so nur den von dem entsprechenden Server bearbeiteten Abschnitt des
Managementobjektbaums zu umfassen.
-
Der
MIS 150 enthält
zudem Zustandsinformationen 180 auf jeder Zugriffsanfrage,
deren Bearbeitung noch nicht abgeschlossen ist. Die Zustandsinformationen 180 identifizieren
alle Server, von denen Teilantworten benötigt werden, bevor eine vollständige Antwort
an den Initiator zurückgesendet werden
kann.
-
Abhängig von
der Implementierung kann der MIS 150 zusätzlich zur
Anwendung der globalen Verweigerungsregeln auf jede Anfrage auch
für die
Zugriffsbeschränkung
auf mehrere Abschnitte des Managementobjektbaums, die keinem Hilfs-Server
zugewiesen sind, verantwortlich sein. Der MIS 150 wird etwa
typischerweise für
die Zugriffsbeschränkung
auf den Wurzelknoten des Managementobjektbaums zuständig sein
und kann auch für
einen bestimmten Zweig des Managementobjektbaums verantwortlich gemacht
werden.
-
In
einer weiteren Ausführungsform
können die
Zugriffskontrollzuständigkeiten
in anderer Weise unter den Servern aufgeteilt werden, zum Beispiel auf
Grundlage des Operationstyps, der auf die Zielobjekten angewendet
werden soll. Somit kann ein Server für die Bearbeitung der Setzoperationen
zuständig
sein, ein anderer Operationen erzeugen und löschen, und so weiter.
-
Die
Zugriffssicherheitsregeln werden im dauerhaften Speicher, kürzlich verwendete
Abschnitte auch im Cache-Speicher im MIS 150 und in jedem Hilfs-Server 152 gespeichert.
Immer dann, wenn eine Zugriftskontrollregel aktualisiert, gelöscht oder
dem System hinzugefügt
wird, wird die Regelgrundlage in jedem Hilfs-Server synchron aktualisiert,
indem eine Ereignisausbreitungseinrichtung verwendet wird, die auch
zum Bearbeiten anderer Ereignisnachrichtenarten verwendet wird.
Der Prozess zur Aktualisierung des Zugriffskontrollbaums 108 wird
im Folgenden genauer beschrieben.
-
Die Zugriffskontrolldatenbank
-
Während X.
741 angibt, dass der Objektzugriff eines Benutzers nutzerabhängig kontrolliert
werden soll, kontrolliert die vorliegende Erfindung den Objektzugriff
gruppenabhängig.
Die Benutzergruppeneigenschaft trägt dazu bei, die Datenmenge,
die zur Bestimmung jeder Zugriffsregel benötigt wird, erheblich zu vermindern.
Jeder Benutzer, der autorisiert ist, auf Informationen im System
zuzugreifen, wird einer oder mehreren Gruppen zugewiesen. Zugriffsregeln werden
in Form von Zugriffsrechten von Gruppen definiert. Zum Beispiel
werden Objektparameterleserechte eher durch die Verwendung verschiedener Gruppen
zugewiesen als Objektparametersetzrechte. Regeln sind zudem typischerweise
unter Bezug auf diese Gruppen hierarchisch definiert, etwa die Verweigerung
des Zugriffs auf den Unterbaum von Objekten des Kunden A für jeden,
der nicht auch ein Gruppenmitglied des Kunden A oder ein Systemadministratorgruppenmitglied
ist, wobei weiterhin Rechte an Objekten innerhalb des Unterbaums
des Kunden A entsprechend den Benutzergruppen, die vom Kunden A
eingerichtet werden, definiert sind.
-
Mit
Bezug auf 4 sind die primären Komponenten
des Zugriffskontrollbaums 170 Gruppendefinitionen 200,
Benutzerdefinitionen 202, Zieldefinitionen 204,
Zugriffsregeln 206 und Standardregeln 208.
-
Jede
Gruppendefinition 200 wird durch ein Gruppenobjekt vertreten,
das die folgenden Felder enthält:
- • Gruppenname;
und
- • eine
Liste der in der Gruppe vertretenen Benutzer.
-
Die
Gruppenobjekte werden verwendet, um Gruppen auf Benutzer abzubilden.
-
Jede
Benutzerdefinition 202 wird durch ein Benutzerobjekt repräsentiert,
das die folgenden Felder enthält:
- • Benutzername;
und
- • eine
Liste von Gruppen, denen der Benutzer angehört.
-
Die
Benutzerobjekte werden verwendet, um alle Gruppen zu identifizieren, denen
ein bestimmter Benutzer angehört.
-
Zu
beachten ist, dass der Ausdruck "Benutzer" Instanzen umfasst,
die sich von Benutzern, denen Zugriffsrechte gewährt werden können, unterscheidet.
Zum Beispiel können
die Hilfs-Server, der Protokoll-Server und selbst Objekte im System
zum Zweck der Definition von Zugriffsrechten, die diesen Instanzen
gewährt
werden, als "Benutzer" eingerichtet werden.
-
Jede
Zieldefinition 204 wird durch ein Zielobjekt vertreten,
das die folgenden Felder enthält:
- • Zielname;
und
- • eine
Liste der Basismanagementobjekte, die in die von diesem Zielobjekt
identifizierte Zielmenge integriert werden sollen;
- • eine
Liste der Managementobjektklassen; dieses Feld wird nur verwendet,
wenn eine Zielmenge gemäß der Filterbedingung
(siehe unten) alle Managementobjekte einer bestimmten Klasse umfasst;
- • Umfang,
der die Zahl der Managementobjektbaumebenen unterhalb der verzeichneten
Basismanagementobjekte angibt, die in die Zielmenge eingefügt werden
sollen; und
- • ein
Filter als optionales Feld, das verwendet wird, um die in der Zielmenge
enthaltene Menge der Objekte zu begrenzen; das Filterfeld ist das Äquivalent
einer "Wo"-Klausel einer Datenbankabfrage;
und
- • eine
Operationsliste, die die Operationen (Holen, Setzen und dergleichen)
auflistet, für
die die Zielmenge anwendbar ist.
-
Jede
Regeldefinition 206 wird von einem Regelobjekt repräsentiert,
das die folgenden Felder enthält:
- • einen
Regelname zur Identifikation der Regel;
- • eine
Gruppenliste, die alle Benutzergruppen identifiziert, auf die die
Regel anwendbar ist;
- • eine
Zielliste, die eine Liste der Zielobjekte ist, auf die die Regel
anwendbar ist; und
- • eine
Durchführungsaktion,
die angibt, ob die spezifischen Gruppen von Benutzern Zugriff auf die
spezifische Zielmenge haben; bei einer bevorzugten Ausführungsform
kann die Durchführungsaktion
auf Verweigern mit Antwort, Verweigern ohne Antwort oder Gewähren gesetzt
werden.
-
Standardregeln 208 werden
von einem Standardregelobjekt vertreten, das die folgenden Felder enthält:
- • eine
Liste der Standarddurchführungsaktionen für eine dazugehörige vorgegebene
Liste von Operationen (z. B. Holen, Setzen, Erzeugen, Löschen, und
dergleichen); die typischste Liste von Standarddurchführungsaktionen
ist, den Zugriff für
alle Operationstypen zu verweigern, aber in manchen Implementierungen
kann der Systemadministrator entscheiden, den Standard für manche
Operationen, etwa die Holen-Operation, auf "Gewähren" zu setzen;
- • eine
Standarddurchführungsaktion
für Ereignismeldungen;
und
- • eine
Standardverweigerungsantwort (d. h. Verweigern mit Antwort oder
Verweigern ohne Antwort).
-
Die
Standards 208 sind Standardantworten, die für jede Operation
definiert werden, wenn keine Regel definiert wurde, die für eine bestimmte
Zugriffsanfrage anwendbar ist. Zum Beispiel können die Standards auf "Gewähren" der Zugriffsanfragen,
deren Operation "Holen" ist, und auf "Verweigern mit Antwort" der Zugriffsanfragen,
deren Operation ungleich "Holen" ist, gesetzt werden.
Es wird jedoch erwartet, dass bei den meisten Implementierungen
alle Standards entweder auf "Verweigern
mit Antwort" oder
auf "Verweigern
ohne Antwort" gesetzt
werden. Die Standards 208 werden vorzugsweise von einem einzelnen
Standardobjekt definiert, das für
jede definierte Operation einen Gewähren- oder Verweigern-Merker
enthält.
-
Entweder
gewährt
oder verweigert jede "Regel" im Zugriffskontrollbaum
den Zugriff durch bestimmte Gruppen von Benutzern (identifiziert
durch die Gruppenobjekte, auf die im Regelobjekt verwiesen wird)
auf eine Zielobjektmenge, spezifiziert durch ein Zielobjekt, auf
das im Regelobjekt verwiesen wird. Anders als in X.741 werden Zugriffsregeln
nicht nutzerabhängig,
sondern stattdessen gruppenabhängig
definiert. Da bestimmte Benutzer einem Unternehmen, das die vorliegende
Erfindung verwendet, beitreten oder dieses verlassen, brauchen demzufolge
lediglich die Benutzer und Gruppenobjekte aktualisiert werden, anstatt
alle Regelobjekte, die für diese
Benutzer gültig
waren, aktualisieren zu müssen.
-
Neben
den Regelobjekten, die eine Menge der Zielmanagementobjekte spezifizieren,
kann das System ein globales Verweigerungsregelobjekt und ein globales
Genehmigungsregelobjekt haben. Jedes der globalen Regelobjekte hat
dieselbe Struktur wie ein reguläres
Regelobjekt, hat jedoch ein leeres Ziellistenfeld, das anzeigt,
dass die Regel global ist. Die globale Verweigerungsregel, wenn
definiert, spezifiziert Gruppen von Benutzern, die keine Operationen
an Managementobjekten ausführen
können.
Die globale Gewährungsregel,
wenn definiert, spezifiziert "Superbenutzer"-Gruppen (z. B. Systemadministratoren),
die alle Operationen an allen Managementobjekten ausführen dürfen.
-
Immer
dann, wenn ein Objekt dem Zugriffskontrollbaum 170 hinzugefügt, aus
diesem gelöscht oder
verändert
wird, müssen
eventuell auch andere Zugriffskontrollobjekte geändert werden, um den Zugriffskontrollbaum 170 selbstkonsistent
zu belassen. Wenn etwa ein Benutzerobjekt geändert wird, um alle vorher
in die Gruppenliste der Benutzerobjekte eingefügten Gruppen zu löschen und
den identifizierten Benutzer zu einem Mitglied einer vorher definierten "Alles verweigern"-Gruppe zu machen,
müssen
alle Gruppenobjekte, die in dem Benutzerobjekt aufgelistet waren,
aktualisiert werden, um diesen Benutzer aus ihrer Benutzerliste
zu löschen,
und das "Alles verweigern"-Gruppenobjekt muss
aktualisiert werden, indem dieser Benutzer zu seiner Benutzerliste hinzugefügt wird.
Wenn in einem weiteren Beispiel ein Zielobjekt aus dem Zugriffsobjektbaum 170 gelöscht wird,
müssen
alle Regelobjekte, die auf das gelöschte Zielobjekt verweisen,
so geändert
werden, dass sie das gelöschte
Zielobjekt aus ihren Zielobjektlisten löschen.
-
Um
sicherzustellen, dass der Zugriffskontrollobjektbaum 170 selbstkonsistent
bleibt, werden alle Veränderungen
am Zugriffskontrollobjektbaum 170 von einer sogenannten
Zugriffskontrollkonfigurationsprozedur 210 ausgeführt.
-
Die
Zugriffskontrollkonfigurationsprozedur 210 präsentiert
Benutzern, die autorisiert sind, den Zugriffskontrollbaum 170 zu
verändern,
eine graphische Benutzeroberfläche 212.
Die Zugriffskontrollkonfigurationsprozedur 210 ermöglicht den
autorisierten Benutzern, den Zugriftskontrollbaum 170 zu bewegen,
zu prüfen
und zu verändern.
Jedes Mal, wenn der autorisierte Benutzer eine auszuführende Veränderung
des Zugriffskontrollbaums 170 spezifiziert, führt die
Zugriffskontrollkonfigurationsprozedur 210 alle anderen Veränderungen
am Zugriffskontrollbaum 170 aus, die erforderlich sind,
um diesen selbstkonsistent zu erhalten.
-
Anwendung
von Zugriffskontrollregeln auf Anfragen
-
Mit
Bezug auf 5 wird die Operation der Zugriffskontrollentscheidungsfunktion 176 zunächst ohne
Beachtung des Einflusses des Aufteilens von Anfragen für die Bearbeitung
durch einen oder mehrere Server erläutert. Später werden die Anfragenaufteilung
und die Verteilung der Aufgaben unter den Servern erläutert.
-
Wenn
eine Zugriffsanfrage empfangen wird, wird die Zugriffsanfrage der
Reihe nach mit der globalen Verweigerungsregel (Schritt 220),
der zielgerichteten Verweigerungsregel (Schritt 222), der
globalen Gewährungsregel
(Schritt 224) und der zielgerichteten Genehmigungsregel
(Schritt 226) verglichen. Die erste Regel, die mit der
Zugriffsanfrage übereinstimmt,
wird darauf angewendet (Schritt 230). Wenn keine Regel
zutrifft, wird die entsprechende Standardregel angewandt (Schritt 232).
-
Indem
zuerst die Verweigerungsregeln und danach die Gewährungsregeln
angewendet werden, werden den Zugriffsverweigerungsregeln eine höhere Priorität als den
Zugriffsgewährungsregeln
erteilt. Dieser Aufbau vereinfacht zudem, eine Menge von Zugriffsregeln
zu definieren, um einer breiten Gruppe von Benutzern bestimmte Zugriffsrechte
zu gewähren,
und andererseits Untergruppen zu spezifizieren, denen diese Zugriffsrechte
verweigert werden sollten.
-
Wenn
eine Zugriffsanfrage eine Zielmenge mit mehr als einem Zielobjekt
hat, können
verschiedene Regeln auf verschiedene von der Anfrage spezifizierte
Zielobjekte angewendet werden. In diesem Fall wird die erste Regel,
die auf jedes einzelne Zielobjekt oder jede Untergruppe von Zielobjekten
anwendbar ist, auf dieses Ziel oder diese Untergruppe von Zielen
angewendet. Demzufolge können
manche Teile einer Zugriffsanfrage gewährt werden, während andere
verweigert werden.
-
In 6 wird
die Folge von Aktionen gezeigt, die von der Zugriffsanfrageauf teilungs-
und -routingprozedur 172, den Zugriffskontrollentscheidungs- und
-durchführungsfunktionen 176, 174 und
der Anfrage-Antwort-Kombinationsprozedur 178 durchgeführt werden.
Zu beachten ist, dass diese Beschreibung nicht auf Zugriffsanfragen
für Ereignismeldungen
anzuwenden ist, die separat von der Ereignisregistrierung bearbeitet
werden.
-
Jede
Zugriffsanfrage wird vom MIS 150 empfangen, der daraufhin
die Zugriffsanfrage mit der globalen Verweigerungsregel vergleicht
(Schritt 240). Wenn eine Übereinstimmung gefunden wird,
wird die Anfrage verweigert, wobei in entsprechenden Fällen eine
Antwort an den Initiator zurückgesendet
wird (Schritt 242). Dem Initiator wird keine Antwort zurückgesendet,
wenn (A) die anwendbare globale Regel eine Durchführungsfunktion "Verweigern ohne Antwort" spezifiziert oder
(B) die Anfrage selbst einen Modus "unbestätigt" spezifiziert.
-
Wenn
keine Übereinstimmung
mit der globalen Verweigerungsregel gefunden wird, vergleicht der MIS
die in der Anfrage spezifizierte Zielmenge mit der Unterbaum-Server-Zuordnungstabelle 173,
um zu bestimmen, an welchen oder an welche Server die Anfrage zur
Bearbeitung gesendet wird (Schritt 244). Wenn die Zielmenge
der Anfrage in den Bereich mehrerer Server fällt, wird die Zugriffsanfrage
in Teilanfragen aufgeteilt, wobei jede Teilanfrage daraufhin an
den entsprechenden Server gesendet wird. Wenn eine Anfrage aufgeteilt
wird, wird die Zielmenge in der ursprünglichen Anfrage für jede Teilanfrage
angepasst, um so nur Zielobjekte im Bereich der dazugehörigen Server
zu spezifizieren.
-
Wenn
die Zielmenge der Anfrage in den Bereich eines einzelnen Servers
fällt,
wird die gesamte Anfrage zur Bearbeitung an diesen Server weitergeleitet.
In manchen Fällen
wird der Server, der die Anfrage bearbeitet, der MIS sein, wobei
die Anfrage an das Ende der lokalen Anfragenwarteschlange angehängt wird.
Jeder Hilfs-Server, der eine Anfrage vom MIS empfängt, reiht
die empfangenen Anfragen zur Bearbeitung in seine lokale Anfragenwarteschlange ein.
Der MIS pflegt für
alle ausstehenden Zugriffsanfragen ein Zustandsinformationsfeld 180 (3)
mit einer Angabe des Servers oder der Server, an den die Zugriffsanfragen
zur Bearbeitung gesendet wurden.
-
Bei
jedem Server, an den eine Zugriffsanfrage zur Bearbeitung gesendet
wurde, wird die Zugriffsanfrage bearbeitet, indem die Zugriffskontrollentscheidungsfunktion
und daraufhin die Zugriffskontrolldurchführungsfunktion ausgeführt werden.
Mit Rückbezug
auf 5 werden genauer gesagt an jedem Server die Schritte 222 bis 232 der
Zugriffskontrollentscheidungsfunktion ausgeführt, da der Schritt 220 bereits
vom MIS ausgeführt
wurde. Die Verweigerungs-/Gewährungsentscheidung
kann für
jede Zugriffsanfrage in einem Sicherheitsprüfpfad gespeichert werden.
-
Bei
einer bevorzugten Ausführungsform
der vorliegenden Erfindung kann die Zugriftskontrollentscheidungsfunktion
durch die Verwendung eines globalen Konfigurationsparameters konfiguriert
werden, um alle folgenden Ebenen der "Protokollierung" von Zugriffsentscheidungen im Sicherheitsprüfpfad aufzurufen:
(A) Aus, ohne protokollierten Informationen, (B) Speichern von zusammenfassenden
Informationen über
die Zugriffsanfragengewährungen
und -verweigerungen, wobei lediglich die Identität des Initiators, die angeforderte
Operation und das Zielobjekt oder die Menge der Objekte, auf die
der Zugriff gewährt
oder verweigert wurde, angezeigt wird, und (C) eine vollständige Protokollebene,
bei der für
jede Zugriffsanfragengewährung
oder -verweigerung die gesamte Zugriffsanfrage, ebenso wie vollständige Informationen über die
Zielobjekte, auf die der Zugriff gewährt oder verweigert wurde,
protokolliert werden.
-
An
jedem Server werden die von Anfragen und Teilanfragen erzeugten
Antworten ermittelt und an den MIS zurückgesendet (Schritt 246).
Wenn eine Anfrage in zwei oder mehr Teilanfragen aufgeteilt wurde,
werden am Ende beim MIS die Antworten kombiniert und die kombinierte
Antwort wird, falls vorhanden, zum Initiator zurückgesendet (Schritt 248). Wenn
eine Anfrage nicht aufgeteilt wurde, wird die Antwort, falls vorhanden,
an den Initiator weitergeleitet. Die Zugriffsanfrage wird zudem
aus der ausstehenden Anfragenzustandstabelle 180 (3)
gelöscht.
-
Kombination von Antworten,
wenn eine Anfrage mehr als ein Zielobjekt hat
-
7 ist
ein Schaubild, das darstellt, wie Zugriffsanfragenantworten verknüpft werden,
wenn die Zielmenge einer Zugriffsanfrage mehr als ein Managementobjekt
umfasst. Das Schaubild in 7 wird nur
angewendet, wenn der Zugriff auf wenigstens ein von einer Anfrage
spezifiziertes Zielobjekt verweigert wird. Wenn der Zugriff auf
alle Zielobjekte gewährt
wird, werden die von allen Zielobjekten erzeugten Antworten nur
kombiniert und an den Initiator zurückgesendet.
-
Wenn
es entsprechend der Zeile "uneingeschränkte Operation" in 7 in
der Zielmenge einer Anfrage nur ein Objekt gibt, bedarf es keiner
Kombination der Antworten. Wenn die Anfrage eine bestätigte Anfrage
ist, wird die von der anwendbaren Regel erzeugte Zugriffsverweigerungsantwort
an den Initiator zurückgesendet.
Wenn die von der anwendbaren Regel erzeugte Antwort eine "Verweigern ohne Antwort"-Antwort ist, wird
keine Antwort zurückgesendet. Wenn
die Anfrage eine unbestätigte
Anfrage ist, wird keine Antwort zurückgesendet, gleichgültig ob
die Anfrage gewährt
oder verweigert wird.
-
Wenn
eine Anfrage entsprechend der Zeile "eingeschränkte Operation" in 7 mehr
als ein Zielobjekt spezifiziert, hängt Art der zurückgesendeten
Antwort von den Synchronisationsparametern der Anfrage ab. Wenn
die Anfrage eine Atomic-Anfrage ist, schlägt die gesamte Operation fehl,
wenn der Zugriff auf ein Zielobjekt verweigert wird. Wenn die Anfrage
eine bestätigte
Anfrage ist, wird eine einzelne "Zugriff
verweigert"-Antwort
an den Initiator zurückgesendet.
Wenn andernfalls die Anfrage eine unbestätigte Anfrage ist, wird dem
Initiator keine Antwort zurückgesendet.
-
Wenn
die Anfrage mehr als ein Zielobjekt ("eingeschränkte Operation") und einen "best effort"-Synchronisationsmodus
spezifiziert, werden die Antworten, die von den Objekten erzeugt
werden, auf die der Zugriff gewährt
wurde, dem Benutzer zurückgesendet.
Für jedes
Objekt, auf das der Zugriff verweigert wurde, wird eine "Zugriff verweigert"-Antwort zurückgesendet,
wenn die Anfrage eine bestätigte Anfrage
ist und die anwendbare Regel eine "Verweigern mit Antwort"-Durchführungsaktion
enthält. Wenn
andernfalls die anwendbare Regel eine "Verweigern ohne Antwort"-Durchführungsaktion
enthält, wird
für das
Objekt oder die Objekte, auf die der Zugriff verweigert wurde, keine
Antwort gesendet.
-
Wenn
die Anfrage letztlich eine unbestätigte Anfrage war, wird an
den Initiator keine Antwort zurückgesendet,
gleichgültig
welche Teile der Anfrage gewährt
und welche verweigert wurden. Zu beachten ist, dass eine unbestätigte Anfrage
keine "Holen"-Operation aufweisen
kann, da definitionsgemäß der Zweck
einer "Holen"-Antwort die Informationsgewinnung
ist.
-
Die
in 7 zusammengefasste Kombinationsoperation wird
zuerst an jedem Server 150, 152 ausgeführt, an
denen die Anfrage oder Teilanfrage bearbeitet wird, und wiederum
am MIS für
diejenigen Anfragen, die in Teilanfragen aufgeteilt sind. Für Atomic-Zugriffsanfragen,
die auf mehr als einen Server aufgeteilt und bearbeitet werden,
wird die Zugriffskontrolldurchführungsfunktion
erst ausgeführt,
nachdem die Ergebnisse der Zugriftskontrollentscheidungsfunktion
vom MIS verknüpft
wurden. Wenn eine Zugriffsanfrage an nur einem Server bearbeitet wird
(d. h., alle Zielobjekte fallen in den Bereich eines einzelnen Servers 150, 152),
wird die Antwortverknüpfungsoperation
nur von dem Server ausgeführt, der
die Anfrage bearbeitet.
-
Zugriffsbeschränkung auf
Ereignismeldungen
-
Bei
der vorliegenden Erfindung wird der Zugriff auf Ereignisse (Meldungen)
auf die gleiche Art kontrolliert wie der Zugriff auf Objekte, indem
Regeln der Zugriftskontrollregelbasis verwendet werden. X.741 umfasst
Ereignismeldungen nicht als eine Art von Operationstyp, auf die
der Zugriffskontrollmechanismus des X.741 anwendbar ist. Ein Beispiel
des Ereignismeldungszugriffskontrollproblemsist folgendes: Ein Telephonnetzwerkanbieter
will nicht, dass Kunde A Berichte von neuen Netzwerkbetriebsmitteln
erhält,
die für
den Kunden B eingerichtet wurden, solange sich Kunde A nicht für den Empfang
aller Ereignismeldungen registriert.
-
Die
vorliegende Ausführungsform
löst das Ereignismeldungszugriffskontrollproblem
durch (A) das Hinzufügen
der Ereignismeldungen zur Menge der Operationstypen, die von den
Regeln der Zugriffsregeldatenbank reguliert werden, und (B) das Hinzufügen einer
Filtereinrichtung zum Ereignis-Router des Systems, die Ereignismeldungsnachrichten auf
Grundlage der Regeln der Zugriffsregeldatenbank filtert.
-
Wenn
ein Objekt im Zugriffskontrollobjektbaum 170 definiert
wird, ist somit eine der Operationen, die in der Operationsliste
des Zielobjekts spezifiziert werden kann, "Ereignismeldungen". Bei einer bevorzugten Ausführungsform
kann die in einem Zielobjekt spezifizierte Ereignismeldungsoperation entweder
alle Ereignismeldungen für
eine Menge von spezifizierten Managementobjekten spezifizieren oder
bestimmte spezifische Arten von Ereignismeldungen spezifizieren,
indem das Filterfeld des Zielobjekts verwendet wird, um die Arten
von Ereignismeldungen zu spezifizieren, die in das Zielobjekt eingefügt werden
sollen. Ein Zielobjekt kann etwa auf SNMP- oder CMIP-erzeugte Ereignisse
anwendbar sein, jedoch auf keine anderen Ereignisarten, etwa auf
Objekterzeugungs- oder -löschungsereignisse.
-
Ein
bestimmtes Zielobjekt kann ferner verwendet werden, um Zugriffsrechte
auf eine Menge von Managementobjekten für mehrere Operationen, einschließlich Ereignismeldungen,
zu definieren. Zum Beispiel wird ein Zielobjekt, das mit einer Verweigerungsregel
zur Verweigerung des Zugriffs auf jegliche Informationen eine bestimmte
Menge von Managementobjekten betreffend verwendet werden soll, typischerweise
Ereignismeldungen in seiner Operationsliste enthalten. Wahlweise
können
in entsprechenden Fällen
auch einzelne Zielobjekte zur Definition der Ereignismeldungszugriffsrechte
verwendet werden.
-
Mit
Bezug auf 8 verwaltet der MIS 150 eine
Ereignisregistrierung 184. Genauer ist die Ereignisregistrierung 184 ein
Softwaremodul, das eine Tabelle 260 von Benutzerereignisanfragen
verwaltet. Der MIS leitet alle Zugriffsanfragen, deren spezifizierter
Operationstyp "Ereignismeldung" ist, an die Ereignisregistrierung 184 weiter,
gleichgültig
welche Objekte von der Anfrage spezifiziert werden. Die Tabelle 260 speichert
Informationen, die für
spezifizierte Ereignismeldungen, die entweder von den Managementobjekten
oder von den Zugriffskontrollobjekten erzeugt werden können, angeben,
welche Benutzer oder Instanzen sich für eine Anfrage zum Empfangen von
Kopien dieser Ereignismeldungen registriert haben. Die Ereignisregistrierungstabelle 260 speichert lediglich
Informationen über
Ereignisse, die Benutzer und andere Instanzen angefordert haben.
Die Ereignismeldungsregistrierungsanfragen (die Zugriffsanfragen
mit einem Operationstyp "Ereignismeldung" entsprechen) können entweder
in Form von spezifizierten Objekten, spezifizierten Klassen von Objekten
oder spezifizierten Unterbäumen
von Objekten spezifiziert werden. Somit kann ein Benutzer etwa den
Empfang aller Ereignismeldungen für Routerobjekte (die einer
Objektklasse entsprechen) anfordern und ferner einen Filter spezifizieren,
etwa Router, die im Staat Kalifornien angesiedelt sind, oder Router,
die von einem bestimmten Unternehmen hergestellt werden. Benutzer
und Instanzen können
auch vorherige Anfragen widerrufen.
-
In
der bevorzugten Ausführungsform überprüft die Ereignisregistrierung 184 lediglich
Registrierungsanfragen, um sicherzustellen, dass die Anfragen semantisch
korrekt sind und dass die spezifizierten Objekte, für die Ereignisse
angefordert werden, tatsächlich
existieren. Somit überprüft in der
bevorzugten Ausführungsform
die Ereignisregistrierung 184 nicht, ob der Benutzer oder
die Instanz, die eine Registrierungsanfrage stellen, die Sicherheitsfreigabe
besitzt, um tatsächlich
die angeforderten Meldungen zu erhalten. Diese Arbeit wird dem Ereignis-Router 186 übertragen,
der Ereignismeldungszugriffsrechte zum Zeitpunkt der Bearbeitung
jeder Ereignismeldung überprüft. Demzufolge
werden jegliche Änderungen
an den Zugriffsrechten des Benutzers auf Ereignismeldungen vom Ereignis-Router
berücksichtigt
und beeinflussen nicht die in der Ereignisregistrierung 184 gespeicherten
Informationen.
-
Andere
Instanzen als Benutzer, die sich für den Empfang von Ereignismeldungen
registrieren können,
umfassen: Den MIS 150 und die Hilfs-Server 152,
den Protokoll-Server (der im Folgenden beschrieben wird) und sogar
Objekte (z. B. Datenbankobjekte, die im Folgenden beschrieben werden),
die Teil des Zugriffskontrollmechanismus sind.
-
Alle
Ereignismeldungen, einschließlich
der von Managementobjekten erzeugten Ereignismeldungen (in 8 durch "andere Ereignisquellen" gekennzeichnet)
und der von Zugriffskontrollobjekten erzeugten Ereignismeldungen
(in 8 durch den speziellen Hilfs-Server 154 gekennzeichnet),
werden an den Ereignis-Router 186 im MIS 150 geleitet.
Der Ereignis-Router 186 hat auch Zugriff auf den Zugriffskontrollbaum 170 und
die Tabelle der Benutzerereignisanfragen 260 in der Ereignisregistrierung 184.
Für jede
vom Ereignis-Router 186 empfangene Ereignismeldung bestimmt
der Ereignis- Router
zunächst, welche
Benutzer und Instanzen eine Kopie dieser Ereignismeldung angefordert
haben und entscheidet dann, welche dieser Benutzer und Instanzen
das Recht zum Empfang dieser Ereignismeldungen haben. Die Bestimmung
von Zugriffsrechten auf Ereignismeldungen wird, wie in 5 gezeigt,
unter Verwendung der Zugriffskontrollentscheidungsfunktion ausgeführt. Dementsprechend
prüft der
Ereignis-Router der Reihe nach die globale Verweigerungsregel, die
zielorientierten Verweigerungsregeln, die globale Gewährungsregel
und die zielorientierten Gewährungsregeln,
bis eine passende Regel identifiziert ist. Eine Standardregel wird
angewendet, wenn keine passende Regel gefunden wird. Eine passende Regel
muss (A) auf die "Ereignismeldung"-Operation zutreffen,
(B) für
das Objekt gelten, das die Ereignismeldung erzeugt hat, und (C)
auf eine Gruppe zutreffen, der der Anfragesteller angehört.
-
Für jeden
Anfragesteller einer Ereignismeldung, der für diese Ereignismeldung Zugriffsrechte hat,
erzeugt der Ereignis-Router eine entsprechende Ereignismeldungsnachricht,
von denen jede an einen einzelnen autorisierten Benutzer oder eine
Instanz adressiert ist. Folglich kann eine einzelne Ereignisnachricht
abhängig
von der Anzahl der Anfragesteller mit entsprechenden Zugriffsrechten
keine oder viele Ereignismeldungsnachrichten ergeben.
-
Eine
spezifische Anwendung der Ereignisregistrierung 184 und
des Ereignis-Routers 186,
die in den bevorzugten Ausführungsformen
verwendet werden, wird im Folgenden ausgeführt. Der spezielle Hilfs-Server 154 bearbeitet
alle Zugriffsanfragen auf den Zugriffskontrollbaum 170 sowie
alle Veränderungen
desselben. Anders ausgedrückt
werden Zugriffsanfragen (anders als Ereignismeldungszugriffsanfragen),
deren Zielmenge im Zugriffskontrollbaum 170 liegt, vom
MIS 150 an den speziellen Hilfs-Server 154 weitergeleitet.
Ferner führen
alle Veränderungen
des Zugriffskontrollbaums 170 zur Erzeugung von Ereignismeldungen,
die an den Ereignis-Router 186 gesendet werden.
-
Genauer
führen
die Erzeugung neuer Zugriffskontrollobjekte, die Löschung von
Zugriffskontrollobjekten und die Veränderung der Attribute jeglicher
Zugriffskontrollobjekten allesamt zur Erzeugung von Ereignismeldungen.
-
Der
MIS 150 und die Hilfs-Server 152 werden alle automatisch
in der Ereignisregistrierung 184 registriert, um alle auf
die Veränderungen
des Zugriftskontrollbaums 170 bezogenen Ereignismeldungen
zu empfangen. Der MIS 150 und die Hilfs-Server werden alle
in eine Menge von "Superbenutzern" mit Zugriffsrechten
auf alle Ereignismeldungen eingefügt. Unter den von dem MIS 150 und
den Hilfs-Servern 152 geteilten Bibliotheksprozeduren befindet sich
ferner eine Ereignisempfangs- und -bearbeitungsprozedur 262.
Wenn der MIS 150 und die Hilfs-Server 152 eine
Ereignismeldung empfangen, die auf eine Veränderung im Zugriffskontrollbaum 170 hinweist,
vollzieht die Ereignisbearbeitungsprozedur 262, die von
jedem Server aufgerufen wird, die gleiche Veränderung an der lokalen Kopie
des Zugriftskontrollbaums 170 des Servers. Folglich werden die
lokalen Kopien des Zugriffskontrollbaums 170 in jedem Server 150, 152 nahezu
gleichzeitig aktualisiert.
-
Direkter Datenbankzugriff
auf Managementinformationen
-
Der
SQL-Zugriff auf die Managementobjektdatenbank wird von X.741 nicht
gefordert oder auch nur vorgeschlagen. Tatsächlich kann ein direkter Zugriff über eine
DBMS-Einrichtung als gegensätzlich zu
den Zielen des X.741 angesehen werden, da der Zugriff eine potentielle
Quelle für
Sicherheitslücken ist.
Firmenkunden großer
Kommunikationsnetzwerke fordern jedoch direkten "schreibgeschützten"-Zugriff auf Managementinformationen
zum Zweck der Berichterstellung.
-
Der
direkte Zugriffsmechanismus der vorliegenden Erfindung bietet begrenzten,
schreibgeschützten
Zugriff auf Managementinformationen, indem Standard-DBMS-Berichtersteller
zur Definition und Erstellung von Berichten über den Zustand oder die zurückliegende
Leistung von Netzwerkobjekten verwendet werden. Dies ist praktisch
für die
Benutzer und vermeidet die Schwierigkeiten einer Netzwerkmanagementinformationsabfrage
mittels SNMP (oder eines anderen Netzwerkmanagementprotokolls),
wenn die einzige auszuführende
Aufgabe in der Erstellung von Zustandsberichten und anderen Netzwerksystemanalysenberichten
besteht.
-
Der
direkte Zugriffsmechanismus der vorliegenden Erfindung erlaubt Benutzern
nur den Zugriff auf Informationen, die gewährt werden, wenn sie über die
normale Managementschnittstelle zum Netzwerk angefordert werden.
-
Mit
Bezug auf 9 sind die primären Komponenten
des direkten Informationszugriffsmechanismus: ein herkömmliches
Datenbankmanagementsystem (DBMS) 280 zur Speicherung von
Ereignisprotokollen 282, von denen jedes Ereignismeldungen speichert,
für die
mehrere Benutzer direkten SQL-Zugriff angefordert haben; und einen
Protokoll-Server 290, dessen primäre Funktion die Konvertierung
von Ereignismeldungen in SQL-Einfügeanweisungen zur Speicherung
der Ereignismeldungen in den Ereignisprotokollen ist.
-
Das
herkömmliche
DBMS 280 speichert Informationstabellen. Während 9 Ereignisprotokolle 282 zeigt,
umfasst jedes Ereignisprotokoll eigentlich eine oder mehrere Datenbanktabellen,
worin jede Datenbanktabelle eine verschiedene Art von Ereignismeldungen
speichert. Das DBMS 280 hat auch ein Zugriffsprivilegienmodul 284,
das Zugriffsrechte auf jede der Tabellen im DBMS konfiguriert (d.
h., einrichtet). Zum Beispiel kann das Zugriffsprivilegienmodul 284 eine
Zugriffsprivilegientabelle umfassen, die Zugriffsrechtsinformationen
speichert, die angeben, welche Benutzer Zugriff auf die Tabellen
haben, aus denen die Ereignisprotokolle 282 gebildet werden. Das
Zugriffsprivilegienmodul 284 kann jedoch auf andere Weise
implementiert werden, etwa durch die Speicherung von zugriffsprivilegierten
Informationen in jeder Datenbanktabelle. Die vorliegende Anwendung
hängt nicht
von der einzelnen Einrichtung ab, die vom Zugriffsprivilegienmodul 284 zur
Festlegung von Datenbanktabellenzugriffsrechten verwendet wird.
-
Bei
der bevorzugten Ausführungsform
hat nur der Protokoll-Server 290 (neben dem Systemadministrator)
Schreibrechte in den Ereignisprotokolltabellen, während spezifische
Benutzer Lesezugriff auf spezifische Tabellen haben. Eine Standard-SQL-Maschine 286 bearbeitet
Einfügeanweisungen
vom Protokoll-Server 290 sowie Leseanfragen von Benutzerprozessen
oder Arbeitsstationen 300, die über eine Benutzerkommunikationsoberfläche 288 übermittelt werden.
-
Der
Protokoll-Server 290 ist bei der Ereignisregistrierung
registriert, um alle vom System erzeugten Ereignismeldungen zu empfangen,
und hat entsprechende Zugriffsrechte. Der Protokoll-Server 290 ist
vorzugsweise eine Software-Instanz oder ein Prozess, der auf dem
gleichen Computer oder Rechnerknoten wie der MIS 150 läuft. Eine
Menge von Filtern 291, 294 im Protokoll-Server 290 bestimmt,
welche Ereignismeldungen wo gespeichert werden. Ein erstes Filter 291 im
Protokoll-Server wird Sicherheitsprüfpfadfilter genannt. Dieses
Filter 291 übermittelt vom
MIS 150 und den Hilfs-Servern 152 erzeugte "Zugriffsgewährungs"- und "Zugriffsverweigerungs"-Ereignismeldungen
(siehe 8). Das Sicherheitsprüfpfadfilter 291 kann
wahlweise entweder die gesamte Ereignismeldung oder einen spezifischen
Teil in der Sicherheitsprüfpfaddatei 182 speichern.
Wenn der Sicherheitsprüfpfad
konfiguriert wird, um in einem detaillierten Modus zu arbeiten, speichert
der Sicherheitsprüfpfad 182 jede
Zugriffsanfrage und das entsprechende Ergebnis vollständig ab.
Wenn der Sicherheitsprüfpfad
konfiguriert wird, um in einem verkürzten Modus zu arbeiten, speichert der
Sicherheitsprüfpfad 182 eine
verkürzte
Darstellung jeder Zugriffsanfrage und des entsprechenden Ergebnisses.
-
Ein
weiteres Protokoll-Serverfilter 292, Sicherheitsalarmfilter
genannt, wird zur Erzeugung eines Sicherheitsalarmprotokolls 293 verwendet,
das separat vom Sicherheitsprüfpfad 182 ist,
in dem Sicherheitsalarme erzeugt und nur im Protokoll gespeichert
werden, wenn eine Verweigerung des Objektzugriffs auftritt. Bei
der bevorzugten Ausführungsform
identifizieren die gespeicherten Sicherheitsalarme den Benutzer,
der jede verweigerte Zugriffsanfrage initiiert hat.
-
Die
andere Art der in 9 gezeigten Protokoll-Serverfilter
sind die Ereignisprotokollfilter 294. Jedes Ereignisprotokollfilter
wird eingestellt, nur eine spezifische Menge an Ereignismeldungen
weiterzuleiten. Ein einzelner Kunde kann etwa anfordern, dass bestimmte
Gruppen seiner Angestellten direkten Zugriff auf alle SNMP/CMIP-Ereignismeldungen von
Managementobjekten haben, die diesem Kunden zugewiesen sind. Die
Protokollerzeugungs-/Löschprozedur 296 wird
verwendet, um ein entsprechendes Ereignisprotokoll zu definieren durch:
- (A) Definition und Initialisierung einer entsprechenden
Menge der DBMS-Tabellen 282 (d. h., ein Ereignisprotokoll)
zur Speicherung der angeforderten Ereignismeldungen (eine eindeutige DBMS-Tabelle
pro eindeutigem Ereignismeldungstyp);
- (B) Definition und Erzeugung eines Datenbankobjekts 298 und Registrierung
des Datenbankobjekts 298 in der Ereignisregistrierung,
um Ereignismeldungen zu empfangen, welche die Rechte von Benutzern
beeinflussen, diese Ereignismeldungen zu empfangen; das Datenbankobjekt 298 umfasst
ein erstes Attribut, das eine Liste der DBMS-Tabellen enthält, in denen
das Ereignisprotokoll gespeichert wird, sowie ein zweites Attribut, das
eine Liste der Gruppen mit Zugriffsrechten auf die Ereignismeldungen
enthält;
- (C) da Gruppennamen zuerst zum Datenbankobjekt 298 hinzugefügt werden,
sendet das Datenbankobjekt 298 eine anfängliche Menge der Datenbanktabellenzugriffsbefehle
an das DBMS zur Definition der anfänglichen Menge der Benutzer mit
Zugriffsrechten auf die Tabellen, aus denen das Ereignisprotokoll 282 gebildet
wird; und
- (D) Definition und Erzeugung eines Ereignisprotokollfilters 282 zum
ausschließlichen Übermitteln der
Ereignismeldungen und zum Konvertieren dieser in SQL-Einfügeanweisungen
zum Einfügen jeder übermittelten
Ereignismeldung in die entsprechende DBMS-Tabelle.
-
Für jedes
Ereignisprotokoll 282 gibt es ein oder mehrere entsprechende
Zielobjekte im Zugriffskontrollobjektbaum 170, die (1)
die Zielmenge von Managementobjekten, für die Ereignismeldungen im Ereignisprotokoll
gespeichert werden sollen, und (2) die Arten von Ereignismeldungen,
die in das Ereignisprotokoll eingefügt werden sollen, definieren.
Für jedes
einzelne Ereignisprotokoll muss die Menge der Gruppen der autorisierten
Benutzer für
alle Ereignismeldungen dieses Ereignisprotokolls dieselbe sein. Jegliche
Veränderungen
in den Gruppen der Benutzer, denen Zugriff auf das Ereignisprotokoll
gewährt werden
soll, werden dem entsprechenden Datenbankobjekt 198 übermittelt,
indem das Datenbankobjekt in der Ereignisregistrierung registriert
wird, um Ereignismeldungen über
Attributveränderungen
des Zielobjekts oder der Zielobjekte entsprechend dem Ereignisprotokoll
zu empfangen. Das Datenbankobjekt 298 wird ebenso registriert,
um Ereignismeldungen über
Attributveränderungen
der Gruppenobjekte für die
Gruppen zu empfangen, die Zugriffsrechte auf das Ereignisprotokoll
haben.
-
Immer
dann, wenn dem Datenbankobjekt 298 für ein bestimmtes Ereignisprotokolls 282 eine Veränderung
(d. h. Hinzufügungen
und/oder Löschungen)
in der Mitgliedschaft einer der Gruppen mit Zugriffsrechten auf
das Ereignisprotokoll 291, oder eine Veränderung
in der Menge der Gruppen, denen Zugriff auf die Ereignismeldungen
des Ereignisprotokolls gewährt
werden soll, angezeigt wird, sendet das Datenbankobjekt 298 entsprechende
Zugriffsgewährungs-
und Zugriffsentziehungsbefehle an das DBMS 280. Das Zugriffsprivilegienmodul 284 rekonfiguriert
daraufhin die Datenbanktabellenzugriffsrechte entsprechend.
-
Da
Ereignismeldungen entsprechend einem Ereignisprotokoll erzeugt werden,
werden sie vom Ereignis-Router 186 an den Protokoll-Server 290 weitergeleitet.
Der Protokoll-Server 290 leitet sie an das Filter des Ereignisprotokolls 294 weiter,
wo sie in SQL-Einfügeanweisungen
umgewandelt werden und zur Speicherung an das DBMS 280 gesendet
werden. Wenn manche der gleichartigen Ereignismeldungen in zwei
(oder mehr) unterschiedliche Ereignisprotokolle 282 eingefügt werden,
wird die gleiche Ereignismeldung zwei Mal (oder öfter) in unterschiedlichen
Tabellen des DBMS gespeichert.
-
Die
SQL-Einrichtung 286 verstärkt vorher definierte Zugriffsbeschränkungen
auf die Ereignisprotokolle. Jede Benutzeranfrage nach Informationen
aus den Tabellen im DBMS wird besonders von der SQL-Einrichtung 286 auf
die durch das Zugriffsprivilegienmodul 284 eingerichteten
Zugriffsrechte hin überprüft, wobei
nur Anfragen in vollständiger Übereinstimmung
mit diesen Zugriffsrechten bearbeitet werden. Benutzeranfragen,
die Informationen aus Tabellen anfordern, für die der Benutzer keine Zugriffsrechte
hat, werden von der SQL-Einrichtung 286 abgelehnt.
-
Da
Benutzeranfragen nach Informationen aus dem DBMS 280 in
Form von SQL-Anfragen übermittelt
werden müssen,
können
alle für
das DBMS verfügbaren
Berichterstellungswerkzeuge zur Erstellung von SQL-Anfragen nach
Managementinformationen angewendet werden. Folglich bietet die in 9 gezeigte
DBMS-Zugriffseinrichtung den Vorteil der Verwendung schneller und
bekannter DBMS-Zugriffswerkzeuge, während nach wie vor die selben Zugriffsbeschränkungen
wie beim Managementinformations-Server bereitgestellt werden. Ferner
werden die vom DBMS 280 eingeführten Zugriffsbeschränkungen
automatisch immer dann, wenn die Zugriffsrechte auf die entsprechenden
Ereignismeldungen in der Hauptzugriffskontrollein richtung, die den
Zugriff auf Informationen im Managementobjektbaum kontrolliert,
verändert
werden.