-
Gebiet der Erfindung
-
Diese
Erfindung ist auf ein Verwaltungs- oder Management-System für ein Kommunikationsnetzwerk und
insbesondere auf ein Zugriffskontrollsystem gerichtet, bei dem Privilegien
zu Systemressourcen zugeordnet werden, wenn sie erkannt werden.
-
Stand der Technik
-
Viele
der heutigen intelligenten Netzwerkelemente (NE's) haben die Fähigkeit, ihre Konfiguration
an ein externes Verwaltungssystem entweder auf Anforderung oder
autonom zu berichten, wenn Änderungen
eintreten. Intelligente NE's
sind in jeder Hinsicht Software-gesteuert, von der Wartung zur Steuerung
bis zur Freigabe von Aktualisierungen.
-
Die
Verwaltung dieser NE's
erfordert ein robustes und äußerst effizientes
System, das ein großes
Volumen an Daten über
ein geographisch verteiltes Netzwerk hinweg verarbeiten kann. Netzwerk-Verwaltungswerkzeuge
laufen typischerweise auf einem PC oder Unix-Arbeitsstationen, und
sie ermöglichen
die Wartung, Überwachung
und Verwaltung der Elemente, die ein Netzwerk bilden. Dies ermöglicht es
Anbietern, schnellere Ansprechzeiten für Dienstekonfigurationen anzubieten
und kann Anrufe für
Kundendienst-Anforderungen verringern.
-
Wenn
Kunden-Übertragungsnetzwerke
wachsen, wächst
auch der Bedarf hinsichtlich der Anzahl von Benutzern an, die einen
Zugriff auf das System benötigen.
Das gesamte Kunden-Netzwerk kann nicht mehr länger zentral von einem einzigen
Punkt aus verwaltet werden, sondern die Notwendigkeit für eine verteilte Netzwerk-Verwaltung,
sowohl örtlich
als auch geographisch, wird zu einer zunehmenden Forderung.
-
Die
Definitionen einiger Ausdrücke,
die in dieser Beschreibung verwendet werden, werden als nächstes angegeben.
-
Eine
Komponente oder ein Objekt ist ein eingekapselter Teil eines Software-Systems mit einer
gut definierten Schnittstelle. Komponenten dienen als die Bausteine
eines Systems oder die Elemente einer Software-Teil-Liste, und sie
können
entweder generisch oder anwendungsspezifisch sein. Generische Komponenten dienen
als ein System-Skelett, das die Code-Wiederbenutzung und die schnellere
Entwicklung neuer Fähigkeiten
ermöglicht.
-
Ein
Prozess ist ein in sich abgeschlossenes Paket von Daten und ausführbaren
Prozeduren, die mit diesen Daten arbeiten, vergleichbar zu einer
Aufgabe in anderen bekannten Systemen. Prozesse können zur Implementierung
von Objekten, Modulen oder anderer Datenabstraktionen höherer Ebene
verwendet werden. Objekte führen
eine Wechselwirkung -über
Funktions- und Prozedur-Aufrufe
aus.
-
Eine
Funktion ist eine Aktion, die ein Benutzer in dem Verwaltungssystem
verwenden, verarbeiten oder aktivieren kann.
-
Eine
Ressource ist ein Teil von Hardware oder ein Dienst in dem betreffenden
Netzwerk, der von dem Netzwerk-Verwaltungssystem verwaltet wird.
-
Benutzer
und Benutzergruppen sind die Menschen als Benutzer dieser Verwaltungssysteme.
Benutzer mit ähnlichen
Rechten werden in einer Benutzergruppe zusammengeführt.
-
In
einem verteilten Mehrprozess-Netzwerkverwaltungsprodukt ist es kritisch,
den Zugriff auf Funktionen und Ressourcen zu kontrollieren. In einem
traditionellen System sollte ein Benutzer auf bestimmte Rechte an
bestimmten Verzeichnissen eines zentralen Computersystems beschränkt sein.
Derzeit beinhaltet ein Sicherheits-Zugriff die Zugriffskontrolle
an ein Netzwerk, eine Mehr-Plattform-/verteilte Benutzer-Verwaltung
und eine Kontrolle über
alle in der Welt zum Schutz von bestimmten Prozessen und Daten auf
einem kritischen verteilten System. Es ist zu erkennen, dass dieser
Art der Kontrolle komplex ist und viele Facetten aufweist.
-
Ein
Netzwerk-Verwaltungsprodukt stellt einen Zugriff auf einen weiten
Bereich von Ressourcen bereit und führt viele unterschiedliche
Arten von Funktionen aus. Jede Funktion kann auf unterschiedliche
Ressourcen-Typen anwendbar sein. Zusätzlich können die Regeln dafür, wie Benutzer
Rechte erhalten, sehr kompliziert sein. Ein Benutzer kann die Recht
eines anderen Benutzers erben oder es kann ein Konzept von Benutzergruppen
geben. Es würde
nicht vorteilhaft sein zu fordern, dass jede verteilte Komponente
alle diese Kompliziertheiten für
die „Zusatz"-Aufgabe der Bereitstellung
einer Zugriffskontrolle versteht.
-
Zugriffskontrollsysteme
hängen
typischerweise davon ab, dass Kenntnisse über alle Zugriffs-kontrollierbaren
Ressourcen vorliegen, bevor Privilegien Benutzern/Gruppen zugeordnet
werden können.
Viele heutige Zugriffskontrollsysteme erfordern es, dass die Kenntnis
von Benutzerrechten in alle verteilten Komponenten eingebettet wird,
die eine Zugriffskontrolle erfordem. Andere Zugriffskontrollsysteme
erfordem eine festgelegte Kenntnis von Ressourcen und/oder Funktionstypen
in einer zentralen Aufteilungsmaschine.
-
Beispielsweise
hat die Zugriffskontrolle bei Unix einen festen Satz von Funktionen
und Ressourcen, d. h. Lesen, Schreiben und Ausführen von Dateien, während Unix
Vorgabewerte für
neue Dateien bereitstellt. Kerberos ist ein Authentifizierungsdienst
für offene
Netzwerksysteme, der einen zentralisierten Ticket-Verteilungsagenten
verwendet, das „Schlüsselverteilungs"-Zentrum.
-
Es
ist jedoch nicht immer möglich,
Kenntnisse über
alle Ressourcen zu haben, die eine Zugriffskontroll-Initialisierung
erfordern. In manchen Systemen ist es nicht möglich, alle Ressourcen zu irgendeiner
Zeit abzufragen. Dennoch können
diese Systeme immer noch eine Zugriffskontrolle auf der Grundlage
von einzelnen Ressourcen erfordern.
-
Regel-basierte
Systeme können
Zugriffskontroll-Ressourcen in Szenarien bereitstellen, bei denen nicht
alle Ressourcen verfügbar
sind. Diese Systeme wenden Regeln auf Ressourcen-Eigenschaften an,
um Privilegien festzulegen, doch ermöglichen es diese Systeme nicht,
dass Regeln auf einer Grundlage pro Ressource übersteuert werden und Änderungen
beibehalten werden, insbesondere nach einer Kenntnis, dass die Ressource
verlorenging. Beispielsweise „vergisst" Unix Datei-Berechtigungen,
wenn eine Datei gelöscht
und neu erzeugt wird.
-
Ein
weiteres Beispiel eines Zugriffskontrollmechanismus ist in der Veröffentlichung „Integrating
Security in Corba based Object Architectures", Deng et al., Security and Privacy,
1995, Proceedings, IEEE Symposium, Oakland, CA, USA, 8.–10. Mai
1995, Los Alamitos, CA, USA, IEEE Computer Soc., Seiten 50–61, angegeben.
In diesem Beispiel ist jedoch nicht vorgesehen, dass eine dynamische
Ressourcen-Erkennung Unterschiede in der Ressourcen-Liste hervorrufen
kann, die in Zugriffs-Kontrolllisten durch die gesicherten ORB-Knoten
vorliegt.
-
Zusammenfassung der Erfindung
-
Gemäß der Erfindung
wird ein System und Verfahren geschaffen, da die in den Ansprüche 1 bzw.
4 definierten Merkmale aufweist.
-
Die
Verwendung der vorliegenden Erfindung ermöglicht es Netzwerk- und Diensteanbietern,
ein flexibles und wenig Verwaltung erforderndes Zugriffskontrollsystem
für Produkte
zu entwerfen, die keine Kenntnis von allen kontrollierbaren Ressourcen
zu irgendeiner Zeit haben können.
Dies ist insbesondere für
Netzwerk-Verwaltungssysteme mit einer stark verteilten Ressourcen-Kenntnis
wertvoll.
-
Das
Zugriffskontrollsystem (ACS) der bevorzugten Ausführungsform
der vorliegenden Erfindung hat zumindest die folgenden Vorteile
gegenüber
bekannten Systemen.
-
Das
ACS kann Ressourcen graduell mit der Zeit erkennen oder entdecken.
Während
Ressourcen erkannt werden, werden Regeln angewandt, um „Anfangs"-Privilegien festzulegen.
Das ACS ermöglicht
es, dass Anfangs-Privilegien mit der Granularität einer einzigen Ressource übersteuert
und beibehalten werden. Diese Kontrolle hängt nicht von der derzeitigen
Kenntnis der Ressourcen in dem System insgesamt ab.
-
Das
ACS behält
eine Kenntnis der Ressourcen bei, um konfigurierte Privilegien beizubehalten,
selbst wenn das System insgesamt diese Kenntnis nicht beibehält.
-
Die
Partitionsmaschine gemäß einer
bevorzugten Ausführungsform
der vorliegenden Erfindung wickelt die Speicherung von Regeln für Benutzerrechte,
d. h. Benutzergruppen, die Vererbung von Rechten usw. ab. Die Partitionsmaschine
speichert dreidimensionale Matrizen von Benutzern, Funktionen und
Ressourcen, wobei jede Matrix lediglich Funktionen enthält, die
auf die Ressource in dieser Matrix Anwendung finden können. Eine
verteilte Komponente kündigt
ihre Funktionen und Ressourcen in einer bestimmten Matrix in der
Partitionsmaschine an. Eine Komponente, die eine Zugriffskontrolle
erfordert, fordert Benutzerrechte gegen die Funktionen und Ressourcen,
die sie unterstützt,
von der Partitionsmaschine an.
-
Die
Partitionsmaschine ist verteilt und unterhält eine Trennung von Angelegenheiten
von dem Rest der verteilten Komponenten. Auf diese Weise kann eine
verteilte Anwendung schnell erweitert werden, ohne dass zusätzliche
Arbeit zur Verwaltung von Benutzerrechten für jede neue Komponente erforderlich
ist, die einen Zugriff auf neue Funktionen oder Ressourcen bereitstellt.
Sie ergibt weiterhin eine zentralisierte Verwaltung, was zu einer
billigeren und saubereren Weise zur Verwaltung der Zugriffskontrolle
führt.
-
Zusammenfassend
ist festzustellen, dass die vorliegende Erfindung in vorteilhafter
Weise ein Zugriffskontrollsystem für ein Kommunikationsnetzwerk
bereitstellt, das vollständig
oder teilweise die Nachteile bekannter Systeme beseitigt. Tatsächlich ergibt
die vorliegende Erfindung ein Zugriffskontrollsystem, bei dem Privilegien
zu Systemressourcen zugeordnet werden während diese erkannt werden,
und die mit der Zeit gewonnene Zugriffs-Kontrollinformation wird
beibehalten, selbst wenn die Kenntnis über die Ressourcen verloren geht.
Dies stellt sicher, dass die Ressourcen korrekte Privilegien beibehalten.
Weiterhin stellt die vorliegende Erfindung eine generische Partitionsmaschine
bereit, die so ausgelegt ist, dass sie flexible Zugriffskontrollmerkmale
für eine
verteilte Anwendung bereitstellt, wobei die generische Partitionsmaschine
für verteilte
Komponenten Dienste bereitstellt, die es der Komponente ermöglichen,
in effizienter Weise den Zugriff auf ihre Ressourcen und Funktionen
zu kontrollieren. Diese generischen Partitionsdienste sind derart
ausgelegt, dass jede Komponente kein Verständnis der Partitionsregeln
haben muss und dass die Partitionsmaschine nicht irgendwelche speziellen
Merkmale der Ressourcen oder Funktionen verstehen muss. In vorteilhafter
Weise ergibt die vorliegende Erfindung eine Partitionsmaschine,
die Benutzerrechte verwaltet und es weiterhin einzelnen verteilten
Komponenten ermöglicht,
beliebige Ressourcen, Ressourcen-Typen und Funktionen bereitzustellen.
-
Daher
ergibt die vorliegende Erfindung eine Sicherheitsverwaltung mit
Einrichtungen zur Kontrolle des Zugriffs auf die Ressourcen eines
Netzwerkes, bei der Privilegien dynamisch Systemressourcen zugeteilt
werden, wenn diese erkannt werden. Es wird weiterhin eine Partitionsmaschine
geschaffen, die die Verantwortung für die Verwaltung von Benutzerrechten übernimmt,
während
es immer noch einzelnen verteilten Komponenten möglich ist, willkürlich Ressourcen,
Ressourcen-Typen und Funktion bereitzustellen, worüber ebenfalls
erst zur Laufzeit entschieden wird, wenn dies erwünscht ist.
-
Kurze Beschreibung der
Zeichnungen
-
Ausführungsbeispiele
der vorliegenden Erfindung werden nunmehr unter Bezugnahme auf die
beigefügten
Zeichnungen beschrieben, in denen:
-
1 ein
Blockschaltbild einer integrierten Netzwerkverwaltung (INM) (Stand
der Technik) ist;
-
2A die
logische geschichtete Architektur der Kunden-Netzwerk-Verwaltungs-(CNM-)Architektur zeigt;
-
2B ein
Blockschaltbild der CNM ist, das das Zugriffskontrollmerkmal dieser
Erfindung erläutert;
-
3 das
Konzept von Zugriffskontrollmatrizen gemäß der Erfindung erläutert;
-
4 die
AC-Schnittstellen gemäß der Erfindung
zeigt;
-
5A ein
Ablaufdiagramm ist, das zeigt, wie AC-Komponenten auf eine BB-Klientenabfrage ansprechen,
um ihre Zugriffsprivilegien zu bestimmen;
-
5B ein
Ablaufdiagramm ist, das zeigt, wie der BB-Kern mit den AC-Komponenten in Wechselwirkung
tritt, um Privilegien an einer regulären BB-Operation durchzusetzen;
-
6A ein
Blockschaltbild einer Zugriffskontroll-Benutzerschnittstelle (ACUI)
ist;
-
6B ein
Blockschaltbild ist, das den Datenfluss zwischen der ACUI- und der
AC-Bibliothek zeigt;
-
7 ein
Ablaufdiagramm ist, das ACUI-Initialisierungs-Wechselwirkungen zeigt;
-
8A ein
Ablaufdiagramm ist, das zeigt, wie neue Benutzer hinzugefügt werden;
-
8B ein
Ablaufdiagramm ist, das zeigt, wie Benutzer gelöscht werden;
-
9 ein
Ablaufdiagramm ist, das eine Mehrfach-BB-Matrixauswahl und Population
zur Modifikation einer AC-Matrix UI zeigt; und
-
10 ein
Ablaufdiagramm ist, das zeigt, wie Benutzerberechtigungen aufgebaut
werden.
-
Beschreibung der bevorzugten
Ausführungsform
-
Nachfolgend
wird eine allgemeine Beschreibung eines Netzwerk-Verwaltungssystems, auf das die vorliegende
Erfindung anwendbar ist, für
eine weitere Definition der in dieser Beschreibung verwendeten Terminologie
gegeben.
-
Das
integrierte Netzwerk-Verwaltungs-(INM-)Breitband-Produkt des Anmelders
ist ein offenes Mehr-Technologie- und Mehr-Hersteller-System für eine verteilte
Elementen-Verwaltung. Ein Beispiel eines Blockschaltbildes der INM
ist in 1 gezeigt, es ist jedoch verständlich, dass die Erfindung
auf andere verteilte Netzwerk-Verwaltungs-Architekturen anwendbar
ist und dass sie nicht ausschließlich auf Telekommunikationsnetzwerke
anwendbar ist.
-
Das
INM-Breitband-Produkt 1 beruht auf einer gemeinsamen Objekt-Anforderungs-Vermittler-Architektur-(CORBA-)Technologie
und umfasst drei Komponenten: eine graphische Benutzerschnittstelle
(GUI) 2, Anwendungs-Bausteine (BB) 3 und Element-Steuerungen,
die verwaltete Objektagenten (MOA) 4 für Operationssteuerungen (OPC) 5 sein
könnten.
-
Die
GUI 2 umfasst zwei graphische Benutzerschnittstellen, nämlich einen
graphischen Netzwerk-Editor (GNE) 6 und einen graphischen
Netzwerk-Browser (GNB) 7, der Funktionen liefert, wie z.
B. die Überwachung,
die Verbindungs-Bereitstellung,
die Software-Zustellung, die Inventur- und Betriebsverhaltens-Überwachung. 1 zeigt
eine Fehler-Benutzerschnittstelle (UI) 8, eine Verbindungs-UI 9 und
eine Inventur-UI 10, die jeweils die Funktionen ausführen, die durch
ihren jeweiligen Namen angegeben sind.
-
Die
Anwendungs-BB's 3 sind
Software-Komponenten, die eine Funktionalität an die GUI über die
offene Normen-basierte CORBA-Schnittstelle 15 bereitstellen.
-
Ein
BB-Server ist ein Teil von Hardware, der Dienste bereitstellt, und
ein BB-Klient ist ein Teil von Software, der die Möglichkeiten
(Dienste) nutzt, die von einem BB-Server bereitgestellt werden.
-
Die
BB's des INM-Breitband-Produktes
der Fa. Nortel schließen
beispielsweise Folgendes ein: Fehlerverwaltung BB 11, Konfigurationsverwaltung
BB 12, Verbindungsmöglichkeits-Verwaltung
BB 13 und Betriebsverhaltens-Verwaltung BB 14.
Die Bezugsziffer 16 zeigt einen als Klienten ausgelegten
BB, der zu der INM für
eine bestimmte Anwendung hinzugefügt werden könnte.
-
MOA's 4 sind
Netzwerkelement-Verwaltungssoftware-Einheiten, die Informationen
von dem Netzwerk unter ihrer Kontrolle konsolidieren und anpassen.
MOA's 4 sind
für verschiedene
Technologien vorgesehen, um mit dem verwalteten Netzwerk unter Verwendung
von TL1, OSI (Offenes Kommunikationssystem)-, CMIP (Gemeinsames
Verwaltungs-Informationsprotokoll-), SNMP (Vereinfachtes Netzwerk-Verwaltungsprotokoll)- oder
dem XDR (Externes Datendarstellungs-) Protokoll zu kommunizieren,
wobei dies proprietäre
Protokolle sind. Die MOA's 4 sind
CORBA-basiert, was die Entwicklung von INM-kompatiblen MOA's durch Dritte erleichtert.
-
Der
SONET-MOA 21 ergibt eine Anpassung und Vermittlung zwischen
einem SONET-Teilnetzwerk und den BB's 3. Er stellt Ausrüstungen,
wie z. B. die OC-3-Express-,
Titan-, DV45-Ausrüstung
usw. über
OPC 5 dar. Der Vektor-MOA 22 und der Passport-MOA 23 ergeben
eine Vermittlung zwischen dem ATM-Netzwerk und den INM-BB's 3. Die
MOA's 24 bis 25 sind
in diesem Beispiel Hersteller-MOA's, und sie stellen eine Schnittstellenverbindung
mit den INM-BB's 3 unter
Verwendung proprietärer
Schnittstellen an die NE- oder Teilnetzwerk-Steuerungen her.
-
Die
MOA's 4 verwalten
das Netzwerk 20 oder Teilnetzwerke, Netzwerkelemente (NE),
Verbindungsstrecken und in Gerätegestellen
angeordnete Ausrüstungen.
Bellcore-, ISO-(Internationale Normungsorganisation-) und OSI-Normen
spezifizieren einen Satz von generischen Zuständen, die Netzwerk-Objekte,
die einen Teil eines Kommunikationsnetzwerkes bilden, annehmen können. Die
Intention dieser generischen Zustände besteht darin, es Netzwerkobjekten,
die diese Normen erfüllen,
zu ermöglichen,
durch Hersteller-unspezifische Netzwerk-Verwaltungswerkzeuge unterhalten
zu werden. Obwohl die Normen eine textuelle Definition der Zustände liefern,
bleibt die graphische Darstellung der Permutation und Kombination
von Zuständen den
Entwicklern der Netzwerk-Verwaltungswerkzeuge überlassen. Es gibt weiterhin
eine beträchtliche „Mehrwert"-Funktionalität in Netzwerkausrüstungen,
die nicht durch Normen abgedeckt ist, jedoch verwaltet werden sollte.
-
Die
Objekt-Anforderungs-Vermittlerschnittstelle, die allgemein bei 15
gezeigt ist, wird als eine verteilte Computer-Infrastruktur verwendet,
um Anwendungen zu schaffen, die ohne Weiteres mit der CORBA-(Gemeinsame
Objekt-Anforderungs- Vermittlungsarchitektur-)Umgebung
mit minimalen Technologie-Abhängigkeiten
zusammenwirken. Der Block 26 zeigt generisch Dienste, die
von CORBA bereitgestellt werden können, wie z. B. Ereignis, Lebenszyklus,
Transaktion, Gleichzeitigkeits-Steuerung, Sicherheitsdienste usw.
-
Das
INM-Breitbandprodukt 1 verwendet die Philosophie „das Netzwerk
ist die Datenbank" und
kann die heutige Technologie nutzen, um eine genaue aktuelle Ansicht
der Konfiguration aller Netzwerkelemente zu gewinnen, die sie kontrolliert.
Eine objektorientierte Datenbank 27 ist jedoch in die INM-Architektur
für die
ständige
Speicherung von Objekten aus der Netzwerk-Ebene eingeführt, die
nicht von dem Netzwerk abgeleitet oder in diesem gespeichert werden
können.
-
Schließlich verwaltet
ein Element-Verwaltungssystem (EMS) 20 Anwendungen und
die Plattformen, auf denen sie ablaufen. Das EMS 20 umfasst
vier Arten von Verwaltungsdisziplinen: Verfügbarkeit, Einsatz, Anwendungsverwaltung
und Sicherheitsverwaltung.
-
Die
Kundennetzwerk-Verwaltung (CNM) des Anmelders baut sich in die INM
BB-Infrastruktur
ein, wobei neue BB's
und Benutzer-Schnittstellen zu dem in 1 gezeigten
INM-Produkt hinzugefügt
werden. Bei diesen Aktualisierungen und Aufrüstungen ergibt die CNM Web-basierte
physikalische Netzwerk-Anzeige- und Fehlerverwaltungseinrichtungen,
Diensteanzeige- und Fehlerverwaltungseinrichtungen, eine Benutzerschnittstelle
mit geringem Aufwand für
mehrfache Plattformen, eine Sicherheits- und Zugriffssteuerung sowohl
an der Benutzerschnittstelle als auch an Maschinen-Schnittstellen,
kundenspezifische Befehle und URL-Verknüpfungseinrichtungen, die für die Werbung,
Diensteanforderungen, Berichtszustellung usw. verwendet werden können. Die
CNM-Architektur ist weiterhin so ausgelegt, dass sie die nächste Generation
von Netzwerken und Netzwerkverwaltungssystemen unterstützt.
-
2A zeigt
eine Schichtansicht der CNM-Architektur, wobei außerdem die
Zugriffskontroll-Schnittstellen gemäß dieser Erfindung gezeigt
sind. Die CNM-Architektur
beruht auf dem geschichteten Telekommunikations-Verwaltungsnetzwerk-(TMN-)Modell
der Netzwerkverwaltung unter Einschluss einer Elementen-Schicht 5,
einer Netzwerk-Schicht 60, eine Dienste-Schicht 50 und
einer Benutzerschnittstelle 28. Die CNM-Benutzerschnittstelle 28 verwendet
Einrichtungen, die sowohl von den Dienst- als auch den Netzwerk-Schichten
bereitgestellt werden, weil sie in der Lage ist, Informationen bei
beiden Abstraktionsebenen anzuzeigen.
-
Die
Benutzerschnittstelle zerfällt
in zwei Schichten. Die Zustandsschicht 40 speichert Zustandsinformationen
und besteht aus einer Ansammlung von Prozessen, die mit den BB's zusammenwirken.
Die Präsentationsschicht 30 verwendet
die Dienste der Zustandsschicht 40 und ist für die Präsentation
von Daten und die direkte Benutzer-Wechselwirkung verantwortlich.
Das CSS (CORBA Security System) 29 ist eine Bibliothek, die
von jedem Benutzer der Schnittstelle und von jedem BB verwendet
wird.
-
Die
nachfolgende Tabelle 1 gibt die Namen und die Zuständigkeit
jeder in 2A gezeigten Komponente wieder.
-
Tabelle
1: Komponenten der hohen Ebene der CNM
-
2B ist
ein Blockschaltbild der CNM 100, das die Haupt-Kommunikationsprozesse
unter Einschluss des ACUI-Prozesses 34 zeigt. Die Zugriffskontroll-Datenbank,
die CORBA-Sicherheitsdienste (CSS) 29 und der AMBB (Anwendungs-Verwaltungs-BB)
sind hier aus Gründen
der Klarheit nicht gezeigt. Die Zwischenverbindungen zwischen der
Zugriffskontrollschnittstelle ACUI 34 und anderen Komponenten
der CNM sind mit gestrichelten Linien gezeigt und werden unter Verwendung
verschlüsselter
CORBA-Protokolle realisiert. Die grauen Blöcke zeigen die Art von Daten
an, die zwischen den jeweiligen Komponenten fließen.
-
Wie
dies in 2B gezeigt ist, ist jeder Zugriffs-kontrollierte
BB für
die Verwaltung der Zugriffskontrolle bezüglich der Ressourcen und Funktionen
verantwortlich, die er bereitstellt. Dies wird durch eine verallgemeinerte
Steuer- oder Kontrollschnittstelle 70 gezeigt, die in Schwarz
an den jeweiligen Zugriffs-kontrollierten
BB gezeigt ist und das Zugriffskontroll-Merkmal gemäß der Erfindung
anzeigt. Dieses Zugriffskontroll-Merkmal ermöglicht es dem Administrator
des Netzwerkes, zu beschränken,
was Benutzer sehen und tun können.
-
Jeder
BB unterstützt
einen Satz von verallgemeinerten Zugriffskontrollschnittstellen
und ergibt eine ständige
Speicherung für
die Zugriffskontrollinformation, wie dies in Verbindung mit 4 gezeigt
und beschrieben wird. Als Ergebnis kann jeder BB unabhängig von
irgendeinem zentralisierten Zugriffskontrollsystem arbeiten; Zugriffskontrolldaten
werden nahe an der Stelle gespeichert, wo sie benötigt werden,
und sie können in
BB-spezifische Datenbankstrukturen integriert werden, wenn dies
sinnvoll erscheint.
-
Die
Einfügung
der Zugriffskontrolle in jeden BB ergibt mehrere Vorteile gegenüber alternativen
Lösungen.
-
Zunächst können die
BB-Klienten vereinfacht werden. In vielen Fällen müssen BB-Klienten die Zugriffskontrolle nicht
verstehen, um ein Zugriffs-kontrolliertes Merkmal bereitzustellen.
Beispielsweise kann ein Klient alle verfügbaren NE-Informationen von
einem RMBB (Ressourcen-Verwaltungs-BB) 61 anfordern und empfängt lediglich
Daten für
diejenigen NE's,
für deren
Betrachtung der Benutzer Privilegien hat.
-
Die
Skalierbarkeit des Netzwerkes wird verbessert. Zugriffskontroll-Daten
und Rechenvorgänge
werden über
die BB's verteilt,
was eine Arbeitsteilung ermöglicht.
Zusätzlich
wird eine Datenfilterung an den BB ausgeführt, um eine Zugriffskontrolle
durchzusetzen, wodurch der Umfang der Mitteilungsübermittlung
an Klienten verringert wird.
-
Weiterhin
können
CORBA-Schnittstellen für
die Netzwerk-Verwaltung verwendet werden, ohne dass sie sich der
Zugriffskontrolle bewusst sind, was eine wichtige Vereinfachung
für die
Schnittstellen darstellt. Die Zugriffskontrolle wird an der Maschinenschnittstelle
durchgesetzt, so dass Anbieter partitionierte Datenströme an ihre
Kunden verkaufen können.
-
Die
Zugriffskontrolldaten werden unter Verwendung von AC-Matrizen gespeichert
und unterhalten, die über
das gesamte System hinweg verteilt sind. Eine AC-Matrix ist eine
mit Namen versehene dreidimensionale Matrix von Bits, die die Zugriffskontroll-Informationen
darstellen. 3 zeigt eine Zugriffskontrollmatrix 35.
Die Achsen der Matrix sind Funktionen (Achse a), Ressoucen (Achse
b) und Benutzergruppen (Achse c). Die Matrix 35 wird durch
Funktionen 17, Ressourcen 18 und Benutzer/Gruppen 19 beschrieben.
Die Funktions- und Ressourcen-Dimensionen 17 und 18 werden örtlich durch
jeden BB spezifiziert, doch wird die Benutzergruppen-Dimension durch
die ACUI 34 und das CORBA-Sicherheitssystem (CSS) 29 kontrolliert.
Jeder BB kann null oder mehr Matrizen unterhalten, doch unterhält er üblicherweise
eine Matrize.
-
Ein
Benutzer stellt einen einzelnen Benutzer des Systems, üblicherweise
eine Person, dar. Benutzer werden zusammen in Benutzergruppen gruppiert,
die Gemeinsamkeiten hinsichtlich der Zugriffskontrolle darstellen,
d. h. Benutzer haben keine Zugriffskontrolle, Benutzergruppen haben
dies. Gruppen sind in Bäumen organisiert,
die den Umfang des Einflusses darstellen. Beispielsweise kann der
Benutzer AB zu der CD-West-Gruppe gehören, die zu der CD-Gruppe gehören kann,
die zu der Wurzel-Gruppe gehören
kann (dem Anbieter). Passworte werden pro Benutzer zugeordnet. Benutzer
können
hinzugefügt,
verschoben und aus dem System entfernt werden, ohne die AC zu ändern.
-
Eine
Ressource in dem Beispiel des Telekommunikationsnetzwerkes 100 nach 2B ist
eine Ressource, die eine Zugriffskontrolle erfordert. Ein Beispiel
von Ressourcen sind die NE's
oder die Layouts.
-
Eine
Funktion in dem Beispiel des Telekommunikationsnetzwerkes 100 nach 2B ist
eine Dimension einer AC-Matrix, die eine Zugriffs-kontrollierte
Funktion in dem System darstellt. Funktionen könnten beispielsweise Alarmberichte,
die Betriebsverhaltensüberwachung
usw. sein.
-
Eine
Matrix-Scheibe ist ein Teil einer Zugriffskontrollmatrix. Ein Beispiel
einer Scheibe ist die Liste von Ressourcen, für die eine Benutzergruppe und
eine Funktion Rechte hat. Während
der Laufzeit werden Matrix-Scheiben von jedem BB verwendet, um zu
kontrollieren und zu steuern, an welchen Ressourcen Benutzer Funktionen
ausführen
können.
Diese Matrix-Scheiben werden außerdem
von UI's verwendet,
um Menüs
zu aktualisieren, wenn sich Zugriffsprivilegien ändern.
-
Das
AC-System gemäß der Erfindung
ist so ausgelegt, dass es generisch ist. Matrizen, Ressourcen und
Funktionen werden von jedem BB in einer vorgeschriebenen Weise spezifiziert.
Die AC-Komponenten müssen
nicht verstehen, wie jede Matrix verwendet wird oder welche Arten
von Ressourcen und Funktionen vorhanden sind; sie behandeln alle
Matrizen, alle Ressourcen und alle Funktionen in der gleichen Weise.
-
Matrizen
und Funktionen werden dem ACUI-Benutzer mit einem Namen identifiziert.
Benutzergruppen haben ebenfalls Namen und einige Zeichenketten-Eigenschaften. Ressourcen
haben Namen und einige Zeichenketten-Eigenschaften, die dafür vorgesehen
sind, den Benutzen bei dem Durchsuchen oder dem Filtern einer großen Anzahl
von Ressourcen zu unterstützen.
-
Die
potentielle Größe von AC-Matrizen
beeinflusst, wie Daten innerhalb des AC-Systems verwaltet werden. Beispielsweise
lässt die
CNM 100 eine maximale Größe jeder Achse von 5.000 für Benutzer
(1.000 gleichzeitig aktive Benutzer), von 2.000 für Benutzergruppen
(800 Gruppen können
gleichzeitig aktiv sein), von 10 für Funktionen und von 10.000
für Ressourcen
zu. Dies führt
zu einer Matrixgröße von 200.000.000
Bits (24MB1718). Diese Daten sind zu groß, um in einem Speicher gehalten
zu werden, so dass die Matrizen unter Verwendung von Techniken mit
verteilter Matrix gespeichert werden, insbesondere dann, wenn sie
in einem Cache-Speicher
gespeichert werden oder Daten in einem ständigen Speicher unterhalten
werden, bis sie benötigt
werden.
-
Es
gibt Fälle,
in denen zwei oder mehr BB's
das Führen
oder die Unterhaltung einer einzigen AC-Matrix gemeinsam ausführen. Dies
ergibt sich, wenn mehrfache BB's
an den gleichen Ressourcen, jedoch in unterschiedlichen Funktionen
interessiert sind. Ein Beispiel sind der RMBB 61 und der
FMBB 63, die beide mit NE als Ressourcen arbeiten, jedoch
unterschiedliche Funktionen haben.
-
Diese
Art von AC-Matrix, die von mehr als einer BB verwendet wird, wird
als Mehrfach-BB-Matrix bezeichnet. Jede BB unterhält ihren
eigenen Teil in der AC-Matrix,
der als Teil-Matrix bezeichnet wird. Wenn der Benutzer mit der Matrix
in der ACUI arbeitet, wird die gesamte Matrix als eine einzige Einheit
dargeboten. Zu diesem Zweck erzeugt die ACUI 34 kombinierte
Ressourcen- und Funktionslisten für die UI.
-
Eine
vollständige
Matrix enthält
alle Funktionen für
einen bestimmten Ressourcentyp. Teilmatrizen enthalten eine Teilmenge
aller der Funktionen für
einen bestimmten Ressourcentyp. Die Kombination aller Teilmatrizen
ergibt eine vollständige
Matrix.
-
Die
ACUI 34 ist dafür
verantwortlich, eine effiziente Möglichkeit zur Betrachtung und
zum Editieren der Zugriffskontroll-Daten bereitzustellen, die von
den BB's und dem
CSS 29 geliefert werden. Die Zugriffskontroll-Daten werden
außerdem
an der ACUI 34 in Matrizen, wie z. B. der Matrix 35 nach 3 dargestellt,
wobei die Ressourcen, Funktionen und Benutzergruppen ihre Dimensionen
sind.
-
Die
ACUI 34 ist weiterhin für
die Synchronisierung von Ressourcenlisten in Teilmatrizen verantwortlich. Es
ist sehr gut möglich,
dass die Ressourcenlisten in Teilmatrizen unterschiedlich sind,
selbst wenn sie an den gleichen Ressourcen interessiert sind. Beispielsweise
erkennt der RMBB 61 ein NE, wenn es zum ersten Mal angemeldet
wird, doch erkennt der FMBB 63 dieses NE erst dann, wenn
er einen Alarm hat, der wahrscheinlich wesentlich später eintritt.
Dieser Unterschied stellt kein Problem dar, sofern nicht die AC-Matrix
durch die ACUI geändert
wird. Während
Editiervorgängen
müssen
Teilmatrizen alle die gleichen Ressourcen haben. Um dies zu erleichtern,
sendet die ACUI die kombinierte Ressourcenliste, die sie konstruiert,
an alle eine Teilmatrix enthaltenden BB's. Die Teilmatrizen werden dann unter
Verwendung von Vorgabewerten in der erforderlichen Weise erweitert.
Dies erfolgt jedes mal dann, wenn der Benutzer eine Anforderung
für ein Editieren
einer Mehrfach-BB-Matrix abgibt, und dies wird weiter unten ausführlicher
anhand der 10 erläutert.
-
Ein
Trader 80 ist ebenfalls in 2B gezeigt.
Obwohl alle BB's
und alle Schnittstellen 70 mit dem Trader 70 kommunizieren,
sind diese Verbindungen nicht dargestellt, um diese Figur nicht
zu überladen.
-
Die
Tabelle 2 führt
einige der Matrizen und die entsprechenden Ressourcen und Funktionen
in der CNM auf.
-
-
Funktionen,
wie Alarmbestätigung,
Fem-Inventur, Login, Geräteebene-Graphikfunktionen
werden unter der Annahme einer Unterstützung in dem jeweiligen BB
realisiert. Aufgrund der Anzahl von Ressourcen in dem TMBB unterstützt dieser
mehrfache Einzel-BB-Matrizen, von denen jede Pfade von einer bestimmten Schicht
steuert.
-
Um
die Zugriffskontrolle zu unterstützen,
umfasst die bei 70 in 2B gezeigte
AC-Schnittstelle
zwei verallgemeinerte Zugriffskontroll-Schnittstellen, nämlich eine
Lese-Schnittstelle 55 und eine Verwaltungs-Schnittstelle 56. 4 zeigt
ein Blockschaltbild eines Server-BB, der allgemein mit 3A bezeichnet
ist und eines Klienten 3B, wobei weiterhin gezeigt ist,
wie die Komponenten eines BB kommunizieren. Ein Beispiel der Beziehung
zwischen dem Klienten und dem Zugriffs-kontrollierten BB ist die
Beziehung des FUIS 43 zum FMBB 63.
-
Der
BB 4A umfasst einen BB-Kern 53 zur Realisierung
der Funktionalität
des jeweiligen BB, eine Datenbank-(DB)Zugriffskomponente 54,
eine Datenbank 57 und zwei Zugriffs-Schnittstellen 55 und 56.
Die Blöcke 54 bis 65 bilden
die AC-Bibliotheks-Komponente 58.
-
Die
AC-Bibliothek 58 ist eine Sammlung von Software-Komponenten,
die an einen BB gebunden werden können, um sehr schnell eine
AC-Funktionalität
zu realisieren. Die Verwendung der Bibliothek ist nicht erforderlich,
um einen Zugriffs-kontrollierten
BB zu schaffen, verringert jedoch beträchtlich die Anstrengungen, die
hierfür
erforderlich sind.
-
Die
DB-Zugriffskomponente 54 ist eine Komponente, die eine
ständige
Speicherung in der DB 57 und die Zwischenspeicherung von
Zugriffskontroll-Informationen in einem Cash-Speicher verwaltet.
-
Die
Lese-Schnittstelle 55 ermöglicht es Klienten, wie z.
B. dem Klienten 3B, eine Liste von AC-Matrizen zu erhalten,
die der BB unterhält,
die Funktionen zu erhalten, die der BB jeder Matrix liefert, eine
Liste derjenigen Ressourcen zu erhalten, für die der Klient das Recht
hat, eine bestimmte Funktion auf diesen auszuführen und sich für eine Mitteilung
von Änderungen
an den Privilegien des Klienten zu registrieren. Die Verwaltungsschnittstelle 56 ist
eine verschlüsselte
CORBA-Schnittstelle, die es lediglich einer einzigen ACUI erlaubt, eine
Verbindung mit dem jeweiligen BB herzustellen. Sie ermöglicht es
der ACUI 34, die Liste von Ressourcen für jede von dem BB verwendete
Matrix zu erhalten, eine Scheibe einer Matrix mit zwei Dimensionen
zu erhalten, einen einzelnen Eintrag unter Angabe von drei Dimensionen
zu erhalten, eine Scheibe oder einen einzelnen Eintrag einer Matrix
einzustellen, eine Gesamt-Aktualisierung einer Ressourcenliste für mehrfache BB-Matrizen durchzuführen und
die BB über
einen gelöschten
Benutzer oder eine gelöschte
Benutzergruppe zu informieren.
-
Irgendwelche
dieser Komponenten können
durch den BB-Entwickler ersetzt werden, wenn dies wünschenswert
ist. Im Fall des TMBB 62 könnte beispielsweise die Datenbank-Zugriffskomponente 54 durch Kern-TMBB-Code
ersetzt werden, um ein Speichern von Zugriffskontroll-Informationen
innerhalb der vorhandenen Pfadverwaltungs-Datenbankschemas zu ermöglichen.
-
Die
Kommunikation zwischen der DB-Zugriffskomponente 54, dem
BB-Kern 53 und den Schnittstellen 55 und 56 erfolgt
in der durch die Pfeile gezeigten Weise, die mit den Buchstaben
A–F, a–h und 1–4 bezeichnet sind
und die als nächstes
ausführlich
erläutert
werden.
-
Matrix-Erzeugung:
Zu der Zeit, zu der ein BB zum ersten mal gestartet wird, bittet
der BB-Kern 53 die Datenbank-Zugriffskomponente 54,
die Matrizen, die sie benötigt,
mit den Funktionen und Ressourcen, die sie unterstützt, zu
schaffen, wie dies durch den Pfeil A gezeigt ist.
-
Ressourcen:
Der BB-Kern 53 kann eine Ressource immer dann hinzufügen oder
entfernen, wenn er sich dieser Ressource bewusst wird. Dies ist
durch den Pfeil B gezeigt.
-
Wenn
eine neue Ressource hinzugefügt
wird, wird die neue Scheibe durch Kopieren einer speziellen Scheibe
initialisiert, die die „Vorgabe-Ressource" darstellt. Diese
Scheibe ist von dem Anbieter in der ACUI 34 konfigurierbar
und gibt dem Anbieter eine vollständige Steuerung darüber, welche
Benutzer Zugriff auf welche Funktionen an einer neuen Ressource
haben können.
-
Als
eine Option kann der Kern-BB 53 angeben, dass eine neue
Ressource von der Zugriffssteuerung einer anderen Ressource initialisiert
werden sollte. Dies ist bei Kopieroperationen und der Simulation
der hierarchischen Zugriffskontrolle nützlich.
-
Das
Löschen
einer Ressource hat nur wenig Auswirkungen, weil die Zugriffskontrolle
die alten Berechtigungen erneut verwendet, wenn die Ressource zurückkommt.
Der BB-Kern 33 kann eine Ressource „vergessen", wenn dies die Art des jeweiligen BB
ist, weil die Datenbank-Zugriffskomponente 54 Ressourcen
beibehält,
die in der Vergangenheit hinzugefügt wurde.
-
Funktionen:
Der BB-Kern 53 kann weiterhin neue Funktionen hinzufügen, wie
dies durch den Pfeil C gezeigt ist. Wenn eine neue Funktion hinzugefügt wird,
werden Vorgabewerte aus dem Rest der Matrix berechnet. Neue Funktionen
würden
lediglich während
eines Aufrüstungs-Szenariums
auftreten, bei dem ein vorhandener BB aufgerüstet wird, um eine neue Funktion
zu unterstützen.
-
Benutzergruppen-Verbindungsdaten:
der BB-Kern 53 liefert eine Benachrichtigung (Pfeil D),
wenn eine Benutzergruppe eine Verbindung mit dem BB herstellt oder
diese trennt, um es der Datenbank-Zugriffskomponente 54 zu
ermöglichen,
eine Cache-Speicherung durchzuführen.
-
Benutzer-Privilegien:
Anfragen werden sowohl von dem BB-Kern 53 (Pfeil E) als
auch der Lese-Schnittstelle 55 (Pfeil 1) auf Anforderung
von dem BB-Klienten 3B (Pfeil G) an die DB-Zugriffskomponente 54 gerichtet,
um festzustellen, ob ein Benutzer ausreichende Privilegien hat,
um eine Funktion an einer Ressource durchzuführen.
-
Privilegien-Abfragen
weisen niedrige Kosten auf. Die Datenbank-Zugriffskomponente 54 verwendet Techniken,
wie zum Beispiel die Cache-Speicherung
und Hash-Tabellen, um ein O(1)-Betriebsverhalten sicherzustellen.
Der BB-Kern 53 und die Lese-Schnittstelle 55 registrieren
weiterhin Änderungen
an Benutzer-Privilegien unter Verwendung eines Beobachter-Musters.
Dies ermöglicht
es, dass Ereignisse für
BB-Klienten erzeugt werden, wenn Ressourcen zu Benutzer-Privilegien
hinzugefügt
oder von diesen entfernt werden.
-
Die
DB-Zugriffskomponente 54 informiert den BB-Kern 53 und
die Lese-Schnittstelle 55 über die
Ausbildung der Benutzer-Privilegien, wie dies durch die Pfeile F
beziehungsweise 2 gezeigt ist. Benutzerprivileg-Mitteilungen werden
weiterhin an den Kern-BB 53 und die Lese-Schnittstelle 55 geliefert,
wenn sich Berechtigungen ändern.
In manchen Fällen
löst eine
Benachrichtigung an den Kern-BB die Simulation von Ereignissen durch
den BB (wie Registrierung, De-Registrierung)
aus, sodass Klienten des BB die Effekte der Berechtigungsänderung
sehen.
-
Matrix-Abfragen
durch Klienten: Die Lese-Schnittstelle 55 führt direkte
Abfragen nach Matrix-Daten (Pfeile G und 3) auf Anforderung von
einem Klienten aus.
-
Matrix-Information
an Klienten: Als Antwort auf die Matrix-Anfragen liefert die DB-Zugriffskomponente 54 dem
Klienten-BB über
die Lese-Schnittstelle 55 eine Liste von AC-Matrizen zurück, die
der BB 3A führt, sowie
die Liste von Funktionen, die der BB für jede Matrix bereitstellt.
Weiterhin erhält
die Lese-Schnittstelle 55 eine Liste von Ressourcen, an
denen der BB-Klient 3B das Recht hat, eine bestimmte Funktion
zu verwenden, Pfeile G und 4.
-
Die
Lese-Schnittstelle 55 ermöglicht es der ACUI 34,
Zugriffskontrolldaten zu sehen und zu modifizieren (editieren),
wie dies durch die Pfeile H und a gezeigt ist.
-
Hinzufügung/Löschung von
Benutzern/Benutzergruppen: Die ACUI 34 kann die Hinzufügung/Löschung von
Benutzern/Gruppen anfordern und Benutzer und Benutzergruppen über die
Lese-Schnittstelle 55 hinzufügen, wie dies durch die Pfeile
H und b gezeigt ist.
-
Wenn
eine neue Gruppe hinzugefügt
wird, ermöglicht
die neue Matrix-Scheibe keinerlei Funktion an irgendeiner Ressource.
Ein zusätzlicher
Vorteil diese Lösung
besteht darin, dass alle die Matrizen in dem System weder eine Erweiterung
noch eine Änderung
erfordern. Lediglich wenn eine Matrix nachfolgend editiert wird
und dem neuen Benutzer eine Berechtigung erteilt wird, ändert sich
diese Matrix. Als Nebenbemerkung sei festgestellt, das wenn neue
Benutzer hinzugefügt
werden, sie unmittelbar die Berechtigungen ihrer Eltern-Gruppe erhalten.
-
Vorgaben:
Die ACUI 34 konfiguriert Zugriffskontroll-Vorgaben über die
Lese-Schnittstelle
(Pfeile H und c), jedes mal dann, wenn eine neue Matrix geschaffen
wird oder eine Ressource zu dem System hinzugefügt wird.
-
Matrix-Abfrage
durch die ACUI: Die ACUI 34 fordert Matrix-Abfragen von
dem DB-Zugriff 54 über die Verwaltungsschnittstelle 56 an,
wie dies durch die Pfeile I und d gezeigt ist.
-
Als
Antwort auf die Matrix-Abfragen durch ACUI 34 empfängt die
Verwaltungsschnittstelle 56 die Liste von Ressourcen für jede Matrix,
die von dem BB verwendet werden, wobei einer Scheibe einer Matrix
zwei Dimensionen gegeben werden, oder einem einzelnen Eintrag drei
Dimensionen gegeben werden, wie dies durch die Pfeile I und e gezeigt
ist.
-
Matrix-Änderungen:
Auf Befehl von der ACUI 34 informiert die Verwaltungsschnittstelle 56 die
Datenbank-Zugriffskomponente 54 über Matrix-Änderungen, wie dies durch den
Pfeil f gezeigt ist, unter Einschluss von Berechtigungsänderungen.
Die Schnittstelle 56 benachrichtigt weiterhin den BB-Kern 53 über einen
gelöschten
Benutzer oder eine gelöschte
Benutzergruppe (Pfeile I und g).
-
Aktualisierungen:
Lediglich für
Mehrfache BB-Matrizen führt
die Erweiterungsschnittstelle 56 eine Massen-Aktualisierung
der Ressourcen-Liste aus und sendet sie an die ACUI, und sie führt eine
Ressourcen-Listen-Synchronisation auf Befehl von der ACUI aus, wie
dies durch die Pfeile I und h gezeigt ist.
-
5A ist
ein Ablaufdiagramm, das zeigt, wie die Zugriffskontroll-Komponenten
ansprechen, wenn ein BB-Klient eine Anfrage stellt, um seine Zugriffs-Privilegien
zu bestimmen, das heißt
mit anderen Worten die Aktion, die sich auf die Pfeile G, 1 und
2 in 4 beziehen.
-
Jedes
mal dann, wenn der BB-Klient 3B Informationen über seine
Privilegien anfordert, Pfeil G1, wird die Anfrage von der Lese-Schnittstelle 55,
Pfeil 1, an die DB-Zugriffskomponente 54 weitergeleitet.
Die DB-Zugriffskomponente 54 führt einen Zugriff auf die DB 57 aus
und liefert die Privilegien-Information an den BB 3B über die
Lese-Schnittstelle 55, wie dies durch die Pfeile 2 und
G2 gezeigt ist.
-
5B zeigt,
wie der BB-Kern 53 in Wechselwirkung mit den Zugriffskontroll-Komponenten tritt,
um Benutzer-Privilegien an einer regelmäßigen BB-Operation durchzusetzen.
Jedes mal dann, wenn der BB-Klient 3B einen Zugriff auf
eine Ressource anfordert (vollständige
Ressourceninformation), wie dies durch den Pfeil G3 gezeigt ist,
bestimmt der Kern 53 die Benutzergruppe zu der der Klient
gehört,
und liefert sie an den DB-Zugriff 54 (Pfeil J), der seinerseits
die Benutzergruppen-Privilegien zurück gewinnt, wie dies durch
den Pfeil K gezeigt ist. Der BB-Kern 53 fragt dann die
DB-Zugriffskomponente 54 ab, um die Privilegien für diesen bestimmten
BB-Klienten festzustellen, wie dies durch den Pfeil E gezeigt ist,
und die Privilegien werden an den BB-Kern 53 zurückgeliefert,
wie dies durch den Pfeil F gezeigt ist. Der BB-Kern 53 filtert
dann aus der Liste mit allen Privilegien oder Berechtigungen die
Ressourcendaten und leitet sie wie angefordert an den BB-Klienten 3B,
Pfeil G4.
-
Wenn
ein MOA 20 mit dem System zum ersten mal verbunden wird
werden neue Ressourcendaten an den BB-Kern 53 geliefert,
das heißt
der MOA 20 registriert sich bei den BB-Kern 53,
wie dies durch den Pfeil P gezeigt ist. Der BB-Kern 53 fragt
dann die DB-Zugriffskomponente 53 hinsichtlich der Privilegien
dieses neuen MOA ab, die für
die Gruppe gesetzt wurden, zu der der MOA gehört, wie dies durch den Pfeil
E gezeigt ist. Der DB-Zugriff 54 liefert die Liste von
Privilegien an den BB-Kern 53 (Pfeil
F), und der BB-Kern 53 filtert die Ressourcendaten mit
allen Privilegien. Die gefilterten Ressourcendaten werden dann an
den Klienten-BB geliefert, wie dies durch den Pfeil G4 gezeigt ist.
-
Ein
Blockschaltbild der ACUI 34 ist in 6A gezeigt,
während 6B in
den grau hinterlegten Kästen
die Art von Daten zeigt, die in die ACUI und aus dieser heraus fließen, wie
dies auch in 4 durch die Pfeile (H) und (J)
gezeigt ist.
-
Die
Komponenten sind eine Benutzer-Verwaltung (UMUI) 64, eine
Matrix-Auswahl (MSUI) 65, eine Modifikations-Zugriffskontroll-Matrix
(MACUI) 66, und eine Benutzer/Funktions/Ressourcen-Auswahl
(UFRSUI) 67.
-
Die
UMUI 64 wird zum Hinzufügen
und Entfernen von Benutzern und Benutzergruppen an dem CORBA-Sicherheitsdienst
(CSS) verwendet, wie dies in 6B gezeigt
ist. Diese Schnittstelle kann kundenspezifisch ausgelegt werden.
-
Die
MSUI 65 wird zur Auswahl einer Matrix unter Verwendung
des Matrix-Namens verwendet.
-
Die
MACMUI 66 ist eine Schnittstelle, die zur Modifikation
ausgewählter
Zugriffskontroll-Matrizen verwendet wird. Jede Achse der ausgewählten Matrix
wird angezeigt, und Berechtigungen für Benutzer zur Ausführung von
Funktionen auf Ressourcen werden durch diese UI eingestellt.
-
Die
UFRSUI 67 ermöglicht
es dem Benutzer, einen Posten aus jeder Achse der Matrizen unter
Verwendung der Eigenschaften hiervon zu suchen/sortieren und auszuwählen. Beispielsweise
könnte
die Ressourcen-Auswahl-UI die Ressourcenachse mit deren Eigenschaften
anzeigen, wie zum Beispiel den NE-Namen, die ID, den Typ, den Gerätegestell-Typ
und so weiter, unter der Annahme, dass das NE eine Ressource in
dieser Matrix ist. Unter Verwendung dieser Eigenschaften können Ressourcen
durchsucht und sortiert werden.
-
7 zeigt
die Initialisierungssequenz für
die ACUI. Die ACUI 34 wird aufgerufen, wenn eine Notwendigkeit
besteht, Zugriffs-Kontrolldaten zu editieren. Bei der Initialisierung
durch den Benutzer, wird dies in Schritt 71 gezeigt ist,
stellt sie eine Verbindung zu dem CORBA-Sicherheitssystem (CSS) 29 her
und befragt den CORBA-Trader-Dienst 80 nach allen registrierten
Matrizen, Schritt 72. Als Antwort auf die Abfrage wird
die Liste von BB's 3 mit
Matrizen von der MSUI 65 angezeigt.
-
In
dem Fall, in dem der Trader 80 keine Abfragen über Eigenschaften
unterstützt,
können
die Matrix-Namen aus dem BB's
zurückgewonnen
werden, wie dies in den Schritten 74 und 75 gezeigt
ist. In diesem Fall liefern die BB's 3 das Abfrageergebnis an
die ACUI 34, die die MSUI 65 aufruft, wie dies
in Schritt 76 gezeigt ist. Für Abfragen über Benutzer/Gruppen stellt
die ACUI 34 einen Kontakt mit dem CSS 26 her wie
dies in den Schritten 77, 78 gezeigt ist.
-
Die 8A und 8B erläutern die
Schaffung beziehungsweise die Löschung
von Benutzern/Gruppen für
das CSS 29 und damit für
das System. Es wird keine BB aufgerufen und es muss keine BB informiert werden,
wenn neue Grupppen/Benutzer hinzugefügt werden, weil Benutzer zu
Anfang keine Berechtigungen haben. 8A zeigt
die ACUI 34, wie sie dem Benutzer dargeboten wird. Der
Benutzer fügt
die neue Gruppe, Schritt 81, hinzu, und die ACUI 34 erzeugt
die neue Gruppe für
das CSS 26. Eine dritte Partei, die dem Benutzer-Verwaltungssystem
zugeordnet ist, kann ebenfalls verwendet werden.
-
Wenn
eine Benutzergruppe entfernt wird, Schritt 83, so löscht das
CSS den Benutzer/die Gruppe, Schritt 84, und alle BB's werden ebenfalls über die
Entfernung des Benutzers/der Gruppe informiert, wie dies im Schritt 85 gezeigt
ist. Lediglich leere Gruppen können
entfernt werden. Obwohl keine Zugriffskontroll-Operation auszuführen ist, ist es die Verantwortlichkeit
der BB's irgendwelche
derzeitigen Verbindungen mit dem BB durch diese Schicht zu trennen.
Das CSS verhindert dann einen erneuten Zugriff.
-
Die
AC-Bibliothek beseitigt dann alle Berechtigungen für diese
Benutzergruppe. Dies hat keine Wirkung auf den Kern-BB, weil alle
Benutzer an dieser Stelle „herausgeworfen" worden sein sollten.
-
9 zeigt,
wie eine Mehrfach-BB-Matrix ausgewählt und belegt wird. Das Einzel-BB-Matrix-Szenarium
ist eine Vereinfachung hiervon, weil es hier lediglich einen BB
gibt und keine Ressourcen-Synchronisation ausgeführt wird. Wie dies in dieser
Figur gezeigt ist, stellt, nachdem der Benutzer die Mehrfach-BB-Matrix
für einen
interessierenden physikalischen Knoten auswirkt, in Schritt 91 die
ACUI 34 eine Anfrage an den Trader 80, um eine
Verbindung mit den BB's
herzustellen, die die Teilmatrizen dieser Mehrfach-BB-Matrix enthalten, Schritt 92.
Abfrageer-gebnisse sind die Ressourcen-(a-) und Funktions-(b-)Achsen,
die von der ACUI 34 im Schritt 93 empfangen werden.
-
Dann
werden die Ressourcen- und Funktionsachsen von den BB's 3A und 3B in
den Schritten 94 und 95 abgefragt und in den Schritten 96 und 97 gesammelt.
Jede Liste wird kombiniert, um den Benutzer der ACUI eine einzige
Listenansicht zu geben. Daher werden die Ressourcen in der bei 98 gezeigten
Weise kombiniert, und die Modifikations-Zugriffsmatrix wird mit
diesen Daten in Schritt 99 belegt. In ähnlicher Weise wird die Matrix
mit der Funktionsliste in den Schritten 100 und 101 belegt,
und die BB's werden
ebenfalls über
die kombinierte Liste in den Schritten 102 und 103 benachrichtigt.
Die Benutzergruppen-Liste wurde von den CSS bei der Initialisierung
(7) zurückgewonnen,
doch ist dies auch in dieser Figur aus Gründen der Vollständigkeit in
Form der Schritte 104 und 106 gezeigt.
-
10 zeigt,
wie Benutzer-Berechtigungen unter Verwendung des Mehrfach-BB-Matrix-Szenariums nach 9 eingestellt
werden. Nach ähnlichen
Operationen, wie dies weiter oben gezeigt wurde, werden die Ressourcen-Funktionen
und die Benutzergruppen-Liste in der MACMUI (Modifikations-Zugriffskontroll-Matrix-UI) 65 angezeigt.
Der ACUI-Benutzer wählt
den Benutzer A aus der Benutzerliste, die Funktionen U und V aus
der Funktionsliste und die Ressourcen X und Y aus der Ressourcenliste
aus, Schritt 107, und beantragt, es dem Benutzer A zu erlauben,
die Funktion U an den Ressourcen X und Y auszuführen, Schritt 108.
In ähnlicher
Weise beantragt die ACUI 34, es dem Benutzer A zu erlauben,
die Funktion V auf den Ressourcen X und Y auszuführen, Schritt 109.
Es sei bemerkt, dass die Funktion U zu dem BB1 gehört, und
die Funktion V zu dem BB2 gehört.