Beschreibung
Verfahren zur rollenbasierten Steuerung des Zugriffs auf Ressourcen eines Datenverarbeitungssystems, Datenverarbeitungs- System und Computerprogramm
Markt- und kundenorientierte Organisationen verändern sich vielfach schneller als Datenverarbeitungssysteme, mit Hilfe derer die Organisationen ihre Geschäftsprozesse abbilden. Hieraus resultieren besondere Anforderungen im Hinblick auf eine Steuerung des Zugriffs auf Ressourcen von Datenverarbeitungssystemen in sich rasch verändernden Organisationseinheiten.
Aus DE 199 54 358 AI ist ein Verfahren zur Steuerung des Benutzerzugriffs in einer Netzumgebung unter Verwendung von Benutzerrollen bekannt. Eine Benutzerrolle bestimmt die Funktion eines Benutzers innerhalb einer Organisationseinheit und dient der Definition des Umfangs seiner Betriebsverantwor- tung. Eine Benutzerrollenzugriffssteuerung umfaßt eine oder mehrere Benutzerrollen und Zugriffsberechtigungen, durch die eine Durchführbarkeit von Handlungen an computerbasierten Objekten festgelegt wird. Die Benutzerrollenzugriffssteuerung wird verwendet, um eine Anfrage eines Benutzers zu bewilli- gen, wenn Benutzerzugriffsrollen einem Benutzer Zugriffsberechtigungen erteilen, die ihn zur Durchführung spezieller Handlungen an einem computerbasierten Objekt berechtigen.
Der vorliegenden Erfindung liegt die Aufgabe zugrunde, ein Verfahren, ein Datenverarbeitungssystem und ein Computerprogramm zur automatischen Zuweisung von Zugriffsberechtigungen an Benutzer in rollenbasierten Ressourcenzugriffssteuerungs- systemen anzugeben.
Diese Aufgabe wird erfindungsgemäß durch ein Verfahren mit den in Anspruch 1, ein Datenverarbeitungssystem mit den in Anspruch 9 und ein Computerprogramm mit den in Anspruch 10
angegebenen Merkmalen gelöst. Vorteilhafte Weiterbildungen des erfindungsgemäßen Verfahrens sind in den abhängigen Ansprüchen angegeben.
Ein wesentlicher Aspekt der vorliegenden Erfindung besteht darin, daß Rollenhierarchien durch eine sukzessive Ermittlung von Benutzerrollen zugeordneten Zugriffsberechtigungen, von hierarchisch abhängigen Benutzerrollen und diesen zugeordneten Zugriffsberechtigungen in einem Datenverarbeitungssystem beispielsweise organisationsweit abbildbar sind. Diese sukzessiv ermittelten dienen als Grundlage für eine systemweite automatische Erstellung bzw. Anpassung von Benutzerzugriffs- rechteverwaltungslisten in ressourcenbereitstellenden Datenverarbeitungsanlagen des Datenverarbeitungssystems.
Die vorliegende Erfindung wird nachfolgend an einem Ausführungsbeispiel anhand der Zeichnung näher erläutert. Es zeigt
Figur 1 eine schematische Darstellung der Wirkungsweise ei- nes rollenbasierten Ressourcenzugriffssteuerungs- systems und
Figur 2 ein Datenverarbeitungssystem mit mehreren Datenverarbeitungsanlagen und rollenbasierter Ressourcen- zugriffssteuerung.
Figur 3 eine schematische Darstellung einer Benutzerrollenhierarchie
Figur 4 ein Ablaufdiagramm für ein Verfahren zur rollenbasierten Ressourcenzugriffssteuerung bei hierarchisch abhängigen Benutzerrollen
In Figur 1 ist dargestellt, in welches Umfeld ein rollenba- siertes Ressourcenzugriffsteuerungssystem eingebettet ist. Anhand der Zugehörigkeit von Benutzern U1-U3 zu Organisationseinheiten ORG1-ORG4 sowie ihren Verantwortungsbereichen
für Geschäftsprozesse P1-P4 sind Rollen R1-R4 definierbar bzw. ableitbar. Über die definierten bzw. abgeleiteten Rollen R1-R4 werden Zugriffsberechtigungen auf Ressourcen eines organisationsweiten Datenverarbeitungssystems mit zahlreichen Datenverarbeitungsanlagen TSYSl-TSYSp gesteuert. Die Datenverarbeitungsanlagen TSYSl-TSYSp bilden dabei Zielsysteme für die rollenbasierte Ressourcenzugriffssteuerung. Im Rahmen der rollenbasierten Ressourcenzugriffssteuerung werden Benutzer U1-U3 zu Rollen R1-R4, Rollen R1-R4 zu Berechtigungen und Be- rechtigungen zu Ressourcen von Zielsystemen TSYSl-TSYSp zugeordnet. Nähere Einzelheiten zu rollenbasierten Zugriffssteuerungssystemen sind in David Ferraiolo, Richard Kuhn: "Role Based Access Control", Proceedings of the 15th National Computer Security Conference, 1992, Vol. II, S. 554-563 be- schrieben.
Das in Figur 2 dargestellte Datenverarbeitungssystem weist eine Mehrzahl von Datenbanken DBl-DBn mit benutzerindividuellen Daten wie Organisation, Standorte, Verantwortungsberei- ehe, Personalstammdaten und verfügbare Dienste auf. Die benutzerindividuellen Daten sind in den einzelnen Datenbanken DBl-DBn nicht notwendigerweise entsprechend einer einheitlichen Datenstruktur gespeichert. Zur Bildung einer einzigen resultierenden Benutzerdatenbank MDIR, nachfolgend als Meta- Verzeichnis bezeichnet, werden die einzelnen Datenbanken miteinander verknüpft. Zur Verknüpfung werden in den einzelnen Datenbanken DBl-DBn gespeicherte Daten entsprechend einem Ge- samtdaten odell umgesetzt. Etwaige Datenredundanzen in den einzelnen Datenbanken DBl-DBn werden bei einer Datenmigration in das Meta-Verzeichnis MDIR eliminiert.
Bei einer Änderung von benutzerindividuellen Daten in den einzelnen Datenbanken DBl-DBn oder im Meta-Verzeichnis MDIR erfolgt eine Synchronisation zwischen den einzelnen Datenban- ken DBl-DBn und dem Meta-Verzeichnis MDIR. Zur Synchronisation des Meta-Verzeichnisses MDIR mit den einzelnen Datenbanken DBl-DBn werden Synchronisationsanforderungen REQ zwischen ei-
nem dem Meta-Verzeichnis MDIR zugeordneten Server MDS, nachfolgend als Meta-Verzeichnis-Server bezeichnet, und Datenbankservern DBSl-DBSn ausgetauscht, die den einzelnen Datenbanken DBl-DBn zugeordnet sind. Die Synchronisationsanforde- rung REQ werden dabei über ein Datennetz NET übertragen, das die Datenbankserver DBSl-DBSn mit dem Meta-Verzeichnis-Server MDS verbindet .
Das Meta-Verzeichnis MDIR weist Speicherbereiche M1-M3 mit Benutzerstammdaten, Rollendefinitionen und Zugriffsberechtigungen für Ressourcen auf. Zu den Ressourcen zählen Programmanwendungen APPll-APPpn und Speicherbereiche MEMl-MEMp, die durch Datenverarbeitungsanlagen TSYSl-TSYSp bereitgestellt werden. Die ressourcenbereitstellenden Datenverarbeitungsan- lagen TSYSl-TSYSp werden nachfolgend als Zielsysteme bezeichnet.
Die Zugriffsberechtigungen für die durch die Zielsysteme TSYSl-TSYSp bereitgestellten Ressourcen werden mittels der im Meta-Verzeichnis MDIR gespeicherten vordefinierten Benutzerrollen vergeben. Dabei werden den vordefinierten Benutzerrollen Zugriffsberechtigungen und den Zugriffberechtigungen Ressourcen der Zielsysteme TSYSl-TSYSp zugeordnet. Des weiteren sind im Meta-Verzeichnis MDIR Zuordnungen von Benutzern zu Rollen gespeichert, wodurch den jeweiligen Benutzern die den jeweiligen Rollen zugeordneten Zugriffsberechtigungen gewährt werden. Die Zuordnungen von Benutzern zu Rollen werden im Meta-Verzeichnis MDIR beispielsweise als Teil der Personalstammdaten abgespeichert. Vorteilhafterweise werden die vor- definierten Benutzerrollen mittels eines im Meta-Verzeichnis MDIR abgespeicherten Rollenkataloges zur Zuordnung verfügbar gemacht .
Der Meta-Verzeichnis-Server MDS ist über Schnittstellenein- richtungen TSAl-TSAm mit den Zielsystemen TSYSl-TSYSp verbunden. Die Schnittstelleneinrichtungen TSAl-TSAm werden nachfolgend Zielsystemagenten genannt. Die Zielsystemagenten
TSAl-TSAm lösen Benutzern des Datenverarbeitungssystems zugeordnete Benutzerrollen in applikationsspezifische bzw. betriebssystemspezifische Zugriffsberechtigungen für Programmanwendungen APPll-APPpn und Speicherbereiche MEMl-MEMp auf, die von den Zielsystemen TSYSl-TSYSp bereitgestellt werden. Solche applikations- bzw. betriebssystemspezifischen Zugriffsberechtigungen entsprechen beispielsweise durch Benutzergruppen oder Benutzerzugriffsrechteverwaltungslisten ACL (Access Control List) in den Zielsystemen TSYSl-TSYSp verwalteten Berechtigungen. Den Zielsystemagenten TSAl-TSAm kommen somit Koordinierungsfunktionen im Hinblick auf Programmzugriffssteuerung und Datenhaltung in den Zielsystemen TSYSl-TSYSp zu.
Zur Ankopplung des Meta-Verzeichnis-Servers MDS an die Programmzugriffssteuerung und die Datenhaltung der Zielsysteme TSYSl-TSYSp, weisen die Zielsystemagenten TSAl-TSAm in Figur 2 nicht explizit dargestellte LDAP-Umsetzer (Lightweight Directory Access Protocol) und API-Zugangsschnittstellen (Ap- plication Programming Interface) auf und lösen die Benutzerrollen in Befehlssequenzen auf, die von den jeweiligen Zielsystemen TSYSl-TSYSp interpretierbar sind.
Innerhalb der in Figur 3 schematisch dargestellten Benutzer- rollenhierarchie werden Zugriffsberechtigungen 311-314 von hierarchisch abhängigen, untergeordneten Benutzerrollen 302- 303, 304-307 an hierarchisch übergeordnete Benutzerrollen 301, 302-303 vererbt. Bei der in Figur 3 dargestellten Benutzerrollenhierarchie sind Benutzerrollen 301-307 unterschied- liehen Ebenen 308-310 zugeordnet. Die Zugriffsberechtigungen 311-314 auf einer untersten Ebene 310 beinhalten konkrete Zugriffsberechtigungen auf durch die Zielsysteme TSYS1-TSYS7 bereitgestellte Ressourcen. Für die folgende Betrachtung wird der Einfachheit halber angenommen, daß die konkreten Berech- tigungen jeweils sämtliche durch ein Zielsystem TSYS1-TSYS7
bereitgestellte Programmanwendungen und Speicherbereiche von
Speichermedien umfassen.
Ein in Figur 3 auf ein Zielsystem TSYS1-TSYS7 weisender Pfeil symbolisiert ein Schreibrecht, während ein vom jeweiligem
Zielsystem TSYS1-TSYS7 wegweisender Pfeil ein Leserecht symbolisiert. Ein kombiniertes Lese- und Schreibrecht wird durch einen Doppelpfeil symbolisiert. Die Zugriffsberechtigungen 311-314, die Benutzerrollen 304-307 auf der untersten Ebene 310 der Rollenhierarchie zugeordnet sind, werden nachfolgend an Benutzerrollen 302, 303 auf einer mittleren Ebene 309 weitervererbt. An eine Benutzerrolle 301 auf einer obersten Ebene 308 der Benutzerrollenhierarchie werden sämtliche Berechtigungen 311-314 weitervererbt.
Das in Figur 4 dargestellte Ablaufdiagramm für ein Verfahren zur rollenbasierten Ressourcenzugriffssteuerung bei hierarchisch abhängigen Benutzerrollen dient der Erläuterung der Funktionalität eines Zielsystemsagenten TSAl-TSAm. Der Aus- gangspunkt des Verfahrens ist eine Zuordnung 401 zumindest einer Benutzerrolle zu einem Benutzer des Datenverarbeitungs- systems. Danach werden der zumindest einen Benutzerrolle zugeordnete Zugriffsberechtigungen auf durch die Zielsysteme TSYS1-TSYS7 bereitgestellte Ressourcen ermittelt 402. Bei diesen Zugriffsberechtigungen handelt es sich um konkrete Berechtigungen, die der jeweiligen Benutzerrolle direkt zugeordnet sind.
Nachfolgend werden von der zumindest einen Benutzerrolle hie- rarchisch abhängige Benutzerrollen ermittelt 403. Anschließend werden den hierarchisch abhängigen Benutzerrollen zugeordnete, konkrete Berechtigungen darstellende Zugriffsberechtigungen ermittelt 404. Die Ermittlung 403 abhängiger Benut-
zerrollen und die Ermittlung 404 von Zugriffsberechtigungen, die den abhängigen Benutzerrollen zugeordnet sind, erfolgt iterativ. Hierzu wird überprüft 405, ob weitere abhängige Benutzerrollen vorhanden sind. Ist dies der Fall, erfolgt eine erneute Ermittlung 403 abhängiger Benutzerrollen und eine erneute Ermittlung 404 diesen Benutzerrollen zugeordneter Zugriffsberechtigungen. Andernfalls wird überprüft 406, ob in den Benutzerzugriffsrechteverwaltungslisten ACL, die in den Zielsystemen TSYS1-TSYS7 gespeichert sind, für den jeweiligen Benutzer Einträge vorhanden sind.
Bei zumindest einem vorhandenen Eintrag in einer Benutzerzugriffsrechteverwaltungsliste ACL wird überprüft 407, ob ein Primäreintrag vorhanden ist. Ist ein Primäreintrag vorhanden, so werden die ermittelten Zugriffsberechtigungen dem Primäreintrag in der jeweiligen Benutzerzugriffsrechteverwaltungsliste ACL zugeordnet 408. Falls kein Primäreintrag vorhanden ist, wird überprüft 409, ob für den jeweiligen Benutzer genau ein Eintrag in den Benutzerzugriffsrechteverwaltungslisten ACL vorhanden ist. Bei genau einem Eintrag in den Benutzerzugriffsrechteverwaltungslisten ACL wird dieser Eintrag als Primäreintrag deklariert 410 und diesem die ermittelten Zugriffsberechtigungen zugeordnet. Ist dagegen mehr als ein Eintrag für den jeweiligen Benutzer in den Benutzerzugriffs- rechteverwaltungslisten ACL vorhanden, so wird für diesen Benutzer ein neuer Eintrag in der jeweiligen Benutzerzugriffs- rechteverwaltungsliste angelegt 411, und die ermittelten Zugriffsberechtigungen werden dem neuen Eintrag zugeordnet 412.
Ist in der Benutzerzugriffsrechteverwaltungsliste ACL des jeweiligen Zielsystems TSYS1-TSYS7 überhaupt gar kein Eintrag zugeordnet, so wird für den betreffenden Benutzer ein neuer
Eintrag in der Benutzerzugriffsrechteverwaltungsliste ACL angelegt 411. Abschließend werden die ermittelten Zugriffsberechtigungen dem neuen Eintrag in der Benutzerzugriffsrechteverwaltungsliste ACL zugeordnet 412.
Bei einer Änderung von rollendefinierenden benutzerindividuellen Daten im Meta-Verzeichnis MDIR wird eine Meldung MSG an den jeweiligen Zielsystemagenten TSAl-TSAm übermittelt (siehe auch Figur 2). Der jeweilige Zielsystemagent TSAl-TSAm über- prüft daraufhin die Meldung MSG auf eine Änderung von appli- kations- bzw. betriebssystemspezifischen Zugriffsberechtigungen, die den jeweiligen Zielsystemen TSYSl-TSYSp gegebenenfalls zu signalisieren sind.
Das vorangehend beschriebene Ressourcenzugriffssteuerungsver- fahren wird durch ein Computerprogramm implementiert, das in einen Arbeitsspeicher RAM des Meta-Verzeichnis-Servers MDS ladbar ist und Software-Codeabschnitte aufweist, bei deren Ausführung die vorangehend beschriebenen Schritte eingeleitet werden. Der Meta-Verzeichnis-Server MDS weist ein nichtflüchtiges Speichermedium MEM zur dauerhaften Speicherung des Computerprogramms und eine zentrale Recheneinheit CPU für dessen Ausführung auf.
Die Anwendung der vorliegenden Erfindung ist nicht auf das hier beschriebene Ausführungsbeispiel beschränkt, insbesondere nicht auf eine Verwendung in einem Meta-Verzeichnis.