DE112020001688B4 - Richtlinienbasiertes auslösen einer überarbeitung von zugriffssteuerungsinformationen - Google Patents

Richtlinienbasiertes auslösen einer überarbeitung von zugriffssteuerungsinformationen Download PDF

Info

Publication number
DE112020001688B4
DE112020001688B4 DE112020001688.9T DE112020001688T DE112020001688B4 DE 112020001688 B4 DE112020001688 B4 DE 112020001688B4 DE 112020001688 T DE112020001688 T DE 112020001688T DE 112020001688 B4 DE112020001688 B4 DE 112020001688B4
Authority
DE
Germany
Prior art keywords
trigger
access control
policies
control information
subjects
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
DE112020001688.9T
Other languages
English (en)
Other versions
DE112020001688T5 (de
Inventor
Gianluca Gargaro
Luigi Lombardi
Davide Fazzone
Raffaele Sperandeo
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112020001688T5 publication Critical patent/DE112020001688T5/de
Application granted granted Critical
Publication of DE112020001688B4 publication Critical patent/DE112020001688B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Verfahren (400), um eine Pflege von Zugriffssteuerungsinformationen zur Steuerung des Zugriffs auf eine oder mehrere Ressourcen eines Informationstechnologiesystems (100; 205r) durch ein oder mehrere Subjekte (210) zu vereinfachen, wobei das Verfahren umfasst:Abrufen (404), durch ein Steuerungsdatenverarbeitungssystem (205c; 320), von einer oder mehreren Triggerrichtlinien, von denen jede auf einem oder mehreren Richtlinienparametern in Bezug auf die Ressourcen, die Subjekte und den Zugriff auf die Ressourcen durch die Subjekte beruht, wobei jede der einen oder mehreren Triggerrichtlinien eine Bedingung für eine Überarbeitung der Zugriffssteuerungsinformationen in Bezug auf die eine oder mehreren Ressourcen des Informationstechnologiesystems, auf das eine oder die mehreren Subjekte und den Zugriff auf die eine oder mehreren Ressourcen der Informationstechnologie identifiziert, wobei jede der einen oder mehreren Triggerrichtlinien durch Feststellen, ob sie wahr ist, bewertet wird und auf einem oder mehreren Richtlinienparametern basiert;Abrufen (408), durch das Steuerungsdatenverarbeitungssystem, der Richtlinienparameter, wobei die Richtlinienparameter eine Änderung von mehr als einem Schwellenwert an neuen Benutzern, eine Änderung von mehr als einem zweiten Schwellenwert an neuen Benutzern in einer Abteilung, eine Änderung von mehr als einem dritten Schwellenwert an Änderungen in einem Organisationsdiagramm, mehr als einem vierten Schwellenwert an neuen Rollen der Subjekte seit einer letzten Bewertung der einen oder mehreren Triggerrichtlinien umfassen;Auswerten (426), durch das Steuerungsdatenverarbeitungssystem, der Triggerrichtlinien gemäß den entsprechenden Richtlinienparametern;Feststellen (430), durch das Steuerungsdatenverarbeitungssystem, eines Triggerindikators gemäß einem Ergebnis des Auswertens der Triggerrichtlinien, wobei der Triggerindikator ein Triggerindex ist, der durch Gewichten der Triggerrichtlinien, die wahr sind, gemäß ihrer entsprechenden Scores, die mit ihrer Wirksamkeit beim Auslösen der Überarbeitung der Zugriffssteuerungsinformationen verbunden sind, berechnet wird;Ausgeben (434), durch das Steuerungsdatenverarbeitungssystem, eines Hinweises auf den Triggerindikator, um eine Überarbeitung der Zugriffssteuerungsinformationen als Reaktion auf den Triggerindikator auszulösen,wobei die Überarbeitung eine Mining-Aktivität, um die Subjekte den Ressourcen zuzuordnen, und eine durch ein Ergebnis der Mining-Aktivität verursachte Aktualisierung der Zugriffssteuerungsinformationen aufweist; undÜberarbeiten der Zugriffssteuerungsinformationen durch einen Zugriffssteuerungsmanager auf der Grundlage des Ausgebens.

Description

  • HINTERGRUND
  • Die vorliegende Offenbarung betrifft das Gebiet der Informationstechnologie. Genauer gesagt, diese Offenbarung betrifft die Steuerung des Zugriffs auf Informationstechnologiesysteme.
  • Die Steuerung des Zugriffs auf Informationstechnologiesysteme ist ein wichtiger Aspekt für deren Verwaltung. Allgemein ausgedrückt betrifft dies einen Prozess, der zur Steuerung von Aktivitäten verwendet wird, die auf (geschützten) Ressourcen eines Informationstechnologiesystems durch verschiedene Subjekte, zum Beispiel (menschliche) Benutzer, durchgeführt werden können. Der Zugriffssteuerungsprozess zielt darauf ab, den (richtigen) Subjekten zu ermöglichen, die (richtigen) Aktivitäten zu richtigen Zeitpunkten und aus richtigen Gründen durchzuführen; dies vermeidet (oder verringert zumindest erheblich) das Risiko, dass nicht berechtigte Subjekte unerwünschte (und im Allgemeinen gefährliche) Aktivitäten in dem Informationstechnologiesystem durchführen könnten. Dies ist sehr wichtig, um Datensicherheit und die Einhaltung gesetzlicher Bestimmungen zu gewährleisten.
  • Die Druckschrift US 10 139 789 B2 betrifft ein Verfahren zur Zugriffsentscheidungsevaluierung in einem Gebäudeautomatisierungs- und - steuerungssystem, wobei das Verfahren beinhaltet, dass: von einem Zugriffsgerät eine Zugriffsanforderung zu einem Gerät, auf das zugegriffen wurde, übermittelt wird, von dem Gerät, auf das zugegriffen wurde, eine Evaluierungsanforderung zu einem zentralen Entscheidungsevaluierungsgerät übertragen wird, mit der angefragt wird, ob die Zugriffsanforderung gewährt oder abgelehnt wird, an dem zentralen Entscheidungsevaluierungsgerät die Evaluierungsanforderung unter Verwendung einer oder mehrerer zentraler Zugriffssteuerungsrichtlinien evaluiert wird, um eine Entscheidung darüber zu erzielen, ob die Zugriffsanforderung gewährt oder abgelehnt wird, an dem zentralen Entscheidungsevaluierungsgerät eine gerätespezifische Zugriffsrichtlinie von einer oder mehreren zentralen Zugriffssteuerungsrichtlinien, die zur Evaluierung verwendet wurden, abgeleitet wird, von dem zentralen Entscheidungsevaluierungsgerät die Entscheidung und die gerätespezifische Zugriffsrichtlinie zu dem Gerät, auf das zugegriffen wurde, übertragen werden, in dem Gerät, auf das zugegriffen wurde, die gerätespezifische Zugriffsrichtlinie gespeichert wird; und an dem Gerät, auf das zugegriffen wurde, entschieden wird, ob eine nachfolgende Zugriffsanforderung aufgrund der gerätespezifischen Zugriffsrichtlinie gewährt oder abgelehnt wird.
  • Die Druckschrift US 2012 / 0 246 098 A1 betrifft ein Verfahren zum Durchführen von Rollen-Mining, gegeben eine Mehrzahl von Benutzern und eine Mehrzahl von Berechtigungen. Das Verfahren umfasst: Erfassen einer Ansammlung K von k Rollen, einer Wahrscheinlichkeitsverteilung 0 für Benutzer-zu-Rolle-Zuordnungen und einer Wahrscheinlichkeitsverteilung β für Rolle-zu-Berechtigung-Zuordnungen unter Verwendung mindestens einer generativen Technik des Maschinenlernens; und unter Verwendung der Wahrscheinlichkeitsverteilung 0 für Benutzer-zu-Rolle-Zuordnungen und der Wahrscheinlichkeitsverteilung β für Rolle-zu-Berechtigung-Zuordnungen, um einen endgültigen Satz von Rollen zu erzeugen, der Benutzer-zu-Rolle-Zuordnungen und Rolle-zu-Berechtigung-Zuordnungen beinhaltet.
  • Die Druckschrift US 2013 / 0 111 583 A1 betrifft ein Verfahren in einem Datenverarbeitungssystem, das mit einer Mehrzahl von Benutzern verknüpft ist, wobei mindestens einem Teil der Benutzer jeweils eine oder mehrere Berechtigungen zugeordnet wurden, die jeweils spezifizierten Systemressourcen entsprechen. Das Verfahren umfasst: Erfassen von Daten aus einer ersten Datenquelle, wobei die erste Datenquelle Informationen über die Benutzer des Teils und über die ihnen vorangehend zugeordneten Berechtigungen enthält; Erfassen von Daten von einer zweiten Datenquelle, wobei die zweite Datenquelle Informationen enthält, die sich auf ein oder mehrere spezifizierte Attribute jedes Benutzers der Mehrzahl beziehen; Ermitteln eines Satzes von Berechtigungen für eine gegebene Rolle, wobei der Satz von Berechtigungen unter Verwendung von Informationen von mindestens einer der ersten Datenquelle und der zweiten Datenquelle ermittelt wird und der Satz von Berechtigungen eine oder mehrere spezifizierte Berechtigungen umfasst, die mit Ressourcen des Systems verknüpft sind; Ermitteln eines ersten Kriteriums zum Zuordnen von Benutzern zu der gegebenen Rolle aus Informationen, die in der ersten Datenquelle enthalten sind; Ermitteln eines zweiten Kriteriums zum Zuordnen von Benutzern zu der gegebenen Rolle anhand von Informationen, die in der zweiten Datenquelle enthalten sind; und Auswählen eines bestimmten Benutzers für die Zulassung zu der gegebenen Rolle lediglich dann, wenn der bestimmte Benutzer sowohl das erste Kriterium als auch das zweite Kriterium erfüllt, wobei jedem zu der gegebenen Rolle zugelassenen Benutzer jede der spezifizierten Berechtigungen des Berechtigungssatzes zugeordnet wird.
  • Die Druckschrift US 9 137 265 B2 betrifft das Erzeugen von rollenbasierten Zugriffskontrollrichtlinien. Eine Benutzer-Berechtigungs-Beziehung wird erzeugt, indem Benutzer und jedem der Benutzer zugeordnete Berechtigungen aus einer gespeicherten Zugriffskontrollpolitik extrahiert werden. Eine Benutzer-Attribut-Beziehung wird durch Zuordnung der Benutzer zu Attributen, die die Benutzer beschreiben, erzeugt. Eine Berechtigungs-Attribut-Beziehung wird durch Zuordnung der Berechtigungen zu Attributen, die die Berechtigungen beschreiben, erzeugt. Die Menge der risikoaversen Rollen, die Zuordnung der Menge der risikoaversen Rollen zu den Benutzern und die Zuordnung der Berechtigungen zu der Menge der risikoaversen Rollen werden auf Grundlage der Anwendung einer Risikooptimierungsfunktion auf die erzeugte Benutzer-Berechtigungs-Beziehung, die erzeugte Benutzer-Attribut-Beziehung und die erzeugte Berechtigungs-Attribut-Beziehung ermittelt. Es wird eine rollenbasierte Zugriffskontrollpolitik erzeugt, die ein Risikoprofil des Satzes risikoaverser Rollen, die Zuordnung des Satzes risikoaverser Rollen zu den Benutzern und die Zuordnung der Berechtigungen zu dem Satz risikoaverser Rollen minimiert.
  • Die Druckschrift DE 11 2010 004 284 T5 betrifft ein Verfahren zum Überwachen von Zugriffssteuerungsentscheidungen. Das Verfahren ist anwendbar, selbst wenn die Zugriffssteuerungsentscheidungen nicht alle in einer Prüfliste protokolliert werden. Stattdessen wird ein Zähler gepflegt, der durch sämtliche Parameter zusammengefasst wird, die bei der Entscheidung, welche Berechtigungen den Zugriff gewährt bzw. verweigert haben könnten, von Interesse sind, darunter Thema (subject), Objekt, Zugriffsstufe und Entscheidung, aber nicht darauf beschränkt. Nach einem (willkürlichen, normalerweise konfigurierbaren) Zeitabschnitt wird er als so genannter Zugriffs-Zusammenfassungs-Datensatz ausgeschrieben. Dies hilft bei der Sicherstellung, dass ein Datenverlust auf höchstens einen Zeitabschnitt beschränkt ist. Daten über diese Zeitabschnitte können zusammengeführt werden, um Zugriffs-Zusammenfassungs-Datensätze zu erstellen, die einen längeren Zeitabschnitt abdecken. Die Zugriffs-Zusammenfassungs-Datensätze werden mit den aktuellen Sicherheitsregeln verglichen (Zugriffssteuerungsdatenbank), um zu kennzeichnen, ob (oder alternativ zu zählen wie häufig) eine Sicherheitsregel, ein Sicherheitsattribut bzw. eine spezifische Berechtigung in dem durch die Zugriffszusammenfassung abgedeckten Zeitraum (zum Genehmigen bzw. Verweigern) verwendet wurden. Optionaler Filterschritt, in dem zum Beispiel Teilmengen der Sicherheitsregeln zur eigenständigen Bearbeitung, Genehmigung durch einen Menschen oder überhaupt keine Bearbeitung ausgewählt werden können. Optionaler Schritt des Genehmigens durch einen Menschen, in dem das Entfernen von als nicht verwendet gekennzeichneten Berechtigungen genehmigt werden kann.
  • KURZDARSTELLUNG
  • Der Erfindung liegt die Aufgabe zugrunde ein Verfahren und ein Computerprogrammprodukt zur Vereinfachung einer Pflege von Zugriffssteuerungsinformationen zu schaffen. Gemäß einem ersten Aspekt der vorliegenden Erfindung wird ein durch einen Computer ausgeführtes Verfahren, ein Computerprogrammprodukt, ein Computersystem und ein Steuerungsdatenverarbeitungssystem bereitgestellt, um eine Steuerung des Zugriffs auf ein Informationstechnologiesystem durch ein oder mehrere Subjekte zu vereinfachen. Das Verfahren umfasst ein Abrufen, durch ein Steuerungsdatenverarbeitungssystem, von einer oder mehreren Triggerrichtlinien, von denen jede auf einem oder mehreren Zustandsparametern in Bezug auf das Informationstechnologiesystem beruht, ein Abrufen, durch das Steuerungsdatenverarbeitungssystem, der Zustandsparameter, ein Auswerten, durch das Steuerungsdatenverarbeitungssystem, der Triggerrichtlinien gemäß den entsprechenden Zustandsparametern, ein Feststellen, durch das Steuerungsdatenverarbeitungssystem, eines Triggerindikators gemäß einem Ergebnis des Auswertens der Triggerrichtlinien und Ausgeben, durch das Steuerungsdatenverarbeitungssystem, eines Hinweises auf den Triggerindikator, um eine Überarbeitung von Zugriffssteuerungsinformationen zur Steuerung des Zugriffs auf das Informationstechnologiesystem gemäß dem Triggerindikator auszulösen.
  • Eine vereinfachte Kurzdarstellung der vorliegenden Offenbarung wird hierin präsentiert, um ein grundlegendes Verständnis davon zu vermitteln; der alleinige Zweck dieser Kurzdarstellung besteht jedoch darin, einige Konzepte der Offenbarung in vereinfachter Form als Einleitung zu ihrer folgenden ausführlicheren Beschreibung vorzustellen, und sie ist weder als Identifizierung ihrer Schlüsselelemente noch als Skizzierung ihres Umfangs zu interpretieren.
  • Allgemein ausgedrückt beruht die vorliegende Offenbarung auf der Idee der Bereitstellung eines richtlinienbasierten Auslösens der Überarbeitung der Zugriffssteuerungsinformationen.
  • Im Einzelnen stellt eine Ausführungsform ein Verfahren bereit, um eine Steuerung des Zugriffs auf ein Informationstechnologiesystem zu vereinfachen. Eine oder mehrere Triggerrichtlinien werden gemäß einem oder mehreren Zustandsparametern in Bezug auf das Informationstechnologiesystem ausgewertet. Eine Überarbeitung von Zugriffssteuerungsinformationen, um den Zugriff auf das Informationstechnologiesystem zu steuern, wird gemäß einem Ergebnis der Auswertung der Triggerrichtlinien ausgelöst.
  • Ein weiterer Aspekt stellt ein Computerprogramm zur Ausführung des Verfahrens bereit.
  • Ein weiterer Aspekt stellt ein entsprechendes Computerprogrammprodukt bereit.
  • Ein weiterer Aspekt stellt ein entsprechendes Steuerungsdatenverarbeitungssystem bereit.
  • Genauer gesagt, ein oder mehrere Aspekte der vorliegenden Offenbarung sind in den unabhängigen Ansprüchen und vorteilhafte Merkmale sind in den abhängigen Ansprüchen mit dem Wortlaut aller Ansprüche dargelegt, der durch Bezugnahme wörtlich hierin übernommen ist (wobei jedes vorteilhafte Merkmal unter Bezugnahme auf einen bestimmten Aspekt bereitgestellt wird, der mutatis mutandis für jeden anderen Aspekt gilt).
  • Figurenliste
    • Die 1A bis 1D stellen ein Beispiel einer Anwendung der Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung dar.
    • 2 ist eine schematische Darstellung einer Informationstechnologie-Infrastruktur, in der die Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung in die Praxis umgesetzt werden kann.
    • 3 stellt die Hauptsoftwarekomponenten dar, die verwendet werden können, um die Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung auszuführen.
    • 4A bis 4C zeigen ein Aktivitätsdiagramm, das den Ablauf von Aktivitäten in Bezug auf eine Ausführung der Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung beschreibt.
    • 5 stellt eine Cloud-Computing-Umgebung gemäß einer Ausführungsform der vorliegenden Erfindung dar.
    • 6 stellt Abstraktionsmodellschichten gemäß einer Ausführungsform der vorliegenden Erfindung dar.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführliche Ausführungsformen der beanspruchten Strukturen und Verfahren werden hierin offenbart; jedoch kann darauf hingewiesen werden, dass die offenbarten Ausführungsformen die beanspruchten Strukturen und Verfahren lediglich veranschaulichen, die in verschiedenen Formen realisiert werden können. Diese Erfindung kann jedoch in vielen verschiedenen Formen realisiert werden und sollte nicht als auf die hierin dargelegten beispielhaften Ausführungsformen beschränkt ausgelegt werden. In der Beschreibung werden Einzelheiten von hinlänglich bekannten Merkmalen und Techniken gegebenenfalls weggelassen, um eine unnötige Überfrachtung der dargestellten Ausführungsformen zu vermeiden.
  • Ausführungsformen der vorliegenden Erfindung betreffen das Gebiet der Informationstechnologie. Genauer gesagt, diese Offenbarung betrifft die Steuerung des Zugriffs auf Informationstechnologiesysteme.
  • Die folgenden beschriebenen beispielhaften Ausführungsformen stellen ein System, ein Verfahren und ein Programmprodukt bereit, um unter anderem ein richtlinienbasiertes Auslösen der Überarbeitung von Zugriffssteuerungsinformationen in Informationstechnologiesystemen bereitzustellen. Daher ist die vorliegende Ausführungsform in der Lage, das technische Gebiet der Datenverarbeitung zu verbessern, indem sie eine Steuerung des Zugriffs auf ein Informationstechnologiesystem durch ein oder mehrere Subjekte oder Benutzer oder Systeme vereinfacht.
  • Der Zugriffssteuerungsprozess wird im Allgemeinen durch eine Identitäts-und-Zugriffsmanagement-(„IAM“-, Identity and Access Management-)Anwendung ausgeführt. Kurz gesagt, die IAM-Anwendung erlaubt das Verwalten von digitalen, mit den Subjekten korrelierten Identitäten (zum Beispiel Konten der Benutzer mit ihren Kennwörtern). Die IAM-Anwendung erlaubt auch das Gewähren von bestimmten Berechtigungen, die jedes Subjekt berechtigen, bestimmte Aktivitäten in dem Informationstechnologiesystem durchzuführen (zum Beispiel Dateien lesen/schreiben). Die IAM-Anwendung erlaubt dann das Durchsetzen des Zugriffs auf das Informationstechnologiesystem durch die Subjekte gemäß deren Berechtigungen (zum Beispiel darf ein Subjekt mit einer Leseberechtigung für eine Datei diese nicht aktualisieren). Überdies erlaubt die IAM-Anwendung das Überwachen der Konformität des Zugriffs auf das Informationstechnologiesystem mit Sicherheitsrichtlinien, die den Zugriffssteuerungsprozess regeln.
  • Der Zugriffssteuerungsprozess kann auf verschiedenen Sicherheitsmodellen beruhen. Zum Beispiel ist das am weitesten verbreitete Sicherheitsmodell das Role Based Access Control-(nachstehend „RBAC“-)Modell. In diesem Fall werden eine oder mehrere Rollen definiert, jede mit einer oder mehreren Berechtigungen (um Aktivitäten in dem Informationstechnologiesystem durchzuführen). Jedem Subjekt werden eine oder mehrere Rollen zugewiesen und daraufhin entsprechende Berechtigungen. Ein weiteres vielversprechendes Modell ist das Attribute Based Access Control-(ABAC-)Modell, das auch als Policy Based Access Control (PBAC) bzw. Claims Based Access Control (CBAC) bekannt ist. In diesem Fall werden eine oder mehrere Regeln definiert, jede für eine auf einem oder mehreren Attributen beruhende Berechtigung; jedem Subjekt werden die Berechtigungen der Regeln zugewiesen, die von den entsprechenden Attributen erfüllt werden. Dies vereinfacht die Verwaltung des Zugriffssteuerungsprozesses, insbesondere in großen Organisationen (mit Tausenden von Subjekten und Berechtigungen).
  • Jedoch unterliegt der Zugriffssteuerungsprozess im Allgemeinen dynamischen Anforderungen (die sich mit einer verhältnismäßig hohen Häufigkeit ändern); zum Beispiel kann dies an Umstrukturierungs-, Akquisitions- und Outsourcing-Operationen sowie an regulatorischen Änderungen liegen. Daher werden zur Steuerung des Zugriffs auf das Informationstechnologiesystem verwendete Zugriffssteuerungsinformationen laufend überarbeitet (in dem Versuch, sie auf dem Stand der aktuellen Anforderungen zu halten). Im Einzelnen können, falls der Zugriffssteuerungsprozess auf dem RBAC-/ABAC-Modell beruht, Rollen-/Regelmining-Techniken angewendet werden, um typische Muster einer Subjekte-zu-Ressourcen-Zuordnung zu erkennen, die verwendet wird, um Rollen/Regeln entsprechend zu ändern. In jedem Fall ist diese Rollen-/Regelmining-Aktivität zeitaufwendig; in jedem Fall erfordert sie einen schweren manuellen Eingriff. All das Vorstehende macht die Überarbeitung der Zugriffssteuerungsinformationen recht kostspielig.
  • Daher wird die Überarbeitung der Zugriffssteuerungsinformationen im Allgemeinen nur als Reaktion auf Ereignisse durchgeführt, die als Ereignisse betrachtet werden, welche nennenswerte Änderungen mit sich bringen; zum Beispiel kann dies bei Umwälzungen in einem Organisationsdiagramm, einer Einbindung einer neuen Gesellschaft, einem Spinoff einer Sparte, der Schaffung eines neuen Strategiebereichs und so weiter der Fall sein.
  • Jedoch kann es vorkommen, dass trotz dessen, dass einige Ereignisse berechtigte Gründe für ein Überarbeiten der Zugriffssteuerungsinformationen zu sein schienen, die erzielten Ergebnisse ihre Kosten nicht wert waren; umgekehrt kann es vorkommen, dass Ereignisse, die nicht bedeutsam erschienen, vielmehr eine umfangreiche Änderung der Zugriffssteuerungsinformationen erforderlich gemacht hätten. In jedem Fall können selbst unbedeutendere Ereignisse, die einzeln keine nennenswerte Änderung mit sich bringen, dies tun, wenn sie über einen langen Zeitraum hinweg laufend eintreten.
  • Daher stellt die Feststellung des richtigen Zeitpunkts für ein Überarbeiten der Zugriffssteuerungsinformationen eine Herausforderung dar; in jedem Fall ist dies eine rein manuelle Aufgabe, die dann stark von persönlichen Fähigkeiten abhängt, fehleranfällig und kaum reproduzierbar ist. Folglich besteht ein Risiko, dass unnötige Überarbeitungen der Zugriffssteuerungsinformationen durchgeführt werden; dies wirkt sich nachteilig auf Verwaltungskosten des Informationstechnologiesystems aus. Umgekehrt besteht ein Risiko, dass sinnvolle Überarbeitungen der Zugriffssteuerungsinformationen verzögert werden; dies kann zu einer Gefährdung der Datensicherheit und/oder der Einhaltung gesetzlicher Vorschriften führen.
  • Eine vereinfachte Kurzdarstellung der vorliegenden Offenbarung wird hierin präsentiert, um ein grundlegendes Verständnis zu vermitteln; der alleinige Zweck dieser Kurzdarstellung besteht jedoch darin, einige Konzepte der Offenbarung in vereinfachter Form als Einleitung zu ihrer folgenden ausführlicheren Beschreibung vorzustellen, und sie ist weder als Identifizierung ihrer Schlüsselelemente noch als Skizzierung ihres Umfangs zu interpretieren.
  • Allgemein ausgedrückt beruht die vorliegende Offenbarung auf der Idee der Bereitstellung eines richtlinienbasierten Auslösens der Überarbeitung der Zugriffssteuerungsinformationen.
  • Im Einzelnen stellt eine Ausführungsform ein Verfahren bereit, um eine Pflege von Zugriffssteuerungsinformationen zur Steuerung des Zugriffs auf eine oder mehrere Ressourcen eines Informationstechnologiesystems durch ein oder mehrere Subjekte zu vereinfachen. Eine oder mehrere Triggerrichtlinien werden gemäß einem oder mehreren Richtlinienparametern in Bezug auf die Ressourcen, die Subjekte und/oder den Zugriff auf die Ressourcen durch die Subjekte ausgewertet. Eine Überarbeitung der Zugriffssteuerungsinformationen, die eine Mining-Aktivität umfasst, um die Subjekte den Ressourcen zuzuordnen, wird gemäß einem Ergebnis der Auswertung der Triggerrichtlinien ausgelöst.
  • Ein weiterer Aspekt stellt ein Computerprogramm zur Ausführung des Verfahrens bereit.
  • Ein weiterer Aspekt stellt ein entsprechendes Computerprogrammprodukt bereit.
  • Ein weiterer Aspekt stellt ein entsprechendes Steuerungsdatenverarbeitungssystem bereit.
  • Genauer gesagt, ein oder mehrere Aspekte der vorliegenden Offenbarung sind in den unabhängigen Ansprüchen und vorteilhafte Merkmale sind in den abhängigen Ansprüchen mit dem Wortlaut aller Ansprüche dargelegt, der durch Bezugnahme wörtlich hierin übernommen ist (wobei jedes vorteilhafte Merkmal unter Bezugnahme auf einen bestimmten Aspekt bereitgestellt wird, der mutatis mutandis für jeden anderen Aspekt gilt).
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • Unter Bezugnahme auf die 1A bis 1D ist ein Beispiel einer Anwendung der Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung gezeigt.
  • Wie in 1A gezeigt ist, wird ein Zugriffssteuerungsprozess ausgeführt, um den Zugriff auf ein Informationstechnologiesystem 100 zu steuern. Im Einzelnen werden Aktivitäten, die auf einer oder mehreren Ressourcen des Informationstechnologiesystems 100 durch verschiedene Subjekte, zum Beispiel (menschliche) Benutzer, durchgeführt werden können, gemäß entsprechenden Zugriffssteuerungsinformationen gesteuert. Zum Beispiel geben die Zugriffssteuerungsinformationen, falls der Zugriffssteuerungsprozess auf dem RBAC-Modell beruht, Rollen mit Berechtigungen zum Durchführen von Aktivitäten und ihre Zuweisung zu den Subjekten an, wobei die Zugriffssteuerungsinformationen, falls der Zugriffssteuerungsprozess auf dem ABAC-Modell beruht, Regeln angeben, die Berechtigungen zum Durchführen von Aktivitäten durch die Subjekte definieren, wenn sie von entsprechenden Attributen erfüllt werden.
  • In einer Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung werden eine oder mehrere Triggerrichtlinien bereitgestellt, um festzustellen, wann eine Überarbeitung der Zugriffssteuerungsinformationen notwendig ist. Jede Triggerrichtlinie beruht auf einem oder mehreren Richtlinienparametern, die sich auf die Ressourcen, die Subjekte und/oder den Zugriff auf die Ressourcen durch die Subjekte (zum Beispiel eine Anzahl von neuen von ihnen) beziehen. Im Laufe der Zeit, zum Beispiel in regelmäßigen Abständen, werden die Triggerrichtlinien und ihre Richtlinienparameter abgerufen.
  • Wie in 1B gezeigt ist, werden die Triggerrichtlinien gemäß den entsprechenden Richtlinienparametern ausgewertet; zum Beispiel wird jede Triggerrichtlinie ausgewertet, indem festgestellt wird, ob sie wahr oder falsch ist.
  • Wie in 1C gezeigt ist, wird ein Triggerindikator gemäß den Auswertungen der Triggerrichtlinien festgestellt; zum Beispiel handelt es sich bei dem Triggerindikator um einen Triggerindex, der berechnet wird, indem die Triggerrichtlinien, die wahr sind, gemäß entsprechenden Scores (die von ihrer Wirksamkeit beim Auslösen der Überarbeitung der Zugriffssteuerungsinformationen abhängen) gewichtet werden.
  • Wie in 1D gezeigt ist, wird der Triggerindikator ausgegeben (zum Beispiel angezeigt), um die Überarbeitung der Zugriffssteuerungsinformationen als Reaktion (zum Beispiel, wenn der Triggerindex einen Schwellenwert überschreitet) zu veranlassen, wobei dies im Einzelnen eine Mining-Aktivität, um die Subjekte den Ressourcen zuzuordnen (zum Beispiel ein Rollenmining für das RBAC-Modell und ein Regelmining für das ABAC-Modell), und eine mögliche, auf einem Ergebnis der Mining-Aktivität beruhende Aktualisierung der Zugriffssteuerungsinformationen einschließt.
  • Die vorstehend beschriebene Lösung vereinfacht das Feststellen des richtigen Zeitpunkts für ein Überarbeiten der Zugriffssteuerungsinformationen; zum Beispiel ist es jetzt möglich, zu ermitteln, ob die Überarbeitung der Zugriffssteuerungsinformationen notwendig ist, d.h. angemessen, sinnvoll oder erforderlich ist. Dieses Ergebnis wird weitgehend automatisch erreicht, so dass es äußerst genau, zuverlässig und reproduzierbar ist. Folglich wird das Risiko, dass unnötige Überarbeitungen der Zugriffssteuerungsinformationen durchgeführt werden, vermieden (oder zumindest weitgehend verringert); dies wirkt sich vorteilhaft auf Verwaltungskosten des Informationstechnologiesystems 100 aus. Umgekehrt wird das Risiko, dass sinnvolle Überarbeitungen der Zugriffssteuerungsinformationen verzögert werden, vermieden (oder zumindest weitgehend verringert); dies verhindert eine Gefährdung der Datensicherheit und/oder der Einhaltung gesetzlicher Vorschriften.
  • Unter Bezugnahme auf 2 ist eine schematische Darstellung einer Informationstechnologie-Infrastruktur 200 gezeigt, in der die Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung in die Praxis umgesetzt werden kann.
  • Die Informationstechnologie-Infrastruktur 200 hat eine auf einem Client/Server-Modell beruhende verteilte Architektur. Im Einzelnen stellen eine oder mehrere Server-Datenverarbeitungsmaschinen oder einfach Server 205 einer oder mehreren Client-Datenverarbeitungsmaschinen oder einfach Clients 210 Dienste bereit. Zu diesem Zweck tauschen die Clients 210 mit den Servern 205 über ein (Übertragungs-)Netzwerk 215 (das zum Beispiel auf dem Internet beruht) Daten aus. Einer oder mehrere der Server 205 sind Ressourcenserver, unterschieden mit der Bezugszahl 205r, die das vorstehend erwähnte Informationstechnologiesystem ausführen, dessen Zugriff geschützt werden muss; die Ressourcenserver 205r (die zum Beispiel Dienste wie Customer Relationship Management (CRM), Lightweight Directory Access Protocol (LDAP), Security Information and Event Management (SIEM), Software as a Service (SaaS), E-Mail und so weiter bereitstellen) verfügen über Hardware- und/oder Softwareressourcen (zum Beispiel Einheiten, Maschinen, Dateien, Programme, Webseiten und so weiter), auf die nur durch (berechtigte) Benutzer der Clients 210 zugegriffen werden darf. Einer der Server 205 (oder mehrere) ist ein Steuerungsserver, unterschieden mit der Bezugszahl 205c, der den Zugriff auf die Ressourcen der Ressourcenserver 205r durch die Benutzer der Clients 210 steuert (zum Beispiel, um Einheiten zu verwenden, Maschinen zu starten/anzuhalten, Dateien zu lesen/schreiben, Programme auszuführen, Webseiten herunterzuladen und so weiter).
  • Jede der vorstehend beschriebenen Datenverarbeitungsmaschinen (d.h. die Server 205 und die Clients 210) umfasst mehrere Einheiten, die untereinander durch eine Busstruktur 220 mit einer oder mehreren Ebenen verbunden sind (mit einer Architektur, die in geeigneter Weise gemäß dem Typ der Datenverarbeitungsmaschine 205, 210 skaliert ist). Im Einzelnen steuern ein oder mehrere Mikroprozessoren (µP) 225 den Betrieb der Datenverarbeitungsmaschine 205, 210; ein nicht flüchtiger Speicher (ROM) 230 speichert Basiscode für ein Bootstrapping der Datenverarbeitungsmaschine 205, 210 und ein flüchtiger Speicher (RAM) 235 wird von den Mikroprozessoren 225 als Arbeitsspeicher verwendet. Die Datenverarbeitungsmaschine 205, 210 ist mit einem Massenspeicher 240 ausgestattet, um Programme und Daten zu speichern (zum Beispiel Speichereinheiten von Rechenzentren, in denen die Server 205 ausgeführt sind, sowie Festplatten für die Clients 210). Überdies umfasst die Datenverarbeitungsmaschine 205, 210 mehrere Controller für Peripheriegeräte oder Eingabe-/Ausgabe-(E/A-)Einheiten 245; zum Beispiel weisen die Peripheriegeräte 245 eines jeden Servers 205 eine Netzwerkkarte auf, um den Server 205 in das entsprechende Rechenzentrum einzustecken und ihn dann mit einer Konsole des Rechenzentrums für seine Steuerung (zum Beispiel einem Personal Computer, der auch mit einem Laufwerk zum Lesen/Beschreiben von austauschbaren Speichereinheiten wie beispielsweise optischen Platten wie DVDs ausgestattet ist) und mit einem Switch/Router-Subsystem des Rechenzentrums für seinen Datenaustausch mit dem Netzwerk 215 zu verbinden, wohingegen die Peripheriegeräte 245 eines jeden Clients 210 eine Tastatur, eine Maus, einen Bildschirm, einen Netzwerkadapter (NIC) zur Verbindung mit dem Netzwerk 215 und ein Laufwerk zum Lesen/Beschreiben von austauschbaren Speichereinheiten aufweisen.
  • Unter Bezugnahme auf 3 sind die Hauptsoftwarekomponenten gezeigt, die verwendet werden können, um eine Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung auszuführen.
  • Im Einzelnen sind alle Softwarekomponenten (Programme und Daten) als Ganzes mit der Bezugszahl 300 bezeichnet. Die Softwarekomponenten 300 sind üblicherweise in dem Massenspeicher gespeichert und werden (zumindest teilweise) in den Arbeitsspeicher des Steuerungsservers geladen, wenn die Programme ausgeführt werden. Die Programme werden zunächst im Massenspeicher installiert, zum Beispiel aus austauschbaren Speichereinheiten oder aus dem Netzwerk (in der Figur nicht gezeigt). Hierbei kann jedes Programm ein Modul, ein Segment oder ein Teil von Code sein, das bzw. der eine oder mehrere ausführbare Anweisungen zur Ausführung der angegebenen logischen Funktion umfasst.
  • Ein Zugriffssteuerungsmanager 305 steuert den Zugriff auf das Informationstechnologiesystem von den Clients aus (in der Figur nicht gezeigt). Der Zugriffssteuerungsmanager 305 läuft im Hintergrund als ein Dienst; der Zugriffssteuerungsmanager 305 fängt jede beliebige Anforderung zum Durchführen einer ausgewählten Aktivität (auf einer entsprechenden Ressource des Informationstechnologiesystems) von einem Client ab und erlaubt oder verhindert sie gemäß einem entsprechenden Subjekt (zum Beispiel einem in dem Client angemeldeten Benutzer) gewährten Befugnissen. Der Zugriffssteuerungsmanager 305 greift (im Schreib-/Lesemodus) auf eine Berechtigungsdatenbank 310 und eine Identitätsdatenbank 315 zu, die die zur Steuerung des Zugriffs auf das Informationstechnologiesystem verwendeten Zugriffssteuerungsinformationen speichern. Im Einzelnen hat die Berechtigungsdatenbank 310, wenn der Zugriffssteuerungsmanager 305 auf dem RBAC-Modell beruht, einen Eintrag für jede Rolle (die durch eine entsprechende eindeutige Kennung gekennzeichnet ist); der Eintrag gibt eine oder mehrere Berechtigungen an, die der Rolle zum Durchführen von einer oder mehreren Aktivitäten zugewiesen ist/sind (zum Beispiel ist ein Entwickler berechtigt, Projekte zu lesen/schreiben, an denen er arbeitet, ein Teamleiter ist berechtigt, alle Projekte der Entwickler seines Teams zu lesen/schreiben, ein Manager ist berechtigt, alle Projekte der Entwickler, die ihm unterstellt sind, zu lesen, und so weiter).
  • Die Identitätsdatenbank 315 hat einen Eintrag für jeden bei dem Zugriffssteuerungsmanager 305 registrierten Benutzer (der durch eine entsprechende eindeutige Kennung gekennzeichnet ist); der Eintrag gibt ein Konto und Kennwort des Benutzers und eine oder mehrere dem Benutzer zugewiesene Rollen an. Alternativ, wenn der Zugriffssteuerungsmanager 305 auf dem ABAC-Modell: beruht, hat die Berechtigungsdatenbank 310 einen Eintrag für jede Regel. Der Eintrag gibt eine Berechtigung an, die zum Durchführen von einer (oder mehreren) Aktivität(en) gewährt oder verweigert wird, wenn die Regel erfüllt ist. Die Regel beruht auf einem oder mehreren Attributen; die Attribute können sich auf die Ressourcen (zum Beispiel ihren Typ, ihren Standort, ihre Klassifizierung und so weiter), auf die Benutzer (zum Beispiel Verantwortlichkeiten, Pflichten, Zuständigkeiten, Abteilung und so weiter), auf die Aktivitäten (zum Beispiel Lesen, Schreiben, Löschen, Genehmigen und so weiter) und/oder auf einen Kontext (zum Beispiel Datum, Uhrzeit und so weiter) beziehen. Zum Beispiel können die Regeln angeben, dass ein Mitarbeiter berechtigt ist, einen Bericht zu aktualisieren, wenn er sich an einem bestimmten Standort befindet, ein Entwickler berechtigt ist, ein Programm zu aktualisieren, wenn es sich in einem Testmodus befindet, kein Benutzer berechtigt ist, ein Dokument vor einem bestimmten Datum zu lesen, und so weiter. Die Identitätsdatenbank 315 hat einen Eintrag für jeden bei dem Zugriffssteuerungsmanager 305 registrierten Benutzer; der Eintrag gibt das Konto/Kennwort des Benutzers und eine oder mehrere Attribute davon an. Ein kommerzielles Beispiel des Zugriffssteuerungsmanagers 305 ist der „IBM Security Identity and Access Manager“ der IBM Corporation. IBM ist eine eingetragene Marke der International Business Machines Corporation.
  • In einer Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung löst ein Triggermanager 320 die Überarbeitung der Zugriffssteuerungsinformationen aus. Der Triggermanager 320 interagiert mit dem Zugriffssteuerungsmanager 305. Der Triggermanager 320 greift (im Schreib-/Lesemodus) auf eine Triggerrichtlinien-Repository 325 zu (die zum Beispiel manuell von einem Systemadministrator durch eine Benutzerschnittstelle des Triggermanagers 320 gefüllt wird). Die Triggerrichtlinien-Repository 325 hat einen Eintrag für jede Triggerrichtlinie (die durch eine entsprechende eindeutige Kennung gekennzeichnet ist); der Eintrag gibt die Triggerrichtlinie und den entsprechenden Score an. Die Triggerrichtlinie ist durch einen logischen Ausdruck definiert, der einen logischen Wert (wahr oder falsch) erzeugt; der logische Ausdruck umfasst eine oder mehrere Bedingungen (von jeden jede einen logischen Wert gemäß einem oder mehreren Richtlinienparametern erzeugt), die mit logischen Operatoren (wie beispielsweise UND, ODER, NICHT und so weiter) kombiniert werden können. Bei den Richtlinienparametern handelt es sich um Makroindikatoren in Bezug auf eine Bedingung des ganzen Informationstechnologiesystems oder einen relevanten Teil davon (d.h. nicht auf der Ebene von einzelnen Ressourcen/Benutzern); im Einzelnen können sich die Richtlinienparameter auf die Ressourcen (zum Beispiel die Anzahl neuer Ressourcen, die Anzahl neuer Ressourcen an einem bestimmten Standort und so weiter), auf die Benutzer (zum Beispiel die Anzahl neuer Benutzer, die Anzahl neuer Benutzer in einer Abteilung, die Anzahl von Änderungen in einem Organisationsdiagramm und so weiter) und/oder auf den Zugriff auf die Ressourcen durch die Benutzer (zum Beispiel die Anzahl neuer Rollen/Regeln, die Anzahl neuer Benutzer, die den Rollen/Regeln entsprechen, die Anzahl neuer Berechtigungen in den Rollen/Regeln, die Anzahl neuer Attribute in den Regeln und so weiter) beziehen.
  • Ein einfaches Beispiel einer Triggerrichtlinie kann sein: T P 1 = ( N u > T H u ) U N D ( N a > T H a ) ,
    Figure DE112020001688B4_0001
    wobei Nu die Anzahl neuer Benutzer ist, die seit einer letzten Auswertung der Triggerrichtlinie zu der Identitätsdatenbank hinzugefügt wurden, THu ein entsprechender Schwellenwert ist, Na die Anzahl neuer Konten ist, die seit der letzten Auswertung der Triggerrichtlinie zu der Personaldatenbank hinzugefügt wurden, THa ein entsprechender Schwellenwert ist und TP1 der logische Wert der Triggerrichtlinie ist. Die Triggerrichtlinie kann auch durch eine oder mehrere Auswertungsbedingungen bedingt sein, die erfüllt sein müssen, bevor die (bedingte) Triggerrichtlinie ausgewertet werden kann. Jede Auswertungsbedingung beruht auf der Fertigstellung einer Konditionierungsaufgabe (wie beispielsweise Prüfen von Informationen durch einen Manager, Erreichen eines bestimmten Fortschrittsgrades eines Projekts und so weiter). Die Auswertungsbedingung wiederum kann von einem logischen Ausdruck (der entweder Teil desjenigen, der den logischen Wert der Triggerrichtlinie definiert, oder unabhängig davon ist), wie beispielsweise in Form eines WENN/DANN-Konstrukts, abhängen.
  • Weitere Beispiele von Triggerrichtlinien mit einfachen Auswertungsbedingungen können sein: T P 2 = ( N r > T H r ) | E V ,
    Figure DE112020001688B4_0002
    T P 3 = ( N r > T H r ) | W E N N ( T P 3 ) d a n n   E V ,
    Figure DE112020001688B4_0003
    T P 4 = ( N r > T H r ) | W E N N ( N p > T H p ) d a n n   E V ,
    Figure DE112020001688B4_0004
    wobei Nr die Anzahl der Rollen ist, die den Benutzern einer bestimmten Abteilung zugewiesen sind, THr ein entsprechender Schwellenwert ist, Np die Anzahl von Berechtigungen der Rollen ist, die der Abteilung zugewiesen sind, THp ein entsprechender Schwellenwert ist, EV eine Prüfung der Rollen ist, die der Abteilung von einem Manager zugewiesen sind, und TP2, TP3 und TP2 die logischen Werte der Triggerrichtlinien sind. Daher wird im ersten Fall die Aufgabe EV durchgeführt, und sobald sie fertiggestellt wurde, wird der logische Ausdruck (Nr>THr) ausgewertet, um den logischen Wert TP2 der Triggerrichtlinie festzustellen, im zweiten Fall, wenn der logische Ausdruck (Nr>THr), der die Triggerrichtlinie TP3 definiert, wahr ist, wird die Aufgabe EV durchgeführt, und sobald sie fertiggestellt wurde, wird der logische Ausdruck (Nr>THr) erneut ausgewertet, um den logischen Wert TP3 der Triggerrichtlinie festzustellen, und im dritten Fall, wenn der logische Ausdruck (Np>THp) wahr ist, wird die Aufgabe EV durchgeführt, und sobald sie fertiggestellt wurde, wird der logische Ausdruck (Nr>THr) ausgewertet, um den logischen Wert TP4 der Triggerrichtlinie festzustellen. Der Score der Triggerrichtlinie ist eine Zahl (zum Beispiel von 0 bis 1), wobei ihr Score umso höher ist, je höher die Wirksamkeit der Triggerrichtlinie beim Auslösen der Überarbeitung der Zugriffssteuerungsinformationen ist. Überdies greift der Triggermanager 320 (im Lesemodus) auf eine oder mehrere Richtlinienparameterquellen 330 zu. Bei den Richtlinienparameterquellen 330 handelt es sich um Entitäten (wie beispielsweise Speicherstrukturen, Dienste, Anwendungen und so weiter), die die Werte der Richtlinienparameter bereitstellen; zum Beispiel weisen die Richtlinienparameterquellen 330 die Berechtigungsdatenbank 310, die Identitätsdatenbank 315, eine Inventardatenbank des Informationstechnologiesystems, eine Personaldatenbank einer zu dem Informationstechnologiesystem gehörenden Organisation und so weiter auf.
  • Der Triggermanager 320 greift (im Schreibmodus) auf eine Langzeitinformationsdatenbank 335 zu. Die Langzeitinformationsdatenbank 335 hat einen Eintrag für jede Überarbeitung der Zugriffssteuerungsinformationen, die durch die vorstehend erwähnte Lösung, zum Beispiel in den letzten 1 bis 5 Jahren, ausgelöst wurde. Der Eintrag gibt die (relevanten) Triggerrichtlinien an, die zu wahr ausgewertet wurden, was bedeutet, dass sie dazu beigetragen haben, die Überarbeitung der Zugriffssteuerungsinformationen auszulösen; überdies gibt der Eintrag eine aus ihrer Überarbeitung resultierende Änderung der Zugriffssteuerungsinformationen an (zum Beispiel die Rollen/Regeln, die erstellt, aktualisiert oder gelöscht wurden, die Berechtigungen, die für jede aktualisierte Rolle/Regel hinzugefügt, geändert oder entfernt wurden, die Rollen, die für jeden Benutzer hinzugefügt oder entfernt wurden, die Attribute, die für jede(n) Rolle/Benutzer hinzugefügt oder entfernt wurden und so weiter). Eine Einstufungsengine 340 aktualisiert die Scores der Richtlinien mit einem Feedback-Mechanismus. Zu diesem Zweck greift die Einstufungsengine 240 (im Lesemodus) auf die Langzeitdatenbank 335 zu, interagiert mit dem Zugriffssteuerungsmanager 305 und greift (im Schreib-/Lesemodus) auf die Triggerrichtliniendatenbank 325 zu.
  • Der Triggermanager 320 greift (im Schreibmodus) auf eine Triggerindextabelle 345 zu, die (einen letzten Wert) des Triggerindex speichert. Ein Ausgabelaufwerk 350 gibt einen Hinweis auf den Triggerindex aus, zum Beispiel, indem es mit einem Bildschirmlaufwerk, einem E-Mail-Client, dem Zugriffssteuerungsmanager 305 und so weiter interagiert. Das Ausgabelaufwerk 350 greift (im Lesemodus) auf die Triggerindextabelle 345 zu.
  • Unter Bezugnahme auf die 4A bis 4C ist ein Aktivitätsdiagramm gezeigt, das den Ablauf von Aktivitäten in Bezug auf eine Ausführung der Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung beschreibt.
  • Im Einzelnen stellt das Aktivitätsdiagramm einen beispielhaften Prozess dar, der verwendet werden kann, um die Überarbeitung der Zugriffssteuerungsinformationen mit einem Verfahren 400 auszulösen. In dieser Hinsicht kann jeder Block einer oder mehreren ausführbaren Anweisungen zur Ausführung der angegebenen logischen Funktion auf dem Steuerungsserver entsprechen.
  • Wie in 4A gezeigt ist, geht der Prozess von einer Prüfung am Block 402 zu einem Abruf am Block 404 über, wenn ein Ereignis eintritt, das eine Prüfoperation für die Notwendigkeit des Überarbeitens der Zugriffssteuerungsinformationen startet. Zum Beispiel kann dies nach einer nennenswerten Änderung der Richtlinienparameter, die die Triggerrichtlinien definieren (wie beispielsweise die Änderung von mehr als 10 bis 20 %), und/oder in regelmäßigen Abständen (zum Beispiel alle 1 bis 7 Tage) geschehen. Der Triggermanager ruft am Block 404 die Triggerrichtlinien und ihre Scores aus der entsprechenden Datenbank ab. Es erfolgt dann der Eintritt in eine Schleife, um die Triggerrichtlinien zu verarbeiten. Die Schleife beginnt am Block 406, wobei der Triggermanager eine (aktuelle) Triggerrichtlinie berücksichtigt (wobei er bei einer ersten in einer beliebigen Reihenfolge startet). Der Triggermanager am Block 408 ruft die in der Triggerrichtlinie angegebenen Richtlinienparameter ab; die Richtlinienparameter werden aus den Richtlinienparameterquellen, möglicherweise mit einem Cache-Mechanismus, abgerufen.
  • Der Ablauf der Aktivität verzweigt am Block 410 gemäß dem Typ der Triggerrichtlinie. Wenn die Triggerrichtlinie bedingt ist, erfolgt der Eintritt in eine weitere Schleife, um die Auswertungsbedingungen der (bedingten) Triggerrichtlinie zu verarbeiten. Die Schleife beginnt am Block 412, wo der Triggermanager eine (aktuelle) Auswertungsbedingung berücksichtigt (wobei er bei einer ersten in der entsprechenden Reihenfolge startet, die in der Triggerrichtlinie angegeben ist). Der Ablauf der Aktivität verzweigt am Block 414 gemäß dem Typ der Auswertungsbedingung. Wenn die Auswertungsbedingung von einem logischen Ausdruck abhängt, wertet der Triggermanager am Block 416 diesen aus. Der Ablauf der Aktivität verzweigt am Block 418 gemäß dem von dem logischen Ausdruck erzeugten logischen Wert. Wenn der logische Ausdruck zu wahr ausgewertet wurde, schaltet der Prozess hinab in den Block 420; der gleiche Punkt wird auch direkt vom Block 414 aus erreicht, wenn die Auswertungsbedingung nicht von einem logischen Ausdruck abhängt. An diesem Punkt wird die Ausführung der Konditionierungsaufgabe veranlasst (zum Beispiel, indem eine entsprechende Benachrichtigung an eine Person, ein entsprechender Befehl an eine Softwareanwendung und so weiter gesendet wird). Der Triggermanager tritt dann in eine inaktive Schleife am Block 422 ein, wo er auf die Fertigstellung der Konditionierungsaufgabe wartet. Sobald die Konditionierungsaufgabe fertiggestellt wurde (was zum Beispiel durch eine entsprechende Nachricht mitgeteilt wird) und in jedem Fall nach einem vordefinierten Zeitlimit schaltet der Prozess hinab in den Block 424; der gleiche Punkt wird auch direkt vom Block 418 aus erreicht, wenn der logische Ausdruck zu falsch ausgewertet wurde. Der Triggermanager prüft nun, ob eine letzte Auswertungsbedingung berücksichtigt wurde. Wenn nicht, kehrt der Prozess zum Block 412 zurück, um die gleiche Operation an einer nächsten Auswertungsbedingung der Triggerrichtlinie zu wiederholen. Umgekehrt wird, sobald alle Auswertungsbedingungen der Triggerrichtlinie berücksichtigt wurden, die entsprechende Schleife verlassen, indem in den Block 426 hinab geschaltet wird; der gleiche Punkt wird auch direkt vom Block 410 aus erreicht, wenn die Triggerrichtlinie nicht bedingt ist.
  • Der Triggermanager wertet nun den logischen Ausdruck der Triggerrichtlinie aus, um seinen logischen Wert am Block 426 festzustellen (immer auf falsch gesetzt, wenn eine beliebige Konditionierungsaufgabe der Triggerrichtlinie aus irgendeinem Grund nicht fertiggestellt wurde, d.h., falscher logischer Ausdruck oder Zeitlimitablauf), wobei dessen logischer Wert in einer Arbeitsvariablen gespeichert wird. Der Triggermanager am Block 428 prüft, ob eine letzte Triggerrichtlinie verarbeitet wurde. Wenn nicht, kehrt der Prozess zum Block 406 zurück, um die gleiche Operation an einer nächsten Triggerrichtlinie zu wiederholen. Umgekehrt wird, sobald alle Triggerrichtlinien verarbeitet wurden, die entsprechende Schleife verlassen, indem in den Block 430 hinab geschaltet wird.
  • Wie in 4B gezeigt ist, stellt der Triggermanager am Block 430 den Triggerindex gemäß den logischen Werten und den Scores der Triggerrichtlinien (in geeigneter Weise normiert) fest. Zum Beispiel wird der Triggerindex berechnet, indem die folgende Formel angewendet wird: T I = i = 0 T O T p T p i R i T O T p
    Figure DE112020001688B4_0005
    wobei TOTp eine Gesamtzahl der Triggerrichtlinien ist, TPi ein numerischer Wert ist, der dem logischen Wert der i-ten Triggerrichtlinie entspricht (abgerufen aus der entsprechenden Arbeitsvariablen), wie beispielsweise 1 für wahr und 0 für falsch, Ri der Score der i-ten Triggerrichtlinie ist und TI der Wert des Triggerindex ist (ähnliche Überlegungen gelten, wenn der Triggerindex inkrementell während der Auswertung der Triggerrichtlinien berechnet wird). Auf diese Weise hat der Triggerindex einen Wert, der 0 bis 1 beträgt. Im Einzelnen tragen nur die zu wahr ausgewerteten Triggerrichtlinien zum Triggerindex bei, wobei der Beitrag dieser Triggerrichtlinien proportional zu ihrem Score ist.
  • Der Triggermanager am Block 432 vergleicht den Triggerindex mit einem (Trigger-)Schwellenwert (zum Beispiel 0,5 bis 0,7). Wenn der Triggerindex (möglicherweise streng) höher als der Trigger-Schwellenwert ist, gibt der Triggermanager am Block 434 einen Hinweis aus, eine Überarbeitung der Zugriffssteuerungsinformationen auszulösen; zum Beispiel sendet der Triggermanager eine Triggernachricht an den Systemadministrator (wie beispielsweise über E-Mail, SMS und so weiter). Die Triggernachricht gibt eine Notwendigkeit des Überarbeitens der Zugriffssteuerungsinformationen an; die Triggernachricht kann auch zusätzliche Informationen über den Grund dafür aufweisen, wie beispielsweise den Triggerindex, die Triggerrichtlinien mit den höchsten Scores, die zu wahr ausgewertet wurden, und so weiter. Gleichzeitig fügt der Triggermanager am Block 436 einen neuen Eintrag zu der Langzeitdatenbank für diese Überarbeitung der Zugriffssteuerungsinformationen hinzu (zum Beispiel durch einen entsprechenden Zeitstempel gekennzeichnet); der Triggermanager fügt dann einen Hinweis auf die Triggerrichtlinien, die zu wahr ausgewertet wurden (und dann dazu beigetragen haben, die Überarbeitung der Zugriffssteuerungsinformationen auszulösen), zu dem neuen Eintrag hinzu. Der Prozess kehrt nun vom Block 436 zum Block 402 zurück (wo er auf ein nächstes Ereignis wartet, das den Prüfprozess auslöst), oder kehrt direkt vom Block 432 zu diesem zurück, wenn der Triggerindex (möglicherweise streng) niedriger als der Trigger-Schwellenwert ist (und dann keine Überarbeitung der Zugriffssteuerungsinformationen notwendig ist).
  • Immer wenn die Überarbeitung der Zugriffssteuerungsinformationen ausgelöst wurde, befindet sich der Zugriffssteuerungsmanager am Block 438 in einem Wartezustand, in dem er auf deren Fertigstellung wartet. Im Einzelnen schließt die Überarbeitung eine Mining-Aktivität ein, bei der eine Zuordnung der Benutzer zu den Ressourcen gemäß typischen Mustern der Benutzer, die auf die Ressourcen zugreifen müssen, erkannt wird; zum Beispiel kann die Mining-Aktivität mit einem Bottom-up-Ansatz, einem Top-down-Ansatz oder einem By-example-Ansatz durchgeführt werden. Eine oder mehrere auf die Zugriffssteuerungsinformationen anzuwendende Änderungen werden dann gemäß einem Ergebnis der Mining-Aktivität festgestellt, d.h., die Zuordnung Benutzer-zu-Ressourcen (zum Beispiel bei den Rollen und den den Rollen zugewiesenen Benutzern für das RBAC-Modell oder bei den Rollen und den Attributen der Rollen/Benutzer für das ABAC-Modell). Die Berechtigungsdatenbank und/oder die Identitätsdatenbank werden dann gemäß den Änderungen aktualisiert, die sich aus der Mining-Aktivität ergeben (zum Beispiel, indem Rollen/Regeln hinzugefügt, Rollen zugewiesene Benutzer aktualisiert, Regeln aktualisiert, Attribute hinzugefügt/gelöscht, Rollen/Regeln gelöscht werden und so weiter). Der Prozess geht zum Block 440 über, sobald der Triggermanager eine Benachrichtigung über die Fertigstellung der Überarbeitung der Zugriffssteuerungsinformationen empfängt (zum Beispiel über einen manuell vom Systemadministrator eingegebenen Befehl). Als Reaktion darauf ruft der Triggermanager einen Hinweis auf die Aktualisierungen, die auf die Zugriffssteuerungsinformationen angewendet wurden, aus der Berechtigungsdatenbank und der Identitätsdatenbank (durch den Zugriffssteuerungsmanager) ab. Der Triggermanager am Block 442 speichert diese Aktualisierungen in dem entsprechenden Eintrag der Langzeitdatenbank. Der Prozess kehrt dann zum Block 438 zurück, wo er auf die Fertigstellung einer nächsten Überarbeitung der Zugriffssteuerungsinformationen wartet.
  • Auf vollkommen unabhängige Weise geht der Prozess vom Einstufen am Block 444 zum Abrufen am Block 446 über, sobald ein (Einstufungs-)Zeitraum zum Durchführen einer Einstufungsoperation der Triggerrichtlinien, um ihre Scores zu aktualisieren, abläuft (zum Beispiel alle 7 bis 14 Tage). Als Reaktion darauf ruft die Einstufungsengine die Triggerrichtlinien und ihre Scores aus der entsprechenden Datenbank ab. Es erfolgt dann der Eintritt in eine Schleife, um die Triggerrichtlinien zu verarbeiten. Die Schleife beginnt am Block 448, wobei die Einstufungsengine eine (aktuelle) Triggerrichtlinie berücksichtigt (wobei sie bei einer ersten in einer beliebigen Reihenfolge startet). Die Einstufungsengine am Block 450 ruft (aus der Langzeitdatenbank) einen Hinweis auf die betroffenen Steuerelemente, sofern vorhanden, ab, die von der Triggerrichtlinie betroffen waren; bei den betroffenen Steuerelementen handelt es sich um die Rollen/Regeln, die während einer jeden Überarbeitung der Zugriffssteuerungsinformationen erstellt und/oder aktualisiert wurden, bei denen die (relevante) Triggerrichtlinie dazu beigetragen hat, ihre Überarbeitung auszulösen (d.h., sie wurde zu wahr ausgewertet).
  • Es erfolgt ein Eintritt in eine weitere Schleife, um die betroffenen Steuerelemente der Triggerrichtlinie zu verarbeiten. Die Schleife beginnt am Block 452, wo die Einstufungsengine prüft, ob noch ein weiteres betroffenes Steuerelement zu verarbeiten ist. Wenn ja, berücksichtigt die Einstufungsengine am Block 454 ein (aktuelles) betroffenes Steuerelement, das noch zu verarbeiten ist (wobei sie bei einem ersten in einer beliebigen Reihenfolge startet). Die Einstufungsengine am Block 456 ruft (aus der Berechtigungsdatenbank durch den Zugriffssteuerungsmanager) einen Lebensdauerstatus des betroffenen Steuerelements ab. Der Ablauf der Aktivität verzweigt am Block 458 gemäß diesem Lebensdauerstatus. Wenn das betroffene Steuerelement nicht mehr vorhanden ist, setzt die Einstufungsengine am Block 460 einen Lebensdauer-Indikator des betroffenen Steuerelements auf einen niedrigen Wert, zum Beispiel 0. Umgekehrt setzt die Einstufungsengine, wenn das betroffene Steuerelement noch vorhanden ist, am Block 462 den Lebensdauer-Indikator des betroffenen Steuerelements auf einen hohen Wert, zum Beispiel 1. Im letzteren Fall berechnet die Einstufungsengine am Block 464 auch einen Bereichsindikator des betroffenen Steuerelements.
  • Der Bereichsindikator hängt von den Berechtigungen des betroffenen Steuerelements und/oder den entsprechenden Benutzern ab, d.h. den Benutzern, die der (betroffenen) Rolle zugewiesen sind, oder den Benutzern, deren Attribute mit den Attributen der (betroffenen) Regel übereinstimmen (gemäß durch den Zugriffssteuerungsmanager aus der Rollendatenbank und der Identitätsdatenbank abgerufenen Informationen). Zum Beispiel wird der Bereichsindikator berechnet, indem die folgende Formel angewendet wird: S = N u T O T u i = 0 T O T a N p ( A i ) T O T p ( A i ) 1 T O T a
    Figure DE112020001688B4_0006
    wobei Nu die Anzahl der Benutzer ist, die der betroffenen Rolle entsprechen, TOTu die Gesamtzahl der Benutzer ist, TOTa die Gesamtzahl der (geschützten) Ressourcen des Informationstechnologiesystems wie beispielsweise Softwareanwendungen ist, Np(Ai) die Anzahl der Berechtigungen des betroffenen Steuerelements ist, die zu der i-ten Softwareanwendung gehören, TOTp(Ai) die Gesamtzahl der Berechtigungen ist, die zu der i-ten Softwareanwendung gehören, und S der Wert des Score-Indikators ist (der dann 0 bis 1 beträgt). Auf diese Weise ist der Bereichsindikator des betroffenen Steuerelements umso höher, je höher die Benutzer sind, die dem betroffenen Steuerelement und/oder den Berechtigungen des betroffenen Steuerelements entsprechen.
  • Der Prozess kehrt dann zum Block 452 zurück, um die gleichen Operationen zu wiederholen. Unter erneuter Bezugnahme auf den Block 452 schaltet der Prozess hinab in den Block 466, sobald kein weiteres betroffenes Steuerelement mehr zu verarbeiten ist (immer wahr, wenn die Triggerrichtlinie kein betroffenes Steuerelement hat, da sie zu keiner Überarbeitung der Zugriffssteuerungsinformationen beigetragen hat).
  • An diesem Punkt berechnet die Einstufungsengine den Score der Triggerrichtlinie gemäß den Lebensdauer-Indikatoren und den Bereichsindikatoren ihrer betroffenen Steuerelemente. Zum Beispiel wird der Score berechnet, indem die folgende Formel angewendet wird: W = i = 0 T O T r L ( r i ) S ( r i ) 1 T O T r
    Figure DE112020001688B4_0007
    wobei TOTr die Gesamtzahl der betroffenen Steuerelemente ist, L(ri) der Lebensdauer-Indikator des i-ten betroffenen Steuerelements ist, S(ri) der Bereichsindikator des i-ten betroffenen Steuerelements ist und W der Score der Triggerrichtlinie ist (der dann 0 bis 1 beträgt). Auf diese Weise ist der Score der Triggerrichtlinie umso höher, je höher die Lebensdauer-Indikatoren und/oder die Bereichsindikatoren der betroffenen Steuerelemente sind.
  • Alternativ ist es ist möglich, den Score inkrementell zu aktualisieren. Zum Beispiel wird der Score für jedes betroffene Steuerelement verringert, wenn das betroffene Steuerelement nicht mehr vorhanden ist, er wird erhöht, wenn das betroffene Steuerelement noch vorhanden ist, er wird verringert, wenn der Bereichsindikator (möglicherweise streng) niedriger als ein (Bereichs-)Schwellenwert ist, und er wird erhöht, wenn der Bereichsindikator (möglicherweise streng) niedriger als der Bereichsschwellenwert ist; die Dekremente und Inkremente erfolgen um entsprechende Deltawerte, zum Beispiel 1 bis 5 % des Scores bzw. 1 bis 5 % seines Komplements zu 1.
  • In beiden Fällen speichert die Einstufungsengine am Block 468 den (neuen) Score der Triggerrichtlinie in dem entsprechenden Eintrag der Triggerrichtliniendatenbank (indem sie seinen bisherigen Wert ersetzt, der manuell oder auf einen Standardwert initialisiert wird). Die Einstufungsengine am Block 470 prüft, ob eine letzte Triggerrichtlinie verarbeitet wurde. Wenn nicht, kehrt der Prozess zum Block 448 zurück, um die gleichen Operationen an einer nächsten Triggerrichtlinie zu wiederholen. Umgekehrt wird, sobald alle Triggerrichtlinien verarbeitet wurden, die entsprechende Schleife verlassen, indem zum Block 444 zurückgekehrt wird, wo auf einen nächsten Ablauf des Einstufungszeitraums gewartet wird.
  • Folglich passen sich die Scores der Triggerrichtlinien selbst an ihre Wirksamkeit beim Auslösen der Überarbeitung der Zugriffssteuerungsinformationen an. Tatsächlich hat jeder beliebige Überarbeitungsprozess, bei dem eine oder mehrere relevante Triggerrichtlinien zur Auslösung seiner Ausführung beigetragen haben, eine Aktualisierung der Zugriffssteuerungsinformationen eingeschlossen; im Einzelnen wurden möglicherweise ein oder mehrere betroffene Steuerelemente erstellt/aktualisiert. Für jedes betroffene Steuerelement, wenn es zu einem späteren (Einstufungs-)Zeitpunkt bei der Durchführung des Einstufungsprozesses immer noch vorhanden ist, bedeutet dies, dass seine Zweckmäßigkeit wahrscheinlich hoch ist; umgekehrt, wenn das betroffene Steuerelement zu dem späteren Einstufungszeitpunkt nicht mehr vorhanden ist, bedeutet dies, dass seine Zweckmäßigkeit wahrscheinlich gering ist. Noch wichtiger, wenn das betroffene Steuerelement einen großen Bereich hat (der zum Beispiel durch eine hohe Anzahl von Berechtigungen und/oder eine hohe Anzahl von entsprechenden Benutzern definiert ist), so bedeutet dies, dass seine Zweckmäßigkeit wahrscheinlich hoch ist; umgekehrt, wenn das betroffene Steuerelement einen begrenzten Bereich hat (der zum Beispiel durch eine niedrige Anzahl von Berechtigungen und/oder eine niedrige Anzahl von entsprechenden Benutzern definiert ist), bedeutet dies, dass seine Zweckmäßigkeit wahrscheinlich gering ist. Wenn die meisten betroffenen Steuerelemente als Steuerelemente mit einer hohen Zweckmäßigkeit betrachtet werden, ist wahrscheinlich auch die Überarbeitung sinnvoll gewesen und die relevanten Triggerrichtlinien (die dazu beigetragen haben, sie auszulösen) sind wahrscheinlich sehr effektiv; in diesem Fall werden die Scores der relevanten Triggerrichtlinien erhöht, so dass sie in den nächsten Prüfprozessen ein höheres Gewicht haben werden. Umgekehrt, wenn die meisten betroffenen Steuerelemente als Steuerelemente mit einer geringen Zweckmäßigkeit betrachtet werden, ist wahrscheinlich auch die Überarbeitung unnötig gewesen und die relevanten Triggerrichtlinien (die dazu beigetragen haben, sie auszulösen) sind dann wahrscheinlich nur wenig effektiv; in diesem Fall werden die Scores der relevanten Triggerrichtlinien verringert, so dass sie in den nächsten Prüfprozessen ein geringeres Gewicht haben werden.
  • Zum Beispiel stellt eine Ausführungsform ein Verfahren bereit, um eine Pflege von Zugriffssteuerungsinformationen zu vereinfachen. Jedoch können die Zugriffssteuerungsinformationen von einem beliebigen Typ sein (zum Beispiel auf Rollen für ein RBAC-Modell, Regeln und Attributen für ein ABAC-Modell, Tabellen für ein Access Control List-(ACL-)Modell und so weiter beruhen), um jede beliebige Art von Steuerung nachzuweisen (zum Beispiel jede Aktivität zu ermöglichen/zu verweigern, weitere Aktionen anzufordern, wie beispielsweise ein Kennwort zweiter Ebene einzugeben, um einige Aktivitäten zu ermöglichen, und so weiter).
  • In einer Ausführungsform dienen die Zugriffssteuerungsinformationen zur Steuerung des Zugriffs auf eine oder mehrere Ressourcen eines Informationstechnologiesystems durch ein oder mehrere Subjekte. Jedoch kann das Informationstechnologiesystem von einem beliebigen Typ (zum Beispiel auf einem lokalen, Weitverkehrs-, globalen, Mobilfunk- oder Satellitennetzwerk beruhend, einen beliebigen Typ von drahtgebundenen und/oder drahtlosen Verbindungen nutzend, mit einer eigenständigen Architektur und so weiter) mit einer beliebigen Anzahl und einem beliebigen Typ von Ressourcen (zum Beispiel teilweisen, verschiedenen oder zusätzlichen Ressourcen im Hinblick auf die vorstehend genannten) sein, deren Zugriff durch eine beliebige Anzahl und einen beliebigen Typ von Subjekten (zum Beispiel Benutzern, Programmen, Diensten und so weiter) gesteuert werden muss.
  • In einer Ausführungsform umfasst das Verfahren die folgenden, durch ein Steuerungsdatenverarbeitungssystem ausgeführten Schritte. Jedoch kann das Steuerungsdatenverarbeitungssystem von einem beliebigen Typ sein (siehe nachstehend), und die Schritte können jederzeit durchgeführt werden (zum Beispiel als Reaktion auf eine beliebige nennenswerte Änderung der Zugriffssteuerungsinformationen, in regelmäßigen Abständen, nach manueller Anforderung oder einer beliebigen Kombination daraus und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Abrufen (durch das Steuerungsdatenverarbeitungssystem) von einer oder mehreren Triggerrichtlinien. Jedoch können die Triggerrichtlinien in beliebiger Anzahl und in beliebiger Weise abgerufen werden (zum Beispiel aus einer beliebigen Speicherstruktur wie beispielsweise einer Datenbank, einer Datei und dergleichen, über eine Lese-/Abfrageoperation, einen lokalen/Fernbefehl und so weiter).
  • In einer Ausführungsform beruht jede Triggerrichtlinie auf einem oder mehreren Richtlinienparametern in Bezug auf die Ressourcen, die Subjekte und/oder den Zugriff auf die Ressourcen durch die Subjekte. Jedoch kann die Triggerrichtlinie auf einer beliebigen Anzahl und einem beliebigen Typ von Richtlinienparametern (zum Beispiel teilweisen, verschiedenen oder zusätzlichen Richtlinienparametern im Hinblick auf die vorstehend erwähnten, die beliebige Makroinformationen in Bezug auf die Ressourcen, die Subjekte, den Zugriff auf die Ressourcen durch die Subjekte, eine beliebige Kombination daraus und so weiter bereitstellen) in beliebiger Weise (zum Beispiel über einen logischen Ausdruck, eine Regel, eine Anweisung und so weiter) beruhen.
  • In einer Ausführungsform umfasst das Verfahren ein Abrufen (durch das Steuerungsdatenverarbeitungssystem) der Richtlinienparameter. Jedoch können die Richtlinienparameter in beliebiger Weise (zum Beispiel aus teilweisen, verschiedenen oder zusätzlichen Richtlinienparameterquellen im Hinblick auf die vorstehend erwähnten, über Lese-/Abfrageoperationen, lokale/Fernbefehle und so weiter) abgerufen werden.
  • In einer Ausführungsform umfasst das Verfahren ein Auswerten (durch das Steuerungsdatenverarbeitungssystem) der Triggerrichtlinien gemäß den entsprechenden Richtlinienparametern. Jedoch kann diese Operation in beliebiger Weise durchgeführt werden (zum Beispiel, indem ein logischer Ausdruck ausgewertet, eine Formel berechnet, eine Regel angewendet wird, Analysetechniken genutzt werden und so weiter), um einen beliebigen Wert einer jeden Triggerrichtlinie festzustellen (zum Beispiel einen logischen Wert, eine diskrete Größe, einen numerischen Wert und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Feststellen (durch das Steuerungsdatenverarbeitungssystem) eines Triggerindikators gemäß einem Ergebnis des Auswertens der Triggerrichtlinien. Jedoch kann der Triggerindikator von einem beliebigen Typ sein (zum Beispiel ein logischer Wert, ein diskreter Wert, der eine beliebige Anzahl von Größen annehmen kann, ein numerischer Wert und so weiter) und er kann in beliebiger Weise festgestellt werden (zum Beispiel, indem eine beliebige, auf den Werten der Triggerrichtlinien beruhende Formel berechnet wird, beliebige Schwellenwertbildungstechniken angewendet, kognitive Techniken genutzt werden und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Ausgeben (durch das Steuerungsdatenverarbeitungssystem) eines Hinweises auf den Triggerindikator. Jedoch kann der Triggerindikator in beliebiger Weise ausgegeben (zum Beispiel angezeigt, an (eine) beliebige Person(en) übertragen, einer beliebigen Softwareanwendung bereitgestellt und so weiter) sowie in beliebiger Form ausgegeben werden (zum Beispiel durch seinen Wert, einen erklärenden Text, einen Alarm oder eine beliebige Kombination daraus und so weiter).
  • In einer Ausführungsform wird eine Überarbeitung der Zugriffssteuerungsinformationen als Reaktion auf den Triggerindikator ausgelöst. Jedoch kann die Überarbeitung der Zugriffssteuerungsinformationen in beliebiger Weise (zum Beispiel, indem sie (einer) beliebigen Person(en) vorgeschlagen, automatisch gestartet wird und so weiter) gemäß dem Triggerindikator in beliebiger Weise (zum Beispiel, indem einfach angezeigt wird, dass sie notwendig ist, eine auf ihrem Wert beruhende, entsprechende Prioritätsstufe bereitgestellt wird und so weiter) ausgelöst werden.
  • In einer Ausführungsform umfasst die Überarbeitung der Zugriffssteuerungsinformationen eine Mining-Aktivität, um die Subjekte den Ressourcen zuzuordnen. Jedoch kann die Mining-Aktivität von einem beliebigen Typ sein (zum Beispiel Rollenmining, Regelmining und so weiter) und in beliebiger Weise durchgeführt werden (zum Beispiel manuell, mit Hilfe von automatischen Werkzeugen, wie beispielsweise auf Analysetechniken beruhend, und so weiter).
  • In einer Ausführungsform umfasst die Überarbeitung der Zugriffssteuerungsinformationen eine mögliche, auf einem Ergebnis der Mining-Aktivität beruhende Aktualisierung der Zugriffssteuerungsinformationen. Jedoch können die Zugriffssteuerungsinformationen in beliebiger Weise (zum Beispiel, indem Rollen, Regeln, Attribute, Identitäten, Zugriffssteuerungslisten und so weiter in einer beliebigen Speicherstruktur, wie beispielsweise einer oder mehreren Datenbanken oder Dateien und so weiter, hinzugefügt/aktualisiert/gelöscht werden), bis hin zu keiner, aktualisiert werden.
  • In einer Ausführungsform umfasst das Verfahren ein Durchführen der Mining-Aktivität als Reaktion darauf, dass der Triggerindikator einen positiven Wert hat, der auf eine Notwendigkeit der Überarbeitung hinweist. Jedoch kann der positive Wert des Triggerindikators von einem beliebigen Typ sein (zum Beispiel anzeigen, dass die Überarbeitung einfach notwendig ist, dass die Überarbeitung angemessen, sinnvoll oder erforderlich ist und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Aktualisieren der Zugriffssteuerungsinformationen gemäß dem Ergebnis der Mining-Aktivität. Jedoch können die Zugriffssteuerungsinformationen in beliebiger Weise gemäß dem Ergebnis der Mining-Aktivität aktualisiert werden (zum Beispiel manuell, automatisch, unter Annahme vorgeschlagener Aktualisierungen und so weiter).
  • In einer Ausführungsform umfassen die Zugriffssteuerungsinformationen einen Hinweis auf eine oder mehrere Rollen. Jedoch können die Rollen in beliebiger Zahl vorhanden und von einem beliebigen Typ sein (zum Beispiel Entscheidungsträger, Manager, Entwickler, Buchhalter und so weiter).
  • In einer Ausführungsform hat jede Rolle eine oder mehrere Berechtigungen, um eine oder mehrere Aktivitäten in dem Informationstechnologiesystem durchzuführen. Jedoch können die Berechtigungen/Aktivitäten in beliebiger Zahl vorhanden und von einem beliebigen Typ sein (zum Beispiel teilweise, verschiedene oder zusätzliche Berechtigungen/Aktivitäten im Hinblick auf die vorstehend erwähnten).
  • In einer Ausführungsform umfassen die Zugriffssteuerungsinformationen einen Hinweis auf eine oder mehrere der einem jeden der Subjekte zugewiesenen Rollen. Jedoch kann jedem Subjekt eine beliebige Anzahl von Rollen zugewiesen werden.
  • In einer Ausführungsform handelt es sich bei der Mining-Aktivität um ein Rollenmining. Jedoch kann das Rollenmining von einem beliebigen Typ sein (zum Beispiel Bottom-up, Top-down, By-example, was zu einem Hinzufügen von Rollen, Aktualisieren von Berechtigungen/Zuweisungen von Rollen, Löschen von Rollen und so weiter führt).
  • In einer Ausführungsform umfassen die Zugriffssteuerungsinformationen eine oder mehrere Regeln. Jedoch können die Rollen in beliebiger Zahl vorhanden und von einem beliebigen Typ sein (zum Beispiel WENN/DANN-Konstrukte, logische Ausdrücke und so weiter).
  • In einer Ausführungsform beruht jede Regel auf einem oder mehreren Attributen. Jedoch können die Attribute in beliebiger Zahl vorhanden und von einem beliebigen Typ sein (zum Beispiel in Bezug auf die Ressourcen, die Subjekte, die Aktivitäten, den Kontext oder eine beliebige Kombination daraus).
  • In einer Ausführungsform gibt jede Regel mindestens eine Berechtigung in Bezug auf eine Aktivität in dem Informationstechnologiesystem an, wenn die Regel erfüllt ist. Jedoch kann die Regel eine beliebige Anzahl und einen beliebigen Typ von Berechtigungen (siehe vorstehend) angeben, die sich in beliebiger Weise auf die Aktivitäten beziehen (zum Beispiel Ermöglichen, Verweigern und so weiter).
  • In einer Ausführungsform handelt es sich bei der Mining-Aktivität um ein Regelmining. Jedoch kann das Regelmining von einem beliebigen Typ sein (zum Beispiel Bottom-up, Top-down, By-example, was zu einem Hinzufügen/Aktualisieren/Löschen von Regeln, einer Änderung von Attributen und so weiter führt).
  • In einer Ausführungsform umfasst das Verfahren ein Feststellen (durch das Steuerungsdatenverarbeitungssystem) des Triggerindikators gemäß entsprechenden, den Triggerrichtlinien zugewiesenen Scores. Jedoch können die Scores von einem beliebigen Typ sein (zum Beispiel diskrete/fortlaufende Gewichtungen, Flags, fest/variabel und so weiter), und sie können verwendet werden, um den Triggerindikator in beliebiger Weise festzustellen (zum Beispiel, indem die Werte der Triggerrichtlinien gewichtet, ihre Berücksichtigung aktiviert/deaktiviert wird und so weiter); in jedem Fall kann dieses Merkmal in einer vereinfachten Ausführung auch weggelassen werden.
  • In einer Ausführungsform umfasst das Verfahren ein Speichern (durch das Steuerungsdatenverarbeitungssystem) von Langzeitinformationen, die auf die Überarbeitung hinweisen. Jedoch können die Langzeitinformationen von einem beliebigen Typ (zum Beispiel alle auf die Zugriffssteuerungsinformationen angewendeten Änderungen oder nur ein Teil davon, wie beispielsweise teilweise, verschiedene oder zusätzliche Einzelinformationen im Hinblick auf die vorstehend erwähnten) und in beliebiger Weise gespeichert sein (zum Beispiel in einer beliebigen Speicherstruktur wie beispielsweise einer Datenbank, einer Datei und so weiter).
  • In einer Ausführungsform geben die Langzeitinformationen die Überarbeitung in Verbindung mit einer oder mehreren relevanten der Triggerrichtlinien an, die dazu beitragen, die Überarbeitung auszulösen. Jedoch können die relevanten Triggerrichtlinien in beliebiger Anzahl vorhanden und in beliebiger Weise definiert sein (zum Beispiel alle zu wahr ausgewerteten Triggerrichtlinien, die zu wahr ausgewerteten Triggerrichtlinien und mit den Scores, die höher als ein Schwellenwert sind, eine vordefinierte Anzahl der zu wahr ausgewerteten Triggerrichtlinien, die die höchsten Scores haben, und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Aktualisieren (durch das Steuerungsdatenverarbeitungssystem) der Scores der relevanten Triggerrichtlinien. Jedoch können die Scores in beliebiger Weise gemäß (einer) beliebigen Informationsquelle(n) (zum Beispiel den Langzeitinformationen, den Zugriffssteuerungsinformationen, den Richtlinieninformationsparametern, einer beliebigen Kombination daraus und so weiter) aktualisiert werden (zum Beispiel, indem sie neu berechnet werden, um Deltawerte erhöht/verringert werden und so weiter).
  • In einer Ausführungsform werden die Scores der relevanten Triggerrichtlinien gemäß den Langzeitinformationen und den Zugriffssteuerungsinformationen zu einem Einstufungszeitpunkt im Anschluss an die Überarbeitung aktualisiert. Jedoch können die Scores in beliebiger Weise gemäß den Langzeitinformationen (zum Beispiel unter Bezugnahme auf lediglich die letzte Überarbeitung, auf eine oder mehrere Überarbeitungen, die möglicherweise gemäß ihrem Alter gewichtet wurden, und so weiter) und gemäß den Zugriffssteuerungsinformationen (zum Beispiel gemäß ihrem Kontext, einem Vergleich mit den Langzeitinformationen und so weiter) zu einem beliebigen Einstufungszeitpunkt (zum Beispiel mit einer vordefinierten Verzögerung, fortlaufend gemäß einem vordefinierten Zeitraum und so weiter) aktualisiert werden.
  • In einer Ausführungsform umfasst das Verfahren ein Speichern (durch das Steuerungsdatenverarbeitungssystem) der Langzeitinformationen, die einen Hinweis auf ein oder mehrere betroffene Steuerelemente aufweisen, welche dazu beitragen, die von der Überarbeitung betroffenen Zugriffssteuerungsinformationen zu definieren. Jedoch können die betroffenen Steuerelemente in beliebiger Zahl vorhanden und von einem beliebigen Typ sein (zum Beispiel Rolle, Regeln, alle erstellten/aktualisierten, nur die erstellten und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Aktualisieren (durch das Steuerungsdatenverarbeitungssystem) der Scores der relevanten Triggerrichtlinien gemäß den betroffenen Steuerelementen zum Einstufungszeitpunkt. Jedoch können die Scores gemäß den betroffenen Steuerelementen in beliebiger Weise (zum Beispiel gemäß ihren Lebensdauern, Bereichen oder einer beliebigen Kombination daraus und so weiter) aktualisiert werden.
  • In einer Ausführungsform umfasst das Verfahren ein Abrufen (durch das Steuerungsdatenverarbeitungssystem) von entsprechenden Lebensdauer-Indikatoren der betroffenen Steuerelemente zum Einstufungszeitpunkt. Jedoch können die Lebensdauer-Indikatoren von einem beliebigen Typ sein (zum Beispiel einfach anzeigen, ob die betroffenen Steuerelemente noch vorhanden sind oder nicht, den seit ihrer Erstellung oder ihrer letzten Änderung verstrichenen Zeitraum messen und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Aktualisieren (durch das Steuerungsdatenverarbeitungssystem) der Scores der relevanten Triggerrichtlinien gemäß den Lebensdauer-Indikatoren der betroffenen Steuerelemente. Jedoch können die Scores in beliebiger Weise gemäß den Lebensdauer-Indikatoren aktualisiert werden (zum Beispiel, indem sie in einer beliebigen linearen/nicht linearen Weise zur Berechnung der Scores verwendet werden, die Scores um einen festen Wert oder um einen Wert, der proportional dazu ist, erhöht/verringert werden und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Abrufen (durch das Steuerungsdatenverarbeitungssystem) von entsprechenden Bereichsindikatoren der betroffenen Steuerelemente zum Einstufungszeitpunkt. Jedoch können die Bereichsindikatoren von einem beliebigen Typ sein (zum Beispiel auf den Benutzern, die den betroffenen Steuerelementen entsprechen, den Berechtigungen der betroffenen Steuerelemente oder einer beliebigen Kombination daraus und so weiter beruhen).
  • In einer Ausführungsform umfasst das Verfahren ein Aktualisieren (durch das Steuerungsdatenverarbeitungssystem) der Scores der relevanten Triggerrichtlinien gemäß den Bereichsindikatoren der betroffenen Steuerelemente. Jedoch können die Scores in beliebiger Weise gemäß den Bereichsindikatoren aktualisiert werden (zum Beispiel, indem sie in einer beliebigen linearen/nicht linearen Weise zur Berechnung der Scores verwendet werden, die Scores um einen festen Wert oder um einen Wert, der proportional dazu ist, erhöht/verringert werden, wenn sie einen beliebigen Schwellenwert unter-/überschreiten und so weiter).
  • In einer Ausführungsform beruht der Bereichsindikator eines jeden der betroffenen Steuerelemente auf den Subjekten, die dem betroffenen Steuerelement entsprechen. Jedoch kann der Bereichsindikator in beliebiger Weise auf den Subjekten, die dem betroffenen Steuerelement entsprechen, beruhen (zum Beispiel auf den der betroffenen Rolle zugewiesenen Subjekten, den Subjekten, deren Attribute mit denen der betroffenen Regel übereinstimmen, ihrer Anzahl, ihrer Anzahl, die berechnet wird, indem die Subjekte gemäß ihrem Typ gewichtet werden, und so weiter).
  • In einer Ausführungsform beruht der Bereichsindikator eines jeden der betroffenen Steuerelemente auf Berechtigungen der betroffenen Steuerelemente, um Aktivitäten in dem Informationstechnologiesystem durchzuführen. Jedoch kann der Bereichsindikator in beliebiger Weise auf den Berechtigungen des betroffenen Steuerelements beruhen (zum Beispiel auf ihrer Anzahl im Allgemeinen, ihrer Anzahl im Hinblick auf jede Ressource, möglicherweise gewichtet gemäß dem Typ der Ressource und so weiter).
  • In einer Ausführungsform weisen bedingte eine oder mehrere der Triggerrichtlinien einen Hinweis auf eine oder mehrere Auswertungsbedingungen auf. Jedoch können die bedingten Triggerrichtlinien in beliebiger Zahl (bis hin zu null) vorhanden sein, wobei jede eine beliebige Anzahl und einen beliebigen Typ von Auswertungsbedingungen aufweist (zum Beispiel die Fertigstellung einer Aufgabe, das Eintreten eines Ereignisses, entweder von einem beliebigen logischen Ausdruck abhängig oder auch nicht, anfordert, und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Konditionieren (durch das Steuerungsdatenverarbeitungssystem) des Auswertens einer jeden der bedingten Triggerrichtlinien nach den entsprechenden Auswertungsbedingungen. Jedoch kann die Auswertung einer jeden bedingten Triggerrichtlinie in beliebiger Weise konditioniert werden (zum Beispiel Warten auf die Fertigstellung einer Konditionierungsaufgabe, Warten auf das Eintreten eines Ereignisses, mit oder ohne ein entsprechendes Zeitlimit, und so weiter).
  • In einer Ausführungsform ist mindestens eine der Auswertungsbedingungen eine Fertigstellung einer entsprechenden Konditionierungsaufgabe. Jedoch kann die Konditionierungsaufgabe von einem beliebigen Typ sein (zum Beispiel teilweise, verschiedene oder zusätzliche Konditionierungsaufgaben im Hinblick auf die vorstehend erwähnten).
  • In einer Ausführungsform umfasst das Verfahren ein Feststellen (durch ein Steuerungsdatenverarbeitungssystem) einer nennenswerten Änderung der Richtlinienparameter. Jedoch kann die nennenswerte Änderung in beliebiger Weise definiert (zum Beispiel unter Bezugnahme auf eine beliebige Anzahl von Richtlinienparametern, die sich geändert haben, entweder in absoluten oder relativen Zahlen) und in beliebiger Weise festgestellt werden (zum Beispiel, indem die Richtlinienparameter überwacht, entsprechende Benachrichtigungen empfangen werden und so weiter).
  • In einer Ausführungsform umfasst das Verfahren ein Durchführen (durch das Steuerungsdatenverarbeitungssystem) eines Prüfprozesses (der das Abrufen der Triggerrichtlinien, das Abrufen der Richtlinienparameter, das Auswerten der Triggerrichtlinien, das Feststellen des Triggerindikators und das Ausgeben des Hinweises auf den Triggerindikator aufweist) als Reaktion auf die nennenswerte Änderung der Richtlinienparameter. Jedoch kann der Prüfprozess in beliebiger Weise als Reaktion auf die nennenswerte Änderung der Richtlinienparameter durchgeführt werden (zum Beispiel automatisch, eine manuelle Bestätigung erfordernd und so weiter).
  • Im Allgemeinen gelten ähnliche Überlegungen, wenn die gleiche Lösung mit einem gleichwertigen Verfahren ausgeführt wird (indem ähnliche Schritte mit den gleichen Funktionen oder mehr Schritte oder Teile davon verwendet werden, einige nicht unbedingt notwendige Schritte entfernt oder weitere optionale Schritte hinzugefügt werden); überdies können die Schritte in einer anderen Reihenfolge, gleichzeitig oder ineinander verschachtelt (zumindest teilweise) durchgeführt werden.
  • Eine Ausführungsform stellt ein Computerprogramm bereit, das so konfiguriert ist, dass es ein Steuerungsdatenverarbeitungssystem veranlasst, das vorstehend erwähnte Verfahren durchzuführen. Eine Ausführungsform stellt ein Computerprogrammprodukt bereit, um eine Steuerung des Zugriffs auf ein Informationstechnologiesystem durch ein oder mehrere Subjekte zu vereinfachen. Das Computerprogrammprodukt umfasst ein durch einen Computer lesbares Speichermedium, das über damit realisierte Programmanweisungen verfügt. Die Programmanweisungen sind durch ein Steuerungsdatenverarbeitungssystem ausführbar, um das Steuerungsdatenverarbeitungssystem zu veranlassen, das vorstehend erwähnte Verfahren durchzuführen. Jedoch kann das Softwareprogramm als ein eigenständiges Modul, als ein Einschub für ein bereits vorhandenes Softwareprogramm (zum Beispiel den Zugriffssteuerungsmanager) oder sogar direkt in Letzterem ausgeführt sein; es wäre ohne Weiteres ersichtlich, dass es auch möglich ist, die gleiche Lösung als einen Dienst einzusetzen, auf den über das Netzwerk (wie beispielsweise im Internet) zugegriffen wird. Überdies können die Programme auf einem beliebigen Steuerungsdatenverarbeitungssystem ausgeführt werden (siehe nachstehend). In jedem Fall bietet sich die Lösung gemäß einer Ausführungsform der vorliegenden Offenbarung selbst für eine Ausführung mit einer Hardwarestruktur (zum Beispiel durch elektronische Schaltungen, die in einen oder mehrere Chips aus Halbleitermaterial integriert sind) oder mit einer Kombination aus Software und Hardware an, die in geeigneter Weise programmiert oder auf andere Weise konfiguriert ist.
  • Eine Ausführungsform stellt ein Steuerungsdatenverarbeitungssystem bereit, das Mittel aufweist, die so konfiguriert sind, dass sie die Schritte des vorstehend beschriebenen Verfahrens durchführen. Eine Ausführungsform stellt ein Steuerungsdatenverarbeitungssystem bereit, das eine Schaltung aufweist (d.h. eine beliebige Hardware, die in geeigneter Weise, zum Beispiel durch Software, konfiguriert ist), um jeden der Schritte des besagten Verfahrens durchzuführen. Jedoch kann das Steuerungsdatenverarbeitungssystem von einem beliebigen Typ sein (zum Beispiel eine oder mehrere physische/virtuelle Maschinen, eine statische oder dynamische Kombination daraus, wie beispielsweise in einer Cloud-Computing-Umgebung, entweder gleich wie oder anders als diejenige, die zur Steuerung des Zugriffs auf das Informationstechnologiesystem verwendet wird, und so weiter).
  • Im Allgemeinen gelten ähnliche Überlegungen, wenn das Steuerungsdatenverarbeitungssystem eine andere Struktur hat oder gleichwertige Komponenten umfasst oder wenn es andere operative Merkmale hat. In jedem Fall kann jede Komponente davon in weitere Elemente aufgeteilt oder zwei oder mehr Komponenten können zu einem einzigen Element zusammengeführt werden; überdies kann jede Komponente repliziert werden, um die parallele Ausführung der entsprechenden Operationen zu unterstützen. Überdies, sofern nichts anderes angegeben ist, braucht jede beliebige Interaktion zwischen verschiedenen Komponenten im Allgemeinen nicht fortlaufend zu sein und sie kann entweder direkt oder indirekt durch einen oder mehrere Vermittler erfolgen.
  • Bei der vorliegenden Erfindung kann es sich um ein System, ein Verfahren und/oder ein Computerprogrammprodukt auf jeder möglichen Integrationsstufe technischer Details handeln. Das Computerprogrammprodukt kann ein durch einen Computer lesbares Speichermedium (oder -medien) mit durch einen Computer lesbaren Programmanweisungen darauf umfassen, um einen Prozessor dazu zu veranlassen, Aspekte der vorliegenden Erfindung auszuführen.
  • Bei dem durch einen Computer lesbaren Speichermedium kann es sich um eine physische Einheit handeln, die Anweisungen zur Verwendung durch ein System zur Ausführung von Anweisungen behalten und speichern kann. Bei dem durch einen Computer lesbaren Speichermedium kann es sich zum Beispiel um eine elektronische Speichereinheit, eine magnetische Speichereinheit, eine optische Speichereinheit, eine elektromagnetische Speichereinheit, eine Halbleiterspeichereinheit oder jede geeignete Kombination daraus handeln, ohne auf diese beschränkt zu sein. Zu einer nicht erschöpfenden Liste spezifischerer Beispiele des durch einen Computer lesbaren Speichermediums gehören die folgenden: eine tragbare Computerdiskette, eine Festplatte, ein Direktzugriffsspeicher (RAM), ein Nur-Lese-Speicher (ROM), ein löschbarer programmierbarer Nur-Lese-Speicher (EPROM bzw. Flash-Speicher), ein statischer Direktzugriffsspeicher (SRAM), ein tragbarer Kompaktspeicherplatte-Nur-Lese-Speicher (CD-ROM), eine DVD (digital versatile disc), ein Speicher-Stick, eine Diskette, eine mechanisch kodierte Einheit wie zum Beispiel Lochkarten oder erhabene Strukturen in einer Rille, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination daraus. Ein durch einen Computer lesbares Speichermedium soll in der Verwendung hierin nicht als flüchtige Signale an sich aufgefasst werden, wie zum Beispiel Funkwellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder ein anderes Übertragungsmedium ausbreiten (z.B. Lichtwellenleiterkabel durchlaufende Lichtimpulse) oder durch einen Draht übermittelte elektrische Signale.
  • Hierin beschriebene, durch einen Computer lesbare Programmanweisungen können von einem durch einen Computer lesbaren Speichermedium auf jeweilige Datenverarbeitungs-/Verarbeitungseinheiten oder über ein Netzwerk wie zum Beispiel das Internet, ein lokales Netzwerk, ein Weitverkehrsnetz und/oder ein drahtloses Netzwerk auf einen externen Computer oder eine externe Speichereinheit heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, Lichtwellenübertragungsleiter, drahtlose Übertragung, Leitwegrechner, Firewalls, Vermittlungseinheiten, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jeder Datenverarbeitungs-/Verarbeitungseinheit empfängt durch einen Computer lesbare Programmanweisungen aus dem Netzwerk und leitet die durch einen Computer lesbaren Programmanweisungen zur Speicherung in einem durch einen Computer lesbaren Speichermedium innerhalb der entsprechenden Datenverarbeitungs-/Verarbeitungseinheit weiter.
  • Bei durch einen Computer lesbaren Programmanweisungen zum Ausführen von Arbeitsschritten der vorliegenden Erfindung kann es sich um Assembler-Anweisungen, ISA-Anweisungen (Instruction-Set-Architecture), Maschinenanweisungen, maschinenabhängige Anweisungen, Mikrocode, Firmwareanweisungen, zustandssetzende Daten, Konfigurationsdaten für eine integrierte Schaltung oder entweder Quellcode oder Objektcode handeln, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben werden, darunter objektorientierte Programmiersprachen wie Smalltalk, C++ o.ä. sowie prozedurale Programmiersprachen wie die Programmiersprache „C“ oder ähnliche Programmiersprachen. Die durch einen Computer lesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem fernen Computer oder vollständig auf dem fernen Computer oder Server ausgeführt werden. In letzterem Fall kann der entfernt angeordnete Computer mit dem Computer des Benutzers durch eine beliebige Art Netzwerk verbunden sein, darunter ein lokales Netzwerk (LAN) oder ein Weitverkehrsnetz (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (zum Beispiel über das Internet unter Verwendung eines Internet-Dienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, darunter zum Beispiel programmierbare Logikschaltungen, vor Ort programmierbare Gatter-Anordnungen (FPGA, field-programmable gate arrays) oder programmierbare Logikanordnungen (PLA, programmable logic arrays) die durch einen Computer lesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der durch einen Computer lesbaren Programmanweisungen nutzen, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung sind hierin unter Bezugnahme auf Ablaufpläne und/oder Blockschaltbilder bzw. Schaubilder von Verfahren, Vorrichtungen (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es wird darauf hingewiesen, dass jeder Block der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder sowie Kombinationen von Blöcken in den Ablaufplänen und/oder den Blockschaltbildern bzw. Schaubildern mittels durch einen Computer lesbare Programmanweisungen ausgeführt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, so dass die über den Prozessor des Computers bzw. der anderen programmierbaren Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine bestimmte Art funktionieren, so dass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt umfasst, darunter Anweisungen, welche Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaltbilder bzw. Schaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Prozessschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen auf einem Computer ausgeführten Prozess zu erzeugen, so dass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaltbilder bzw. Schaubilder festgelegten Funktionen/Schritte umsetzen.
  • Die Ablaufpläne und die Blockschaltbilder bzw. Schaubilder in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Ausführungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In diesem Zusammenhang kann jeder Block in dem Ablaufplan oder in den Blockschaltbildern bzw. Schaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, das bzw. der eine oder mehrere ausführbare Anweisungen zur Ausführung der bestimmten logischen Funktion(en) umfasst. In einigen alternativen Ausführungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt stattfinden. Zwei nacheinander gezeigte Blöcke können zum Beispiel in Wirklichkeit weitgehend gleichzeitig ausgeführt werden, oder die Blöcke können manchmal je nach entsprechender Funktionalität in umgekehrter Reihenfolge ausgeführt werden. Es ist ferner anzumerken, dass jeder Block der Blockschaltbilder bzw. Schaubilder und/oder der Ablaufpläne sowie Kombinationen aus Blöcken in den Blockschaltbildern bzw. Schaubildern und/oder den Ablaufplänen durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die festgelegten Funktionen oder Schritte durchführen, oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Die hierin beschriebenen Programme werden auf der Grundlage der Anwendung angegeben, für die sie in einer bestimmten Ausführungsform der Erfindung ausgeführt werden. Es ist jedoch darauf hinzuweisen, dass jedwede bestimmte Programm-Nomenklatur hierin lediglich aus Gründen der Zweckmäßigkeit verwendet wird, und somit sollte die Erfindung nicht auf eine ausschließliche Verwendung in einer bestimmten Anwendung, die von dieser Nomenklatur angegeben und/oder durch diese Nomenklatur stillschweigend vorausgesetzt wird, beschränkt sein.
  • Ausführungsformen der Erfindung können Endbenutzern durch eine Cloud-Computing-Infrastruktur bereitgestellt werden. Cloud-Computing bezieht sich im Allgemeinen auf die als ein Dienst über ein Netzwerk erfolgende Bereitstellung von skalierbaren Datenverarbeitungsressourcen. Formaler ausgedrückt, Cloud-Computing kann als eine Möglichkeit der Datenverarbeitung definiert werden, die eine Abstraktion zwischen der Datenverarbeitungsressource und ihrer zugrunde liegenden technischen Architektur (z.B. Server, Speicher, Netzwerke) bereitstellt, was einen komfortablen, bedarfsweisen Netzwerkzugriff auf einen gemeinsam genutzten Bestand an konfigurierbaren Datenverarbeitungsressourcen ermöglicht, die schnell bereitgestellt und mit minimalem Verwaltungsaufwand oder Zutun eines Dienstanbieters freigegeben werden können. Folglich ermöglicht Cloud-Computing einem Benutzer den Zugriff auf virtuelle Datenverarbeitungsressourcen (z.B. Speicher, Daten, Anwendungen und sogar ganze virtualisierte Datenverarbeitungssysteme) in „der Cloud“, ohne Rücksicht auf die zugrunde liegenden physischen Systeme (oder Standorte dieser Systeme), die zur Bereitstellung der Datenverarbeitungsressourcen verwendet werden.
  • Üblicherweise werden Cloud-Computing-Ressourcen einem Benutzer nutzungsorientiert bereitgestellt, wobei Benutzern nur die tatsächlich verwendeten Datenverarbeitungsressourcen berechnet werden (z.B. durch einen Benutzer verbrauchter Speicherplatz oder eine Anzahl von virtualisierten, durch den Benutzer instanziierten Systemen). Ein Benutzer kann jederzeit und von überall über das Internet auf beliebige der Ressourcen zugreifen, die sich in der Cloud befinden. Im Kontext der vorliegenden Erfindung kann ein Benutzer auf eine normierte Suchmaschine oder zugehörige, in der Cloud vorhandene Daten zugreifen. Zum Beispiel könnte die normierte Suchmaschine auf einem Datenverarbeitungssystem in der Cloud ausgeführt werden und normierte Suchen ausführen. In einem solchen Fall könnte die normierte Suchmaschine einen Korpus von Informationen normieren und einen Index der Normierungen an einer Speicherposition in der Cloud speichern. Damit wird einem Benutzer ermöglicht, von einem beliebigen Datenverarbeitungssystem aus, das an ein mit der Cloud verbundenes Netzwerk (z.B. das Internet) angeschlossen ist, auf diese Informationen zugreifen.
  • Es sei von vornherein klargestellt, dass das Umsetzen der hierin angeführten Lehren nicht auf eine Cloud-Computing-Umgebung beschränkt ist, obwohl diese Offenbarung eine ausführliche Beschreibung von Cloud-Computing umfasst. Stattdessen können Ausführungsformen der vorliegenden Erfindung gemeinsam mit jeder beliebigen weiteren Art von jetzt bekannter oder später erfundener Datenverarbeitungsumgebung umgesetzt werden.
  • Cloud-Computing ist ein Servicebereitstellungsmodell zum Ermöglichen eines problemlosen bedarfsgesteuerten Netzwerkzugriffs auf einen gemeinsam genutzten Pool von konfigurierbaren Datenverarbeitungsressourcen (z.B. Netzwerke, Netzwerkbandbreite, Server, Verarbeitung, Hauptspeicher, Speicher, Anwendungen, virtuelle Maschinen und Dienste), die mit minimalem Verwaltungsaufwand bzw. minimaler Interaktion mit einem Anbieter des Service schnell bereitgestellt und freigegeben werden können. Dieses Cloud-Modell kann mindestens fünf Eigenschaften umfassen, mindestens drei Dienstmodelle und mindestens vier Implementierungsmodelle.
  • Bei den Eigenschaften handelt es sich um die folgenden:
    • On-Demand Self-Service: Ein Cloud-Nutzer kann einseitig automatisch nach Bedarf für Datenverarbeitungsfunktionen wie Serverzeit und Netzwerkspeicher sorgen, ohne dass eine menschliche Interaktion mit dem Anbieter der Dienste erforderlich ist.
  • Broad Network Access: Es sind Funktionen über ein Netzwerk verfügbar, auf die durch Standardmechanismen zugegriffen wird, welche die Verwendung durch heterogene Thin- oder Thick-Client-Plattformen (z.B. Mobiltelefone, Laptops und PDAs) unterstützen.
  • Resource-Pooling: Die Datenverarbeitungsressourcen des Anbieters werden zusammengeschlossen, um mehreren Nutzern unter Verwendung eines Multi-Tenant-Modells zu dienen, wobei verschiedene physische und virtuelle Ressourcen dynamisch nach Bedarf zugewiesen und neu zugewiesen werden. Es gibt eine gefühlte Standortunabhängigkeit, da der Nutzer allgemein keine Kontrolle bzw. Kenntnis über den genauen Standort der bereitgestellten Ressourcen hat, aber in der Lage sein kann, einen Standort auf einer höheren Abstraktionsebene festzulegen (z.B. Land, Staat oder Rechenzentrum).
  • Rapid Elasticity: Funktionen können für eine schnelle horizontale Skalierung (scale out) schnell und elastisch bereitgestellt werden, in einigen Fällen auch automatisch, und für ein schnelles Scale-in schnell freigegeben werden. Für den Nutzer erscheinen die für das Bereitstellen verfügbaren Funktionen häufig unbegrenzt und sie können jederzeit in jeder beliebigen Menge gekauft werden.
  • Measured Service: Cloud-Systeme steuern und optimieren die Verwendung von Ressourcen automatisch, indem sie eine Messfunktion auf einer gewissen Abstraktionsebene nutzen, die für die Art von Dienst geeignet ist (z.B. Speicher, Verarbeitung, Bandbreite sowie aktive Benutzerkonten). Die Nutzung von Ressourcen kann überwacht, gesteuert und gemeldet werden, wodurch sowohl für den Anbieter als auch für den Nutzer des verwendeten Dienstes Transparenz geschaffen wird.
  • Bei den Dienstmodellen handelt es sich um die folgenden:
    • Software as a Service (SaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, die in einer Cloud-Infrastruktur laufenden Anwendungen des Anbieters zu verwenden. Die Anwendungen sind über eine Thin-Client-Schnittstelle wie einen Web-Browser (z.B. auf dem Web beruhende E-Mail) von verschiedenen Client-Einheiten her zugänglich. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter das Netzwerk, Server, Betriebssysteme, Speicher bzw. sogar einzelne Anwendungsfunktionen, mit der möglichen Ausnahme von eingeschränkten benutzerspezifischen Anwendungskonfigurationseinstellungen.
  • Platform as a Service (PaaS): Die dem Nutzer bereitgestellte Funktion besteht darin, durch einen Nutzer erstellte bzw. erhaltene Anwendungen, die unter Verwendung von durch den Anbieter unterstützten Programmiersprachen und Tools erstellt wurden, in der Cloud-Infrastruktur einzusetzen. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, darunter Netzwerke, Server, Betriebssysteme bzw. Speicher, hat aber die Kontrolle über die eingesetzten Anwendungen und möglicherweise über Konfigurationen des Application Hosting Environment.
  • Infrastructure as a Service (laaS): Die dem Nutzer bereitgestellte Funktion besteht darin, das Verarbeiten, Speicher, Netzwerke und andere grundlegende Datenverarbeitungsressourcen bereitzustellen, wobei der Nutzer in der Lage ist, beliebige Software einzusetzen und auszuführen, zu der Betriebssysteme und Anwendungen gehören können. Der Nutzer verwaltet bzw. steuert die zugrunde liegende Cloud-Infrastruktur nicht, hat aber die Kontrolle über Betriebssysteme, Speicher, eingesetzte Anwendungen und möglicherweise eine eingeschränkte Kontrolle über ausgewählte Netzwerkkomponenten (z.B. Host-Firewalls).
  • Bei den Einsatzmodellen handelt es sich um die folgenden:
    • Private Cloud: Die Cloud-Infrastruktur wird einzig und allein für eine Organisation betrieben. Sie kann durch die Organisation oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
  • Community Cloud: Die Cloud-Infrastruktur wird von mehreren Organisationen gemeinsam genutzt und unterstützt eine spezielle Benutzergemeinschaft, die gemeinsame Angelegenheiten hat (z.B. Mission, Sicherheitsanforderungen, Richtlinien sowie Überlegungen bezüglich der Einhaltung von Vorschriften). Sie kann durch die Organisationen oder einen Dritten verwaltet werden und kann sich in den eigenen Räumen oder in fremden Räumen befinden.
  • Public Cloud: Die Cloud-Infrastruktur wird der allgemeinen Öffentlichkeit oder einer großen Industriegruppe zur Verfügung gestellt und sie gehört einer Cloud-Dienste verkaufenden Organisation.
  • Hybrid Cloud: Die Cloud-Infrastruktur ist eine Zusammensetzung aus zwei oder mehreren Clouds (privat, Benutzergemeinschaft oder öffentlich), die zwar einzelne Einheiten bleiben, aber durch eine standardisierte oder proprietäre Technologie miteinander verbunden sind, die Daten- und Anwendungsportierbarkeit ermöglicht (z.B. Cloud-Zielgruppenverteilung für den Lastenausgleich zwischen Clouds).
  • Eine Cloud-Computing-Umgebung ist dienstorientiert mit Fokus auf Statusunabhängigkeit, geringer Kopplung, Modularität und semantischer Interoperabilität. Im Herzen von Cloud-Computing liegt eine Infrastruktur, die ein Netzwerk aus zusammengeschalteten Knoten aufweist.
  • Unter Bezugnahme auf 5 ist eine veranschaulichende Cloud-Computing-Umgebung 500 dargestellt. Wie gezeigt ist, umfasst die Cloud-Computing-Umgebung 500 einen oder mehrere Cloud-Computing-Knoten 510, mit denen von Cloud-Nutzern verwendete lokale Datenverarbeitungseinheiten wie zum Beispiel ein elektronischer Assistent (PDA, personal digital assistant) oder ein Mobiltelefon 540A, ein Desktop-Computer 540B, ein Laptop-Computer 540C und/oder ein Automobil-Computer-System 540N Daten austauschen können. Die Cloud-Computing-Knoten 510 können miteinander Daten austauschen. Sie können physisch oder virtuell in ein oder mehrere Netzwerke wie private, Benutzergemeinschafts-, öffentliche oder hybride Clouds gruppiert werden (nicht gezeigt), wie vorstehend beschrieben wurde, oder in eine Kombination daraus. Dies ermöglicht es der Cloud-Computing-Umgebung 500, Infrastruktur, Plattformen und/oder Software als Dienst anzubieten, für die ein Cloud-Nutzer keine Ressourcen auf einer lokalen Datenverarbeitungseinheit vorhalten muss. Es sei darauf hingewiesen, dass die Arten von in 5 gezeigten Datenverarbeitungseinheiten 540A bis N lediglich veranschaulichend sein sollen und dass die Cloud-Computing-Knoten 510 und die Cloud-Computing-Umgebung 500 über eine beliebige Art Netzwerk und/oder über eine beliebige Art von über ein Netzwerk aufrufbarer Verbindung (z.B. unter Verwendung eines Web-Browsers) mit einer beliebigen Art von computergestützter Einheit Daten austauschen können.
  • Unter Bezugnahme auf 6 ist ein Satz von funktionalen Abstraktionsschichten gezeigt, die durch die Cloud-Computing-Umgebung 500 (wie in 5 gezeigt) bereitgestellt werden. Es sollte von vornherein klar sein, dass die in 6 gezeigten Komponenten, Schichten und Funktionen lediglich veranschaulichend sein sollen und Ausführungsformen der Erfindung nicht darauf beschränkt sind. Wie dargestellt ist, werden die folgenden Schichten und entsprechenden Funktionen bereitgestellt:
  • Eine Hardware- und Softwareschicht 660 umfasst Hardware- und Softwarekomponenten. Zu Beispielen für Hardwarekomponenten gehören: Mainframe-Computer 661; auf der RISC-(Reduced-Instruction-Set-Computer-)Architektur beruhende Server 662; Server 663; Blade-Server 664; Speichereinheiten 665; und Netzwerke sowie Netzwerkkomponenten 666. In einigen Ausführungsformen umfassen Softwarekomponenten eine Netzwerk-Anwendungsserver-Software 667 und Datenbanksoftware 668.
  • Eine Virtualisierungsschicht 670 stellt eine Abstraktionsschicht bereit, aus der die folgenden Beispiele für virtuelle Einheiten bereitgestellt werden können: virtuelle Server 671; virtueller Speicher 672, zum Beispiel die Datenspeichereinheit 106, wie in 1 gezeigt; virtuelle Netzwerke 673, darunter virtuelle private Netzwerke; virtuelle Anwendungen und Betriebssysteme 674; und virtuelle Clients 675.
  • In einem Beispiel kann eine Verwaltungsschicht 680 die nachstehend beschriebenen Funktionen bereitstellen. Eine Ressourcen-Bereitstellung 681 stellt die dynamische Beschaffung von Datenverarbeitungsressourcen sowie anderen Ressourcen bereit, die zum Durchführen von Aufgaben innerhalb der Cloud-Computing-Umgebung verwendet werden. Ein Messen und eine Preisfindung 682 stellen die Kostenverfolgung beim Verwenden von Ressourcen innerhalb der Cloud-Computing-Umgebung sowie die Abrechnung oder Rechnungsstellung für den Verbrauch dieser Ressourcen bereit. In einem Beispiel können diese Ressourcen Anwendungssoftwarelizenzen umfassen. Die Sicherheit stellt die Identitätsüberprüfung für Cloud-Nutzer und Aufgaben sowie Schutz für Daten und andere Ressourcen bereit. Ein Benutzerportal 683 stellt Nutzern und Systemadministratoren den Zugang zu der Cloud-Computing-Umgebung bereit. Eine Verwaltung des Dienstumfangs 684 stellt die Zuordnung und Verwaltung von Cloud-Computing-Ressourcen bereit, so dass die benötigten Dienstziele erreicht werden. Ein Planen und Erfüllen von Vereinbarungen zum Dienstumfang (SLA, Service Level Agreement) 685 stellt die Anordnung vorab und die Beschaffung von Cloud-Computing-Ressourcen, für die eine zukünftige Anforderung vorausgesehen wird, gemäß einem SLA bereit.
  • Eine Arbeitslastschicht 690 stellt Beispiele für die Funktionalität bereit, für welche die Cloud-Computing-Umgebung verwendet werden kann. Zu Beispielen für Arbeitslasten und Funktionen, die von dieser Schicht bereitgestellt werden können, gehören: Abbildung und Navigation 691; Softwareentwicklung und Lebenszyklusverwaltung 692; Bereitstellung von Ausbildung in virtuellen Klassenzimmern 693; Datenanalytikverarbeitung 694; Transaktionsverarbeitung 695; und Steuerungszugriff 696. Der Steuerungszugriff 696 kann die Zugriffssteuerung eines Informationstechnologiesystems verwalten.

Claims (20)

  1. Verfahren (400), um eine Pflege von Zugriffssteuerungsinformationen zur Steuerung des Zugriffs auf eine oder mehrere Ressourcen eines Informationstechnologiesystems (100; 205r) durch ein oder mehrere Subjekte (210) zu vereinfachen, wobei das Verfahren umfasst: Abrufen (404), durch ein Steuerungsdatenverarbeitungssystem (205c; 320), von einer oder mehreren Triggerrichtlinien, von denen jede auf einem oder mehreren Richtlinienparametern in Bezug auf die Ressourcen, die Subjekte und den Zugriff auf die Ressourcen durch die Subjekte beruht, wobei jede der einen oder mehreren Triggerrichtlinien eine Bedingung für eine Überarbeitung der Zugriffssteuerungsinformationen in Bezug auf die eine oder mehreren Ressourcen des Informationstechnologiesystems, auf das eine oder die mehreren Subjekte und den Zugriff auf die eine oder mehreren Ressourcen der Informationstechnologie identifiziert, wobei jede der einen oder mehreren Triggerrichtlinien durch Feststellen, ob sie wahr ist, bewertet wird und auf einem oder mehreren Richtlinienparametern basiert; Abrufen (408), durch das Steuerungsdatenverarbeitungssystem, der Richtlinienparameter, wobei die Richtlinienparameter eine Änderung von mehr als einem Schwellenwert an neuen Benutzern, eine Änderung von mehr als einem zweiten Schwellenwert an neuen Benutzern in einer Abteilung, eine Änderung von mehr als einem dritten Schwellenwert an Änderungen in einem Organisationsdiagramm, mehr als einem vierten Schwellenwert an neuen Rollen der Subjekte seit einer letzten Bewertung der einen oder mehreren Triggerrichtlinien umfassen; Auswerten (426), durch das Steuerungsdatenverarbeitungssystem, der Triggerrichtlinien gemäß den entsprechenden Richtlinienparametern; Feststellen (430), durch das Steuerungsdatenverarbeitungssystem, eines Triggerindikators gemäß einem Ergebnis des Auswertens der Triggerrichtlinien, wobei der Triggerindikator ein Triggerindex ist, der durch Gewichten der Triggerrichtlinien, die wahr sind, gemäß ihrer entsprechenden Scores, die mit ihrer Wirksamkeit beim Auslösen der Überarbeitung der Zugriffssteuerungsinformationen verbunden sind, berechnet wird; Ausgeben (434), durch das Steuerungsdatenverarbeitungssystem, eines Hinweises auf den Triggerindikator, um eine Überarbeitung der Zugriffssteuerungsinformationen als Reaktion auf den Triggerindikator auszulösen, wobei die Überarbeitung eine Mining-Aktivität, um die Subjekte den Ressourcen zuzuordnen, und eine durch ein Ergebnis der Mining-Aktivität verursachte Aktualisierung der Zugriffssteuerungsinformationen aufweist; und Überarbeiten der Zugriffssteuerungsinformationen durch einen Zugriffssteuerungsmanager auf der Grundlage des Ausgebens.
  2. Verfahren nach Anspruch 1, das des Weiteren umfasst: Durchführen (438) der Mining-Aktivität als Reaktion darauf, dass der Triggerindikator einen positiven Wert hat, der auf eine Notwendigkeit der Überarbeitung hinweist.
  3. Verfahren nach einem der vorhergehenden Ansprüche, das des Weiteren umfasst: Aktualisieren (442) der Zugriffssteuerungsinformationen gemäß dem Ergebnis der Mining-Aktivität.
  4. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Zugriffssteuerungsinformationen einen Hinweis auf eine oder mehrere Rollen, von denen jede eine oder mehrere Berechtigungen zum Durchführen von einer oder mehreren Aktivitäten in dem Informationstechnologiesystem hat, und einen Hinweis auf eine oder mehrere der Rollen, die einem jeden der Subjekte zugewiesen sind, aufweisen, wobei es sich bei der Mining-Aktivität um ein Rollenmining handelt.
  5. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Zugriffssteuerungsinformationen eine oder mehrere Regeln aufweisen, von denen jede auf einem oder mehreren Attributen beruht und mindestens eine Berechtigung in Bezug auf eine Aktivität in dem Informationstechnologiesystem angibt, wenn die Regel erfüllt ist, wobei es sich bei der Mining-Aktivität um ein Regelmining handelt.
  6. Verfahren nach einem der vorhergehenden Ansprüche, das des Weiteren umfasst: Feststellen (430), durch das Steuerungsdatenverarbeitungssystem, des Triggerindikators gemäß entsprechenden, den Triggerrichtlinien zugewiesenen Scores.
  7. Verfahren nach einem der vorhergehenden Ansprüche, das des Weiteren umfasst: Speichern (436), durch das Steuerungsdatenverarbeitungssystem, von Langzeitinformationen, die auf die Überarbeitung in Verbindung mit einer oder mehreren relevanten der Triggerrichtlinien hinweisen, die dazu beitragen, die Überarbeitung auszulösen; und Aktualisieren (466, 468), durch das Steuerungsdatenverarbeitungssystem, der Scores der relevanten Triggerrichtlinien gemäß den Langzeitinformationen und den Zugriffssteuerungsinformationen zu einem Einstufungszeitpunkt im Anschluss an die Überarbeitung.
  8. Verfahren nach einem der vorhergehenden Ansprüche, das des Weiteren umfasst: Speichern (436), durch das Steuerungsdatenverarbeitungssystem, der Langzeitinformationen, die einen Hinweis auf ein oder mehrere betroffene Steuerelemente zum Einstufungszeitpunkt aufweisen; und Aktualisieren (466, 468), durch das Steuerungsdatenverarbeitungssystem, der Scores der relevanten Triggerrichtlinien gemäß den betroffenen Steuerelementen zum Einstufungszeitpunkt.
  9. Verfahren nach einem der vorhergehenden Ansprüche, das des Weiteren umfasst: Abrufen (456), durch das Steuerungsdatenverarbeitungssystem, von entsprechenden Lebensdauer-Indikatoren der betroffenen Steuerelemente zum Einstufungszeitpunkt; und Aktualisieren (466, 468), durch das Steuerungsdatenverarbeitungssystem, der Scores der relevanten Triggerrichtlinien gemäß den Lebensdauer-Indikatoren der betroffenen Steuerelemente.
  10. Verfahren nach einem der vorhergehenden Ansprüche, das des Weiteren umfasst: Abrufen (464), durch das Steuerungsdatenverarbeitungssystem, von entsprechenden Bereichsindikatoren der betroffenen Steuerelemente zum Einstufungszeitpunkt; und Aktualisieren (466, 468), durch das Steuerungsdatenverarbeitungssystem, der Scores der relevanten Triggerrichtlinien gemäß den Bereichsindikatoren der betroffenen Steuerelemente.
  11. Verfahren nach Anspruch 10, wobei der Bereichsindikator eines jeden der betroffenen Steuerelemente auf den Subjekten beruht, die den betroffenen Steuerelementen entsprechen.
  12. Verfahren nach einem der Ansprüche 10 bis 11, wobei der Bereichsindikator eines jeden der betroffenen Steuerelemente auf Berechtigungen der betroffenen Steuerelemente beruht, um Aktivitäten in dem Informationstechnologiesystem durchzuführen.
  13. Verfahren nach einem der vorhergehenden Ansprüche, wobei bedingte eine oder mehrere der Triggerrichtlinien einen Hinweis auf eine oder mehrere Auswertungsbedingungen aufweisen; und das Verfahren des Weiteren ein Konditionieren (410, 412), durch das Steuerungsdatenverarbeitungssystem, des Auswertens einer jeden der bedingten Triggerrichtlinien nach den entsprechenden Auswertungsbedingungen umfasst.
  14. Verfahren nach Anspruch 13, wobei mindestens eine der Auswertungsbedingungen eine Fertigstellung (422, 420) einer entsprechenden Konditionierungsaufgabe ist.
  15. Verfahren nach einem der vorhergehenden Ansprüche, das des Weiteren umfasst: Feststellen (402), durch das Steuerungsdatenverarbeitungssystem, einer nennenswerten Änderung des Richtlinienparameters; und Durchführen, durch das Steuerungsdatenverarbeitungssystem, eines Prüfprozesses, der das Abrufen der Triggerrichtlinien, das Abrufen der Richtlinienparameter, das Auswerten der Triggerrichtlinien, das Feststellen des Triggerindikators und das Ausgeben des Hinweises auf den Triggerindikator als Reaktion auf die nennenswerte Änderung der Richtlinienparameter aufweist.
  16. Computerprogrammprodukt, um eine Pflege von Zugriffssteuerungsinformationen zur Steuerung des Zugriffs auf eine oder mehrere Ressourcen eines Informationstechnologiesystems (100; 205r) durch ein oder mehrere Subjekte (210) zu vereinfachen, wobei das Computerprogrammprodukt aufweist: ein oder mehrere durch einen Computer lesbare, physische Speichermedien und Programmanweisungen, die auf mindestens einem Speichermedium des einen oder der mehreren physischen Speichermedien gespeichert sind, wobei die Programmanweisungen durch eine Prozessoreinheit ausführbar sind, wobei die Programmanweisungen aufweisen: Programmanweisungen, um eine oder mehrere Triggerrichtlinien abzurufen (404), von denen jede auf einem oder mehreren Richtlinienparametern in Bezug auf die Ressourcen, die Subjekte und den Zugriff auf die Ressourcen durch die Subjekte beruht, wobei jede der einen oder mehreren Triggerrichtlinien eine Bedingung für eine Überarbeitung der Zugriffssteuerungsinformationen in Bezug auf die eine oder mehreren Ressourcen des Informationstechnologiesystems, auf das eine oder die mehreren Subjekte und den Zugriff auf die eine oder mehreren Ressourcen der Informationstechnologie identifiziert, wobei jede der einen oder mehreren Triggerrichtlinien durch Feststellen, ob sie wahr ist, bewertet wird und auf einem oder mehreren Richtlinienparametern basiert; Programmanweisungen, um die Richtlinienparameter abzurufen (408), wobei die Richtlinienparameter eine Änderung von mehr als einem Schwellenwert an neuen Benutzern, eine Änderung von mehr als einem zweiten Schwellenwert an neuen Benutzern in einer Abteilung, eine Änderung von mehr als einem dritten Schwellenwert an Änderungen in einem Organisationsdiagramm, mehr als einem vierten Schwellenwert an neuen Rollen der Subjekte seit einer letzten Bewertung der einen oder mehreren Triggerrichtlinien umfassen; Programmanweisungen, um die Triggerrichtlinien gemäß den entsprechenden Richtlinienparametern auszuwerten (426); Programmanweisungen, um einen Triggerindikator gemäß einem Ergebnis des Auswertens der Triggerrichtlinien festzustellen (430), wobei der Triggerindikator ein Triggerindex ist, der durch Gewichten der Triggerrichtlinien, die wahr sind, gemäß ihrer entsprechenden Scores, die mit ihrer Wirksamkeit beim Auslösen der Überarbeitung der Zugriffssteuerungsinformationen verbunden sind, berechnet wird; Programmanweisungen, um einen Hinweis auf den Triggerindikator auszugeben (434), um eine Überarbeitung der Zugriffssteuerungsinformationen als Reaktion auf den Triggerindikator auszulösen, wobei die Überarbeitung eine Mining-Aktivität, um die Subjekte den Ressourcen zuzuordnen, und eine durch ein Ergebnis der Mining-Aktivität verursachte Aktualisierung der Zugriffssteuerungsinformationen aufweist; und Überarbeiten der Zugriffssteuerungsinformationen durch einen Zugriffssteuerungsmanager auf der Grundlage des Ausgebens.
  17. Computerprogrammprodukt nach Anspruch 16, das des Weiteren aufweist: Programmanweisungen, um die Mining-Aktivität als Reaktion darauf durchzuführen (438), dass der Triggerindikator einen positiven Wert hat, der auf eine Notwendigkeit der Überarbeitung hinweist.
  18. Computerprogrammprodukt nach einem der Ansprüche 16 bis 17, das des Weiteren umfasst: Programmanweisungen, um die Zugriffssteuerungsinformationen gemäß dem Ergebnis der Mining-Aktivität zu aktualisieren (442).
  19. Computerprogrammprodukt nach einem der Ansprüche 16 bis 18, wobei die Zugriffssteuerungsinformationen einen Hinweis auf eine oder mehrere Rollen, von denen jede eine oder mehrere Berechtigungen zum Durchführen von einer oder mehreren Aktivitäten in dem Informationstechnologiesystem hat, und einen Hinweis auf eine oder mehrere der Rollen, die einem jeden der Subjekte zugewiesen sind, aufweisen, wobei es sich bei der Mining-Aktivität um ein Rollenmining handelt.
  20. Computerprogrammprodukt nach einem der Ansprüche 16 bis 19, wobei die Zugriffssteuerungsinformationen eine oder mehrere Regeln aufweisen, von denen jede auf einem oder mehreren Attributen beruht und mindestens eine Berechtigung in Bezug auf eine Aktivität in dem Informationstechnologiesystem angibt, wenn die Regel erfüllt ist, wobei es sich bei der Mining-Aktivität um ein Regelmining handelt.
DE112020001688.9T 2019-06-12 2020-06-08 Richtlinienbasiertes auslösen einer überarbeitung von zugriffssteuerungsinformationen Active DE112020001688B4 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/438,633 2019-06-12
US16/438,633 US11206262B2 (en) 2019-06-12 2019-06-12 Policy-based triggering of revision of access control information
PCT/IB2020/055358 WO2020250103A1 (en) 2019-06-12 2020-06-08 Policy-based triggering of revision of access control information

Publications (2)

Publication Number Publication Date
DE112020001688T5 DE112020001688T5 (de) 2022-02-03
DE112020001688B4 true DE112020001688B4 (de) 2023-04-27

Family

ID=73745638

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112020001688.9T Active DE112020001688B4 (de) 2019-06-12 2020-06-08 Richtlinienbasiertes auslösen einer überarbeitung von zugriffssteuerungsinformationen

Country Status (6)

Country Link
US (1) US11206262B2 (de)
JP (1) JP7470474B2 (de)
CN (1) CN113711216A (de)
DE (1) DE112020001688B4 (de)
GB (1) GB2599582A (de)
WO (1) WO2020250103A1 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11206262B2 (en) 2019-06-12 2021-12-21 International Business Machines Corporation Policy-based triggering of revision of access control information
US11677754B2 (en) * 2019-12-09 2023-06-13 Daniel Chien Access control systems and methods
CN112800413B (zh) * 2021-02-26 2024-03-15 上海派拉软件股份有限公司 一种权限信息推送方法、装置、设备及存储介质
US11909773B2 (en) * 2021-04-02 2024-02-20 Target Brands, Inc. Continuous improvement of security detection rules
US11599677B2 (en) * 2021-04-30 2023-03-07 People Center, Inc. Synchronizing organizational data across a plurality of third-party applications
US11805125B2 (en) * 2021-05-26 2023-10-31 Microsoft Technology Licensing, Llc Task based access rights control
US11627155B1 (en) 2021-09-20 2023-04-11 Normalyze, Inc. Cloud infrastructure detection with resource path tracing
US20230094856A1 (en) * 2021-09-20 2023-03-30 Normalyze, Inc. Compact cloud access network based on role-to-resource detection with resource state change tracking and provenance

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120246098A1 (en) 2011-03-21 2012-09-27 International Business Machines Corporation Role Mining With User Attribution Using Generative Models
DE112010004284T5 (de) 2009-11-06 2013-01-24 International Business Machines Corporation Verfahren und System zum Verwalten von Sicherheitsobjekten
US20130111583A1 (en) 2011-10-27 2013-05-02 International Business Machines Corporation System and method for hybrid role mining
US9137265B2 (en) 2013-01-04 2015-09-15 International Business Machines Corporation Generating role-based access control policies based on discovered risk-averse roles
US10139789B2 (en) 2012-03-02 2018-11-27 Philips Lighting Holding B.V. System and method for access decision evaluation for building automation and control systems

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7779247B2 (en) 2003-01-09 2010-08-17 Jericho Systems Corporation Method and system for dynamically implementing an enterprise resource policy
JP5083042B2 (ja) 2008-05-30 2012-11-28 富士通株式会社 アクセス制御ポリシーの遵守チェック用プログラム
WO2011063269A1 (en) 2009-11-20 2011-05-26 Alert Enterprise, Inc. Method and apparatus for risk visualization and remediation
US10027711B2 (en) 2009-11-20 2018-07-17 Alert Enterprise, Inc. Situational intelligence
WO2013042634A1 (ja) 2011-09-20 2013-03-28 日本電気株式会社 通信システム、ポリシー管理装置、通信方法およびプログラム
US9154507B2 (en) 2012-10-15 2015-10-06 International Business Machines Corporation Automated role and entitlements mining using network observations
US9147055B2 (en) 2013-08-29 2015-09-29 Bank Of America Corporation Entitlement predictions
US20200076818A1 (en) 2013-10-03 2020-03-05 The Board Of Regents Of The University Of Texas System Risk-aware sessions in role based access control systems and methods of use
US9979733B2 (en) 2015-09-24 2018-05-22 International Business Machines Corporation Automatically provisioning new accounts on managed targets by pattern recognition of existing account attributes
WO2019204778A1 (en) 2018-04-20 2019-10-24 Orkus, Inc. Automated access control management for computing systems
CN109165516A (zh) 2018-08-14 2019-01-08 中国银联股份有限公司 一种访问控制方法和装置
US11206262B2 (en) 2019-06-12 2021-12-21 International Business Machines Corporation Policy-based triggering of revision of access control information

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE112010004284T5 (de) 2009-11-06 2013-01-24 International Business Machines Corporation Verfahren und System zum Verwalten von Sicherheitsobjekten
US20120246098A1 (en) 2011-03-21 2012-09-27 International Business Machines Corporation Role Mining With User Attribution Using Generative Models
US20130111583A1 (en) 2011-10-27 2013-05-02 International Business Machines Corporation System and method for hybrid role mining
US10139789B2 (en) 2012-03-02 2018-11-27 Philips Lighting Holding B.V. System and method for access decision evaluation for building automation and control systems
US9137265B2 (en) 2013-01-04 2015-09-15 International Business Machines Corporation Generating role-based access control policies based on discovered risk-averse roles

Also Published As

Publication number Publication date
WO2020250103A1 (en) 2020-12-17
CN113711216A (zh) 2021-11-26
US20200396222A1 (en) 2020-12-17
DE112020001688T5 (de) 2022-02-03
JP7470474B2 (ja) 2024-04-18
GB2599582A (en) 2022-04-06
JP2022536057A (ja) 2022-08-12
US11206262B2 (en) 2021-12-21

Similar Documents

Publication Publication Date Title
DE112020001688B4 (de) Richtlinienbasiertes auslösen einer überarbeitung von zugriffssteuerungsinformationen
DE112020000526T5 (de) System und verfahren zum inkrementellen lernen für eine objekterkennung
DE112018004411T5 (de) Zugriffssteuerung in mikrodienst-architekturen
DE112019000187T5 (de) Dynamische zugriffskontrolle für wissens-graphen
DE112020003820T5 (de) Erkennung von Anomalien und Abweichungen unter Verwendung eines domänenindizierten Einschränkungs-Repository
DE112019001433T5 (de) Datenanonymisierung
DE112021002245T5 (de) Verhindern einer unberechtigten bereitstellung von paketen in clustern
DE112019003042T5 (de) Erkennung von verdächtigen aktivitäten in computernetzwerken
DE102012220390A1 (de) Verwenden des geografischen Ortes zum Ermitteln von Element- und Gebietsdaten zum Bereitstellen an eine Datenverarbeitungseinheit
DE102016105062A1 (de) Nähengestützte Berechtigungsprüfung für einheitenübergreifend verteilte Daten
DE102016100895A1 (de) Peer-to-Peer-Speicher in Unternehmen und Verfahren zum Verwalten eines Peer-Netzwerkspeichers
DE102013206354A1 (de) Adaptive Bewertung der Objektrelevanz auf der Grundlage dynamischer Benutzereigenschaften
DE112020005373T5 (de) Mechanismus zur authentifizierung durch nutzung von positionsbestätigung
DE112021002201T5 (de) Datenschutzorientierte Datensicherheit in einer Cloud-Umgebung
DE112020005306T5 (de) Implementierung von arbeitslasten in einer multi-cloud-umgebung
DE112021001639T5 (de) Schutz von computeranlagen vor bösartigen angriffen
DE102021123058A1 (de) Maskieren von sensiblen informationen in einem dokument
DE112020000545T5 (de) Deep-forest-modell-entwicklung und -training
DE102021130396A1 (de) Datenzugriffsüberwachung und -steuerung
DE102021131913A1 (de) Optimieren eines planens einer einheitenaktualisierung
DE112019003130T5 (de) Hsm-selbstzerstörung in einer hybriden cloud-kms-lösung
DE112021005364T5 (de) Abwehr von gezielten datenbankangriffen durch dynamische generierung von honeypot-datenbankantworten
DE102014116744B4 (de) Management von Informationstechnologieressourcen
DE112016004745B4 (de) Syndiziertes, auf einer Cloud beruhendes Dienstmodell "Benachrichtigung als ein Dienst" Erweiterung in einem RSS-Feed
DE112019002052T5 (de) Datenschutzsensibilisierung bei der bereitstellung von arbeitslasten

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0021600000

Ipc: G06F0021620000

R016 Response to examination communication
R018 Grant decision by examination section/examining division
R084 Declaration of willingness to licence
R020 Patent grant now final