[go: up one dir, main page]

DE602006000907T2 - Zugangssteuerungssystem, Regelmaschinen-Anpasseinrichtung, regelbasierte Erzwingungsplattform und Verfahren zum Ausführen einer Zugriffssteuerung - Google Patents

Zugangssteuerungssystem, Regelmaschinen-Anpasseinrichtung, regelbasierte Erzwingungsplattform und Verfahren zum Ausführen einer Zugriffssteuerung Download PDF

Info

Publication number
DE602006000907T2
DE602006000907T2 DE602006000907T DE602006000907T DE602006000907T2 DE 602006000907 T2 DE602006000907 T2 DE 602006000907T2 DE 602006000907 T DE602006000907 T DE 602006000907T DE 602006000907 T DE602006000907 T DE 602006000907T DE 602006000907 T2 DE602006000907 T2 DE 602006000907T2
Authority
DE
Germany
Prior art keywords
rule
context
application
machine
constraint
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
DE602006000907T
Other languages
English (en)
Other versions
DE602006000907D1 (de
Inventor
Andreas Schaad
Pascal Spadone
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.)
SAP SE
Original Assignee
SAP SE
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 SAP SE filed Critical SAP SE
Publication of DE602006000907D1 publication Critical patent/DE602006000907D1/de
Application granted granted Critical
Publication of DE602006000907T2 publication Critical patent/DE602006000907T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/629Protecting access to data via a platform, e.g. using keys or access control rules to features or functions of an application
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6236Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database between heterogeneous systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Computer And Data Communications (AREA)
  • Exchange Systems With Centralized Control (AREA)

Description

  • Gebiet der Erfindung
  • Die Erfindung betrifft allgemein das Gebiet der Zugriffssteuerung auf eine Informationsressource und insbesondere ein Zugriffssteuerungssystem, eine Regelmaschinen-Anpasseinrichtung und eine regelbasierte Erzwingungsplattform, welche für die Zugriffssteuerung verwendbar sind. Ferner betrifft die Erfindung ein Verfahren zum Ausführen einer Zugriffssteuerung auf mindestens eine Informationsressource, die mindestens einer Anwendung innerhalb eines Computernetzwerks zugeordnet ist.
  • Beschreibung des Stands der Technik
  • Im Allgemeinen beruht die Zugriffssteuerung auf eine Informationsressource auf einer Referenzüberwachungseinrichtung, welche eine Zugriffsanforderung anhand eines statischen Satzes von Zugriffsrechten, die einem Prinzip oder einer Regel zugeordnet sind, beurteilt. Es können jedoch auch Kontextinformationen berücksichtigt werden, um zu entscheiden, ob ein Zugriff gewährt werden sollte oder nicht. Dieser Kontext kann gegeben sein durch die Schritte, die ein Benutzer bereits in einem Arbeitsablauf ausgeführt hat, die Geschäftsobjekte, auf die er in der Vergangenheit zugegriffen hat, jedoch auch einen abstrakteren Kontext in der Art der Temperatur oder des Orts. Dies führt jedoch zu einer Reihe von Problemen, die keine aktuellen Systeme zufrieden stellend zu adressieren scheinen.
  • Auf im Stand der Technik beschriebene Konzepte wurde hauptsächlich nur in dem verschiedenen Kontext vereinbarungsbasierter verteilter Systeme oder der Netzwerkverwaltung Bezug genommen. Im A. Kern und C. Walhorn "Rule support for role-based access control", präsentiert auf dem ACM Symposium an Access Control Models and Technologies, Stockholm, Schweden, 2005, ist die Verwendung der JESS-Regelmaschine zur Spezifikation und Beurteilung von Randbedingungen im Kontext eines Zugriffsrechts-Verwaltungssystems beschrieben. Der Ansatz ist jedoch auf statische Kontextinformationen in der Art organisatorischer Einheiten eines Angestellten beschränkt. Der Ansatz von Kern u. a. zeigt auch nicht, wie unabhängige Anwendungen gleichzeitig verbunden werden können. Ferner beruht der Ansatz auf der Verwendung einer sehr spezifischen Software zum Verwalten der Randbedingungen.
  • J. Chomicki und J. Lobo, "Monitors for History-Based Policies", Policies for Distributed Systems and Networks, Band 1995, 2001, offenbart einen regelbasierten Ansatz, der zum Spezifizieren und Beurteilen dynamischer Vereinbarungen verwendet wird. Die Veröffentlichung konzentriert sich auf die Berechnung von Regeln, sie berücksichtigt jedoch nicht die Gesamtarchitektur, die es ermöglichen würde, dass verschiedene Anwendungen verbunden werden und Kontextinformationen konvertiert werden.
  • S. Ceri und R. Ramakrishnan, "Rules in data-based systems", ACM Computing Surveys, Band 28, 1996, betrachtet Regeln in Datenbanksystemen. Diese Veröffentlichung konzentriert sich nur auf eine einzige homogene Datenbank und betrachtet nur statische Regeln in der Art monetärer Randbedingungen.
  • K. Knorr und H. Weidner, "Analyzing Separation of Duties in Petri Net Workflows", Lecture Notes in Computer Science, Band 2052, 2001, verwenden einen regelbasierten Ansatz zum Spezifizieren der Teilung von Aufgabenregeln im Kontext von Arbeitsablaufsystemen. Diese Veröffentlichung bezieht sich auf Aspekte und stellt keine Informationen darüber bereit, wie Randbedingungen im Kontext heterogener Anwendungen realistisch erzwungen werden können.
  • In Bezug auf existierende kommerzielle Systeme kann die BEA-Workflow-Solution-Suite erwähnt werden. Diese Lösung stellt eine Regelspezifikationsfunktionalität bereit, jedoch nur in einer proprietären und einer systemabhängigen Weise. Die Lösung scheint keine explizite Funktionalität bereitzustellen, um dynamische Kontextinformationen auf der Grundlage heterogener und unabhängiger Anwendungen zu behandeln. Die Regeln des Systems sind strikt prozedural und sehen keine Auswahl in Bezug auf die verwendete Regelmaschine vor.
  • Ein weiteres kommerzielles System ist iLog. Dieses System stellt nur eine generische Regelmaschine bereit, die von Anwendungsentwicklern nach Wunsch zu verwenden ist.
  • WO01/41039 betrifft ein Verfahren zum Definieren einer Sicherheitsvereinbarung, wobei für jeden Sicherheitsmechanismus anwendungsspezifische Informationen als ein Schlüssel eingekapselt werden und zu einer semantischen Schicht exportiert werden. Schlüssel werden kombiniert, um Schlüsselketten innerhalb der semantischen Schicht zu bilden. Eine Sicherheitsvereinbarung wird durch die Bildung von Schlüsselketten aus Schlüsseln und das Zuordnen von Benutzern zu den Schlüsselketten definiert. Die Sicherheitsvereinbarung wird übersetzt und zu den Sicherheitsmechanismen exportiert. Die Sicherheitsvereinbarung wird dann durch die Sicherheitsmechanismen erzwungen. In US2005/0193196 ist eine Vorrichtung zum Implementieren einer rollenbasierten Zugriffssteuerung offenbart, wodurch Verwaltungsaufwendungen verringert werden, die mit dem Verwalten des Zugriffs entsprechend Vereinbarungen und Rollen verbunden sind.
  • Es gibt bestimmte offene Fragen, die innerhalb des zitierten Stands der Technik noch nicht zufrieden stellend beantwortet wurden. Keine Antwort ist beispielsweise auf die Frage gegeben, wie verschiedene Kontextdaten von vorhandenen oder externen Anwendungen gesammelt und in einer gleichmäßigen Weise dargestellt werden können. Ferner ist offen, wie Zugriffsrandbedingungen auf der Grundlage solcher Kontextdaten, unabhängig von dem Zugriffssteuerungssystem einer spezifischen Zielanwendung, spezifiziert und beurteilt werden können. Ferner ist noch zu beantworten, wie solche Zugriffsrandbedingungs-Beurteilungsergebnisse schließlich einem anwendungsspezifischen Sicherheitsrandbedingungs-Erzwingungspunkt präsentiert werden können, der schließlich dafür verantwortlich ist, über den Zugriff auf eine bestimmte Informationsressource zu entscheiden.
  • Zusammenfassung der Erfindung
  • Auf der Grundlage der vorstehend erwähnten Fragen und einer Beurteilung des aktuellen Stands der Technik werden ein Zugriffssteuerungssystem mit den Merkmalen von Anspruch 1, eine Regelmaschinen-Anpasseinrichtung mit den Merkmalen von Anspruch 8, die auf die Zugriffssteuerung anwendbar ist, eine regelbasierte Erzwingungsplattform mit den Merkmalen von Anspruch 10, die auf die Zugriffssteuerung anwendbar ist, und ein Verfahren zum Ausführen einer Zugriffssteuerung mit den Merkmalen von Anspruch 13 vorgeschlagen. Ferner sind ein Computerprogrammprodukt mit den Merkmalen von Anspruch 15, ein Computerprogramm mit den Merkmalen von Anspruch 16 und ein computerlesbares Medium mit den Merkmalen von Anspruch 17 vorgesehen. Weitere Ausführungsformen werden durch die jeweiligen abhängigen Ansprüche beschrieben.
  • Nach Anspruch 1 der vorliegenden Patentanmeldung wird ein Zugriffssteuerungssystem vorgeschlagen, das eine Zugriffssteuerung auf mindestens eine Informationsressource bereitstellt, die mindestens einer Anwendung innerhalb eines Computernetzwerks zugeordnet ist. Das Zugriffssteuerungssystem weist auf: eine Vielzahl von Kontextquellen, die für die mindestens eine Anwendung relevant sind und Kontextinformationen bereitstellen, eine Randbedingungs-Spezifikationskonsole, die eine Schnittstelle zum Spezifizieren anwendungsspezifischer Randbedingungen auf der Grundlage der Kontextquellen bereitstellt, eine Regelmaschine, die in der Lage ist, Tatsachen zu behandeln und Ableitungsregeln auf diese Tatsachen anzuwenden, einen Erzwingungspunkt für anwendungsspezifische Randbedingungen, der in der Lage ist, Zugriffsanforderungen zu empfangen und daher Tatsachen abzufragen, und dafür verantwortlich ist, Zugriffs entscheidungen in Bezug auf die Informationsressource auf der Grundlage dieser Tatsachen und anwendungsspezifischer Randbedingungen zu treffen, und eine Regelmaschinen-Anpasseinrichtung, die als eine Verbindungskomponente zum Verbinden der Regelmaschine mit den Kontextquellen der Randbedingungs-Spezifikationskonsole bzw. dem Randbedingungs-Erzwingungspunkt und als ein Vermittler bei der Kommunikation der Regelmaschine mit den Kontextquellen, der Randbedingungs-Spezifikationskonsole bzw. dem Randbedingungs-Erzwingungspunkt wirkt, um eine Zugriffssteuerung auf die mindestens eine Informationsressource auf der Grundlage spezifizierter anwendungsspezifischer Randbedingungen in Bezug auf von den Kontextquellen ausgehende Kontextinformationen zu ermöglichen.
  • Es ist beispielsweise möglich, dass die Anwendung einer Aufgabenverwaltungsanwendung entspricht. In einem solchen Fall könnte es wünschenswert sein, eine dynamische Trennung von Aufgaben- bzw. Pflichteigenschaften in der Aufgabenverwaltungsanwendung zu erzwingen. Die Informationsressource, die der Anwendung zugeordnet ist, wofür eine Zugriffssteuerung bereitzustellen ist, ist in einem weiten Sinn zu verstehen. In dem erwähnten Beispiel der Aufgabenverwaltungsanwendung kann die Informationsressource als ein Pool von Aufgaben beschrieben werden, die verschiedenen Arbeitsabläufen zugewiesen werden können. Ein Aspekt der vorliegenden Erfindung kann beispielsweise verwendet werden, um es einem Benutzer auf der Grundlage der Geschichte der Aufgaben, die er in der Vergangenheit ausgeführt hat, zu erlauben/zu verweigern, eine gegebene Aufgabe auszuführen.
  • Jede andere Anwendung, die zu verwalten ist, indem anwendungsrelevante Kontextinformationen berücksichtigt werden, oder welche von einer solchen Verwaltung profitiert, kann zumindest einige Aspekte der vorliegenden Erfindung verwenden. Immer dann, wenn Vereinbarungen innerhalb eines Organisationsbereichs zu erzwingen sind, könnten zumindest einige Aspekte der vorliegenden Erfindung verwendet werden. Ein Brennpunkt der vorliegenden Erfindung kann in einer Erzwingung von Randbedingungen bei einer Zielanwendung über den Randbedingungs-Erzwingungspunkt gesehen werden.
  • Innerhalb des Schutzumfangs der vorliegenden Beschreibung und der Ansprüche ist eine Regelmaschine als ein System zu verstehen, das dabei hilft, Koordinationsregeln, wie Geschäftsregeln, zu verwalten. Die Regeln, denen ein Geschäft folgt, können beispielsweise von einer Firmenvereinbarung, wie beispielsweise "Alle Kunden, die mehr als $100 auf einmal kaufen, erhalten einen Discount von 10%" oder von anderen Quellen in der Art einer Sicherheitsvereinbarung kommen. Die Regelmaschine kann unter anderen Funktionen einige Regeln auf der Grundlage anderer Regeln ableiten und einige dieser Regeln auf Informationstechnologieanwendungen beziehen, die betroffen sind oder eine oder mehrere der Regeln erzwingen müssen. Eine Tatsache ist jede Aussage, die einen aktuellen Zustand des Systems beschreibt, beispielsweise "Der Kunde John Smith hat einen iPod für 200 Euro gekauft". Für die vorliegende Erfindung sind Tatsachen Kontextinformationen, die für die mindestens eine Anwendung relevant sind, die irgendeinen Aspekt der vorliegenden Erfindung verwendet. Tatsachen sind in der Tatsachenbasis der Regelmaschine festzulegen, um Änderungen des Zustands des Systems wiederzuspiegeln, und die Regelmaschine reagiert auf diese Tatsachen durch Wirksammachen der Regeln, die diesen Tatsachen entsprechen, falls überhaupt.
  • Durch die Regelmaschine ist es möglich, Randbedingungen programmatisch unter Verwendung der Regelmaschinensprache über die Randbedingungs-Spezifikationskonsole zu spezifizieren und daher Randbedingungen, wie beispielsweise "Ein Benutzer darf einen Scheck nicht zur Bank übertragen, falls er ihn ausgestellt und unterschrieben hat" zu spezifizieren.
  • Ein anderer Aspekt der vorliegenden Erfindung sieht eine Regelmaschinen-Anpasseinrichtung vor, die für die Zugriffssteuerung auf mindestens eine Informationsressource, die mindestens einer Anwendung innerhalb eines Computernetzwerks zugeordnet ist, verwendbar ist. Die Regelmaschinen-Anpasseinrichtung wirkt als Vermittler bei der Kommunikation zwischen einer Regelmaschine und verschiedenen anwendungsspezifischen Kontextquellen bzw. einem Erzwingungspunkt für anwendungsspezifische Randbedingungs-Erzwingungspunkte. Die Regelmaschinen-Anpasseinrichtung weist ferner folgende Komponenten auf:
    • a. eine Kontextwandlerkomponente, die einen Zugriff auf die Regelmaschinen-Anpasseinrichtung für die verschiedenen Kontextquellen bereitstellt, welche Kontextinformationen bereitstellen, und als ein Vermittler bei der Kommunikation der Regelmaschine mit einer der Kontextquellen wirkt,
    • b. eine Randbedingungs-Wandlerkomponente, die als ein Vermittler bei der Kommunikation der Regelmaschine mit einer Randbedingungs-Spezifikationskonsole wirkt, welche eine Schnittstelle bereitstellt, um anwendungsspezifische Randbedingungen auf der Grundlage der Kontextquellen zu spezifizieren, um es der Regelmaschine zu ermöglichen, Randbedingungen zu erzwingen, wenn die Kontextquellen ihre jeweiligen Kontextinformationen aktualisieren, und
    • c. eine Anfragewandlerkomponente, die einen Zugriff auf die Regelmaschinen-Anpasseinrichtung für den Randbedingungs-Erzwingungspunkt bereitstellt und als Vermittler bei der Kommunikation der Regelmaschine mit dem Randbedingungs-Erzwingungspunkt wirkt, um zu ermöglichen, dass der Randbedingungs-Erzwingungspunkt Zugriffsentscheidungen auf der Grundlage anwendungsspezifischer Randbedingungen in Reaktion auf eine bestimmte Anfrage vornimmt.
  • Gemäß einer anderen Ausführungsform ist eine regelbasierte Erzwingungsplattform vorgesehen, die für die Zugriffssteuerung auf mindestens eine Informationsressource, die mindestens einer Anwendung innerhalb eines Computernetzwerks zugeordnet ist, verwendbar ist. Die Plattform weist auf: eine Regelmaschine, die in der Lage ist, Tatsachen zu behandeln und Ableitungsregeln auf diese Tatsachen anzuwenden, eine Randbedingungs-Spezifikationskonsole, die eine Schnittstelle zum Spezifizieren anwendungsspezifischer Randbedingungen auf der Grundlage vereinbarter anwendungsspezifischer Kontextquellen bereitstellt, und eine Regelmaschinen-Anpasseinrichtung, die einen Zugriffspunkt auf die Randbedingungs-Spezifikationskonsole, um in der Lage zu sein, innerhalb der Randbedingungs-Spezifikationskonsole spezifizierte Randbedingungen zur Regelmaschine weiterzuleiten, so dass die Randbedingungen als ein Regelsatz in der Regelmaschine gespeichert werden, gleichmäßige Zugriffspunkte für anwendungsspezifische Kontextquellen zum Zugriff auf die Plattform, um sie in die Lage zu versetzen, mit der Regelmaschine zu kommunizieren, so dass von den Kontextquellen bereitgestellte Kontextinformationen als Tatsachen innerhalb der Regelmaschine ausgedrückt werden können, und einen Zugriffspunkt für einen Erzwingungspunkt für anwendungsspezifische Randbedingungen zum Zugriff auf die Plattform, um eine Zugriffssteuerung auf die mindestens eine Informationsressource auf der Grundlage der anwendungsspezifischen Randbedingungen in Bezug auf von den Kontextquellen stammende Kontextinformationen zu ermöglichen, bereitstellt.
  • Gemäß einem anderen Aspekt sieht die Erfindung ein Verfahren zum Ausführen einer Zugriffssteuerung auf mindestens eine Informationsressource vor, die mindestens einer Anwendung innerhalb des Computernetzwerks zugeordnet ist. Das Verfahren weist folgende Schritte auf:
    • a. Identifizieren anwendungsrelevanter Kontextquellen zur Anwendungsentwicklungszeit,
    • b. Spezifizieren von Randbedingungen durch eine Randbedingungs-Spezifikationskonsole auf der Grundlage von Kontextinformationen, die zur Laufzeit durch die identifizierten relevanten Kontextquellen bereitgestellt werden,
    • c. Übersetzen der spezifizierten Randbedingungen durch eine Regelmaschinen-Anpasseinrichtung in Regeln, die von einer geeigneten Regelmaschine verständlich sind,
    • d. Übersetzen von Kontextinformationen, die von den identifizierten relevanten Kontextquellen ausgehen, durch die Regelmaschinen-Anpasseinrichtung in Tatsachen, die von der Regelmaschine interpretiert und mit den jeweiligen Regeln geeignet korreliert werden können,
    • e. Abfragen solcher Tatsachen bei Bedarf durch einen Erzwingungspunkt für anwendungsspezifische Randbedingungen von der Regelmaschine über die Regelmaschinen-Anpasseinrichtung, um es dem Randbedingungs-Erzwingungspunkt zu ermöglichen, geeignete Erzwingungsentscheidungen zu treffen.
  • Implementationen der Erfindung ermöglichen das Harmonisieren heterogenen Kontexts vorhandener Anwendungen und stellen einen gemeinsamen Weg zu seiner Darstellung bereit, um Zugriffsentscheidungen zu beurteilen. Ferner kann eine zentralisierte, jedoch anwendungsunabhängige Spezifikation von Zugriffsrandbedingungen ermöglicht werden. Eine zentralisierte, jedoch anwendungsunabhängige Beurteilung von Systemkontext und -randbedingungen unter Verwendung eines regelbasierten Ansatzes ist möglich. Ferner werden die Beurteilungsergebnisse in ein Format konvertiert, das einen anwendungsspezifischen Sicherheitsrandbedingungs-Erzwingungspunkt zur Entscheidung über eine Zugriffsanforderung ermöglicht.
  • Innerhalb des Schutzumfangs der vorliegenden Beschreibung definiert eine Informationsressource eine Ressource, die einer Anwendung zugeordnet ist, welche eine Implementation der Erfindung verwenden möchte, für die eine Zugriffssteuerung sinnvoll ist.
  • Gemäß einer möglichen Ausführungsform des beanspruchten Zugriffssteuerungssystems ist die Regelmaschinen- Anpasseinrichtung in der Lage, Kontextinformationen von einer der Kontextquellen in Tatsachen zu übersetzen, die von der Regelmaschine interpretiert und mit Regeln von dieser geeignet korreliert werden können.
  • Ferner ist es möglich, dass die Regelmaschinen-Anpasseinrichtung auch in der Lage ist, von der Randbedingungs-Spezifikationskonsole weitergeleitete Randbedingungen in Regeln zu übersetzen, die von der Regelmaschine interpretiert und geeignet auf Tatsachen angewendet werden können.
  • Die Regelmaschinen-Anpasseinrichtung kann als eine Komponente des Zugriffssteuerungssystems angesehen werden, welche eine gemeinsame Abstraktionsschicht über der Regelmaschine und einen gemeinsamen Weg für alle Kontextquellentypen, um in Kontakt mit der Regelmaschine zu treten, bereitstellt. Die Regelmaschinen-Anpasseinrichtung ist für das Übersetzen von Kontextinformationen der Kontextquellen sowie von der Randbedingungs-Spezifikationskonsole spezifizierter Randbedingungen für Tatsachen und Regeln in eine von der Regelmaschine interpretierbare Sprache verantwortlich.
  • Gemäß einer weiteren Ausführungsform des Zugriffssteuerungssystems ist die Regelmaschinen-Anpasseinrichtung in der Lage, Anfragen zu vom Randbedingungs-Erzwingungspunkt abgefragten Tatsachen in eine Darstellung zu übersetzen, die von der Regelmaschine interpretierbar ist, und auch Antworten auf solche von der Regelmaschine bereitgestellte übersetzte Anfragen in eine Darstellung zu übersetzen, die dementsprechend von dem Randbedingungs-Erzwingungspunkt interpretierbar ist.
  • Die Regelmaschinen-Anpasseinrichtung kann gleichmäßige Kommunikationsschnittstellen für die Vielzahl von Kontextquellen, die Randbedingungs-Spezifikationskonsole, den Randbedingungs-Erzwingungspunkt bzw. die Regelmaschine bereitstellen, um dementsprechend auf die Regelmaschinen-Anpasseinrichtung zuzugreifen.
  • Gemäß einer weiteren Ausführungsform des Zugriffssteuerungssystems ist die Regelmaschine eine ab Lager lieferbare Komponente, insbesondere JESS, die eine Tatsachenbasis zum Speichern von Tatsachen, welche von den Kontextquellen stammende Kontextinformationen darstellen, und eine Regelbasis zum Speichern von Regeln, welche Randbedingungen darstellen, die von der Randbedingungs-Spezifikationskonsole spezifiziert und weitergeleitet werden, aufweist. Im Allgemeinen braucht die zu verwendende Regelmaschine nicht für die Zugriffssteuerung spezifiziert zu werden, sondern muss nur in der Lage sein, Tatsachen zu behandeln und Ableitungsregeln auf diese Tatsachen anzuwenden. Innerhalb des Zugriffssteuerungssystems gemäß einer Ausführungsform der vorliegenden Erfindung wird eine solche Regelmaschine in einer solchen Weise verwendet, dass von den verschiedenen Kontextquellen ausgehende Kontextinformationen als Tatsachen innerhalb der Tatsachenbasis der Regelmaschine dargestellt werden. Zusätzlich werden durch die Randbedingungs-Spezifikationskonsole spezifizierte Sicherheitsrandbedingungen schließlich als Regeln innerhalb der Regelmaschine ausgedrückt. Aus diesen Gründen ist die innerhalb des vorgeschlagenen Zugriffssteuerungssystems verwendete Regelmaschinen-Anpasseinrichtung für das Übersetzen solcher Kontextinformationen sowie Randbedingungen für Tatsachen und Regeln in die von der Regelmaschine interpretierte Sprache verantwortlich. Die Sprache der Regelmaschine ist eine Computerprogrammiersprache, die zu verwenden ist, um zu beschreiben, was die Regelmaschine tun sollte. Insbesondere ist sie die Programmiersprache, in der Regeln so auszudrücken sind, dass die Regelmaschine sie verstehen und erzwingen kann. Jede Regelmaschine kommt mit ihrer eigenen Regelsprache. Im Fall von JESS könnte beispielsweise eine als "Alle Kunden, die mehr als $100 auf einmal kaufen, empfangen einen Discount von 10%" ausgedrückte Regel in der englischen Sprache als "(Kunde-Auftrag(Auftrag-Nummer ?n)(Gesamt-Preis ?p:>100))=>(festlegen(anwenden-Discount (Auftrag-Nummer ?n) (Prozentsatz 10)))" in der Regelmaschinensprache von JESS übersetzt werden.
  • Die Regelmaschinen-Anpasseinrichtung kann vollständig anwendungsunabhängig sein und eine gemeinsame Abstraktionsschicht oberhalb der Regelmaschine und einen gemeinsamen Weg für alle relevanten Komponenten, die für eine bestimmte Anwendung spezifisch sind, zum Zugriff auf die Regelmaschinen-Anpasseinrichtung darstellen.
  • Die Komponenten, welche die regelbasierte Erzwingungsplattform bilden, die von einer Ausführungsform der vorliegenden Erfindung bereitgestellt wird, sind im Allgemeinen auch anwendungsunabhängig. Dies bedeutet, dass jede Anwendung, welche die vorgeschlagene Erzwingungsplattform verwendet, diese Komponenten als solche verwendet. Abgesehen von der Regelmaschine, die eine ab Lager lieferbare Komponente sein kann, welche in der Lage ist, Tatsachen zu behandeln und Ableitungsregeln auf diese Tatsachen anzuwenden, weist die Erzwingungsplattform eine Randbedingungs-Spezifikationskonsole und eine Regel maschinen-Anpasseinrichtung auf. Die Regelmaschinen-Anpasseinrichtung kann vom selben Typ sein, wie vorstehend beschrieben wurde. Sie kann dementsprechend aus drei Teilkomponenten bestehen, nämlich einer Kontextwandlerkomponente, einer Randbedingungs-Wandlerkomponente und einer Anfragewandlerkomponente.
  • Die Kontextwandlerkomponente stellt einen Zugriffspunkt zu der regelbasierten Erzwingungsplattform für die verschiedenen anwendungsspezifischen Kontextquellen dar. Überdies ist dieser Zugriffspunkt gleichmäßig, so dass alle Kontextquellen die gleiche Kommunikations-Anwendungsprogrammschnittstelle (API) für den Zugriff auf die regelbasierte Erzwingungsplattform und das Aktualisieren ihrer jeweiligen Kontextinformationen verwenden. Die Kontextwandlerkomponente stellt diese API bereit. Zusätzlich ist die Kontextwandlerkomponente für das Übersetzen von Aufrufen dieser API von einer der Kontextquellen in eine Darstellung, die von der Regelmaschine interpretiert werden kann, verantwortlich. Dies bedeutet, dass die Kontextwandlerkomponente für das Übersetzen von Kontextinformationen, die von einer der Kontextquellen ausgehen, in Tatsachen, die von der Regelmaschine interpretiert und geeignet mit jeweiligen Regeln korreliert werden können, verantwortlich ist. Die Regelmaschine hat eine spezifische Tatsachenfestlegungssprache, in die die Kontextinformationen übersetzt werden müssen. Die Tatsachenfestlegungssprache ist eine Teilmenge der Regelmaschinensprache, welche zuvor erklärt wurde. Die Tatsachenfestlegungssprache wird verwendet, um Tatsachen in der Tatsachenbasis der Regelmaschine festzulegen. Im Fall von JESS sind Ausdrücke der Tatsachenfestlegungssprache von der Form "(festlegen (<Tatsache-Name> (<Tatsache-Parameter1-Name> <Tatsache- Parameter1-Wert>)...).
  • Die Randbedingungs-Wandlerkomponente arbeitet mit der Randbedingungs-Spezifikationskonsole zusammen. Ihre Rolle besteht darin, durch die Randbedingungs-Spezifikationskonsole spezifizierte Randbedingungen zur Regelmaschine weiterzuleiten, so dass diese Randbedingungen von der Regelmaschine erzwungen werden können, wenn die Kontextquellen ihre jeweiligen Kontextinformationen aktualisieren.
  • Die Anfragewandlerkomponente bildet eine Verbindung zwischen dem Erzwingungspunkt für anwendungsspezifische Randbedingungen und der Regelmaschine. Die Anfragewandlerkomponente stellt eine API für den Erzwingungspunkt für anwendungsspezifische Randbedingungen bereit, um nach bestimmten Typen von Tatsachen zu fragen. Diese Typen von Tatsachen entsprechen Tatsachen, die für die bestimmte mindestens eine Anwendung sinnvoll sind, welche die regelbasierte Erzwingungsplattform verwendet, um geeignete Randbedingungen zu erzwingen. Die Anfragewandlerkomponente ist für das Übersetzen dieser Anfragen in eine Darstellung, die von der Regelmaschine verständlich ist, verantwortlich. Dies bedeutet, dass diese Anfragen in die Anfragesprache der Regelmaschine übersetzt werden müssen. Die Anfragesprache ist eine andere Teilmenge der Regelmaschinensprache. Die Anfragesprache wird verwendet, um Tatsachen von der Tatsachenbasis der Maschine abzufragen. Im Fall von JESS sind Anfrageausdrücke von der Form "(ausführen-Anfrage <Anfrage-Name> <Anfrage-Parameter1-Wert>...). Zusätzlich ist die Anfragewandlerkomponente auch für das Übersetzen von Antworten auf solche übersetzten Anfragen, die von der Regelmaschine zurückkommen, in eine Datenstruktur, die vom Erzwingungspunkt für anwendungsspezifische Randbedingungen verständlich ist, verantwortlich.
  • Abgesehen von der Regelmaschinen-Anpasseinrichtung weist die regelbasierte Erzwingungsplattform auch eine Randbedingungs-Spezifikationskonsole auf. Die Randbedingungs-Spezifikationskonsole ist eine Komponente, die es einem Anwendungsentwickler insbesondere ermöglicht, dass jemand, der für das Ausdrücken von Sicherheitsrandbedingungen verantwortlich ist, geeignete Randbedingungen auf der Grundlage vereinbarter Kontextquellen spezifiziert. Diese Randbedingungs-Spezifikationskonsole stellt eine Schnittstelle bereit, um diese Randbedingungen in der Regelsprache der Regelmaschine zu spezifizieren. Dann leitet die Randbedingungs-Spezifikationskonsole diese Randbedingungen zur Regelmaschinen-Anpasseinrichtung weiter, so dass die Randbedingungen als ein Regelsatz in der Regelmaschine gespeichert werden.
  • Die Komponenten der mindestens einer Anwendung, die die von einer Implementation der vorliegenden Erfindung bereitgestellte regelbasierte Erzwingungsplattform verwenden möchte, oder die Teil des Zugriffssteuerungssystems gemäß einer weiteren Ausführungsform der vorliegenden Erfindung ist, liegen über der regelbasierten Erzwingungsplattform und verwenden diese Plattform zum Spezifizieren und Erzwingen anwendungsspezifischer Randbedingungen, wie beispielsweise Sicherheitsrandbedingungen. Diese anwendungsspezifischen Komponenten müssen durch die mindestens eine Anwendung bereitgestellt werden, welche die regelbasierte Plattform verwendet, um mit ihr zu kommunizieren. Diese anwendungsspezifischen Komponenten gehören zwei Typen an.
  • Einerseits gibt es Kontextquellen, die anwendungsspezifische Komponenten sind, welche der regelbasierten Erzwingungsplattform Kontextinformationen bereitstellen. Auf welchem Typ von Kontextinformationen die Randbedingungen basiert werden sollten, ist anwendungsspezifisch und muss von einem Entwickler der mindestens einen Anwendung entschieden werden. Jede Kontextquellenkomponente muss in einer solchen Weise programmiert werden, dass sie mit der Kontextwandlerkomponente als Teil der Regelmaschinen-Anpasseinrichtung kommunizieren kann, die wiederum Teil der regelbasierten Erzwingungsplattform sein kann, die von einem Aspekt der vorliegenden Erfindung vorgesehen ist. Eine solche Kommunikation kann in gleichmäßiger Weise unter Verwendung einer geeigneten Kommunikations-API verwirklicht werden.
  • Ein Randbedingungs-Erzwingungspunkt ist auch eine anwendungsspezifische Komponente, die dafür verantwortlich ist, auf der Grundlage der anwendungsspezifischen Randbedingungen, die während der Entwicklung der mindestens einen Anwendung spezifiziert wurden, geeignete Zugriffsentscheidungen, wie beispielsweise Sicherheitsentscheidungen, zu treffen, wie beispielsweise Zugriff auf eine Ressource zu gewähren oder zu verweigern. Um solche Entscheidungen zu treffen, kommuniziert der Randbedingungs-Erzwingungspunkt mit einer Anfragewandlerkomponente der Regelmaschinen-Anpasseinrichtung. Der Randbedingungs-Erzwingungspunkt delegiert die Entscheidung über Anfragen an die Anfragewandlerkomponente der Regelmaschinen-Anpasseinrichtung, die in der regelbasierten Plattform enthalten ist, an die regelbasierte Erzwingungsplattform. Diese Kommunikation mit der Anfragewandlerkomponente wird in gleichmäßiger Weise unter Verwendung einer geeigneten Kommunikations-API erreicht.
  • Zusammenfassend wird nachfolgend eine Gesamtarchitektur des durch eine Implementation der vorliegenden Erfindung bereitgestellten Zugriffssteuerungssystems, die wahrscheinlich eine regelbasierte Erzwingungsplattform gemäß einer Ausführungsform der vorliegenden Erfindung und/oder eine Regelmaschinen-Anpasseinrichtung gemäß einer anderen Ausführungsform der vorliegenden Erfindung aufweist, beschrieben.
  • Zur Entwicklungszeit, wobei es sich um die Zeit handelt, zu der die mindestens eine Anwendung entwickelt wird, werden die für die mindestens eine Anwendung relevanten Kontextquellen von Systementwicklern identifiziert und relevante Randbedingungen von ihnen vereinbart, verbindet ein Sicherheitsadministrator zu der Randbedingungs-Spezifikationskonsole und spezifiziert Sicherheitsrandbedingungen auf der Grundlage von Kontextinformationen, die zur Laufzeit von den identifizierten relevanten Kontextquellen bereitgestellt werden. Diese Randbedingungen werden von der Regelmaschinen-Anpasseinrichtung in Regeln übersetzt, die von der zugrunde liegenden Regelmaschine verständlich sind.
  • Zur Einrichtungszeit, wobei es sich um die Zeit handelt, zu der ein Systemadministrator die mindestens eine Anwendung auf dem Produktionsserver einrichtet, spezifiziert ein Systemadministrator beispielsweise durch eine geeignete Konfigurationsdatei, welche Kontextquellen mit der Regelmaschinen-Anpasseinrichtung zu verbinden sind. Diese Liste relevanter Quellen wurde während der Entwicklungszeit von den entsprechenden Anwendungsentwicklern festgelegt.
  • Zur Laufzeit, wobei es sich um die Zeit handelt, zu der sich der Kontext entwickelt und das System Sicherheitsrandbedingungen auf der Grundlage dieser Kontextinformationen erzwingt, übersetzt die Regelmaschinen-Anpasseinrichtung Kontextinformationen, die von verschiedenen relevanten Kontextquellen ausgehen, in Tatsachen, die für die Regelmaschine verständlich sind, so dass Tatsachen, welche aktuelle Kontextinformationen darstellen, in der Tatsachenbasis der Regelmaschine gespeichert werden. Das Hinzufügen neuer Tatsachen, welche Änderungen von Kontextinformationen darstellen, löst Regeln aus, die zur Entwicklungszeit spezifiziert wurden, wie vorstehend erklärt wurde. Diese Regeln erzeugen wiederum neue Tatsachen, welche Informationen darstellen, die für das Erzwingen der Randbedingungen benötigt werden. Der Erzwingungspunkt für anwendungsspezifische Randbedingungen fragt über die Regelmaschinen-Anpasseinrichtung solche Tatsachen an, um Erzwingungsentscheidungen zu treffen.
  • Gemäß einem anderen Aspekt sieht die Erfindung ein Computerprogrammprodukt mit einem computerlesbaren Medium und einem auf dem computerlesbaren Medium gespeicherten Computerprogramm mit einem Programmcode vor, der geeignet ist, um ein Verfahren gemäß der vorliegenden Erfindung auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.
  • Gemäß einem anderen Aspekt betrifft die vorliegende Erfindung ein Computerprogramm mit einem Programmcode, der für das Ausführen eines Verfahrens gemäß der vorliegenden Erfindung geeignet ist, wenn das Computerprogramm auf einem Computer ausgeführt wird.
  • Das computerlesbare Medium mit einem darauf gespeicherten Computerprogramm ist von einer anderen Ausführungsform der vorliegenden Erfindung vorgesehen, wobei das Computerprogramm einen Programmcode aufweist, der dafür geeignet ist, ein Verfahren gemäß der vorliegenden Erfindung auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.
  • Weitere Merkmale und Ausführungsformen der Erfindung werden anhand der Beschreibung und der anliegenden Zeichnung verständlich werden.
  • Aus Gründen der Klarheit bezieht sich die vorliegende Erörterung auf ein abstraktes Beispiel eines Zugriffssteuerungssystems. Das Verfahren und das System, die von Ausführungsformen der vorliegenden Erfindung vorgesehen sind, können jedoch mit einer Vielzahl von Typen von Netzwerksystemen, einschließlich Netzwerken und Kommunikationssystemen, die von dem in der folgenden Zeichnung dargestellten spezifischen Beispiel verschieden sind, arbeiten.
  • Es sei bemerkt, dass die Erfindung, wenngleich sie in Bezug auf ein spezifisches System beschrieben wird, in einer Vielzahl von Kommunikationssystemen in der Art hoch entwickelter Kabelfernsehsysteme, hoch entwickelter Telefonnetze oder anderer Kommunikationssysteme, die von dem System und dem Verfahren gemäß Implementationen der vorliegenden Erfindung profitieren würden, Anwendungen hat. Es ist beabsichtigt, dass das in der Beschreibung und den Ansprüchen verwendete System jegliche Informations- und Kommunikationssysteme abdeckt, es sei denn, dass der Kontext etwas anderes erfordert.
  • Die Erfindung ist in der Zeichnung als Beispiel schematisch dargestellt und wird in Bezug auf die Zeichnung detailliert erklärt. Es sei bemerkt, dass die Beschreibung den Schutzumfang der vorliegenden Erfindung in keiner Weise einschränken soll und lediglich eine Erläuterung einer bevorzugten Ausführungsform der Erfindung ist.
  • Kurzbeschreibung der Zeichnung
  • Es zeigen:
  • 1 eine schematische Architektur einer möglichen Ausführungsform des Zugriffssteuerungssystems gemäß einem Aspekt der vorliegenden Erfindung,
  • 2 schematisch eine Architektur einer weiteren Ausführungsform des Zugriffssteuerungssystems gemäß einem Aspekt der vorliegenden Erfindung,
  • 3 ein Sequenzdiagramm für eine mögliche Randbedingungsspezifikation innerhalb einer anderen Ausführungsform des Zugriffssteuerungssystems gemäß einem Aspekt der vorliegenden Erfindung,
  • 4 ein weiteres Sequenzdiagramm für eine innerhalb einer weiteren Ausführungsform des Zugriffssteuerungssystems gemäß einem Aspekt der vorliegenden Erfindung ausgeführte mögliche Kontextaktualisierung und
  • 5 ein Sequenzdiagramm für eine innerhalb einer anderen Ausführungsform des Zugriffssteuerungssystems gemäß einem Aspekt der vorliegenden Erfindung verwirklichte mögliche Randbedingungserzwingung.
  • Detaillierte Beschreibung der Zeichnung
  • 1 zeigt eine mögliche Gesamtarchitektur eines Zugriffssteuerungssystems 100. Im Allgemeinen kann das Zugriffssteuerungssystem 100 in zwei Untersysteme zerlegt werden. Eines der Untersysteme entspricht einer regelbasierten Erzwingungsplattform 200, und das zweite Untersystem weist anwendungsspezifische Komponenten auf, die einer Anwendung zugeordnet sind, welche beabsichtigt, die regelbasierte Erzwingungsplattform 200 zum Ausführen einer Zugriffssteuerung auf mindestens eine der Anwendung zugeordnete Informationsressource zu verwenden. Die anwendungsspezifischen Komponenten des anwendungsspezifischen Untersystems 300 befinden sich alle über der regelbasierten Erzwingungsplattform 200 und beabsichtigen die Verwendung der Plattform 200 zum Spezifizieren und Erzwingen von anwendungsspezifischen Randbedingungen, insbesondere Sicherheitsrandbedingungen. Die anwendungsspezifischen Komponenten werden im Allgemeinen von der Anwendung bereitgestellt, welche die regelbasierte Erzwingungsplattform 200 verwenden möchte, um damit zu kommunizieren. Diese Komponenten können in zwei Typen unterteilt werden. Die Anwendung, welche die regelbasierte Erzwingungsplattform 200 verwenden möchte, weist eine Vielzahl von Kontextquellen 301, nämlich eine Kontextquelle 301_1, eine Kontextquelle 301_2, ..., eine Kontextquelle 301_N, auf. Die Kontextquellen 301 stellen Kontextinformationen für die regelbasierte Erzwingungsplattform 200 bereit. Welcher Typ von Kontextinformationen zu spezifizierenden Randbedingungen zugrunde gelegt werden sollte, ist anwendungsspezifisch und muss von einem Entwickler der entsprechenden Anwendung entschieden werden. Jede Kontextquelle 301 muss in einer solchen Weise programmiert werden, dass sie mit der regelbasierten Erzwingungsplattform 200 kommunizieren kann. Dies kann in gleichmäßiger Weise unter Verwendung einer geeigneten Kommunikations-API 302 erreicht werden. Eine weitere anwendungsspezifische Komponente ist durch einen Randbedingungs-Erzwingungspunkt 303 repräsentiert. Der Randbedingungs-Erzwingungspunkt 303 ist eine anwendungsspezifische Komponente, die verantwortlich ist, um geeignete Zugriffsentscheidungen, insbesondere Sicherheitsentscheidungen, beispielsweise zum Gewähren oder Verweigern von Zugriffen auf eine Informationsressource, die der Anwendung zugeordnet ist, zu treffen. Diese Entscheidungen sollten auf der Grundlage von anwendungsspezifischen Randbedingungen getroffen werden, die während des Entwurfs der entsprechenden Anwendung spezifiziert werden müssen. Um solche Entscheidungen zu treffen, kommuniziert der Randbedingungs-Erzwingungspunkt 303 über eine Schnittstelle 304 mit der regelbasierten Erzwingungsplattform 200.
  • Die regelbasierte Erzwingungsplattform 200 besteht aus mehreren Komponenten, die im Allgemeinen anwendungsunabhängig sind.
  • Eine der anwendungsunabhängigen Komponenten ist eine Regelmaschine 201. Die Regelmaschine 201 kann beispielsweise als eine ab Lager lieferbare Komponente, wie beispielsweise JESS, gewählt werden, die in der Lage ist, Tatsachen zu behandeln und Ableitungsregeln auf diese Tatsachen anzuwenden. Die Regelmaschine 201 wird in einer solchen Weise verwendet, dass von irgendeiner der Kontextquellen 301 bereitgestellte Kontextinformationen als Tatsachen innerhalb der Tatsachenbasis der Regelmaschine dargestellt werden. Eine Tatsache ist, wie bereits zuvor erklärt wurde, eine Aussage, welche einen aktuellen Zustand des Systems beschreibt, beispielsweise "Der Kunde John Smith hat einen iPod für 200 Euro gekauft". Für die vorliegende Erfindung sind Tatsachen Kontextinformationen, die für die mindestens eine Anwendung relevant sind, die irgendeinen Aspekt der vorliegenden Erfindung verwendet. Tatsachen sind in der Tatsachenbasis der Regelmaschine festzulegen, um Änderungen des Zustands des Systems wiederzuspiegeln, und die Regelmaschine reagiert auf diese Tatsachen durch Wirksammachen der Regeln, die diesen Tatsachen entsprechen, falls überhaupt.
  • Ferner sollten auch anwendungsspezifische Zugriffsrandbedingungen, wie beispielsweise Sicherheitsrandbedingungen, schließlich als Regeln innerhalb der Regelmaschine ausgedrückt werden. Die Regeln, die ein Geschäft befolgt, können beispielsweise von einer Sicherheitsvereinbarung, wie beispielsweise "Alle Angestellten, die keine spezifische Berechtigung haben, dürfen nicht in den Sicherheitsbereich eintreten" oder von anderen Quellen in der Art einer Firmenvereinbarung kommen. Demgemäß kann die Regelmaschine 201 standardmäßig ohne Konzentration auf die entsprechende Anwendung, welche die regelbasierte Erzwingungsplattform 200 verwendet, arbeiten.
  • Abgesehen von der Regelmaschine 201 stellt die regelbasierte Erzwingungsplattform eine Regelmaschinen-Anpasseinrichtung 210 bereit. Die Regelmaschinen-Anpasseinrichtung 210 bildet eine Komponente der regelbasierten Erzwingungsplattform 200. Sie stellt eine gemeinsame Abstraktionsschicht über der Regelmaschine 201 und einen gemeinsamen Weg für alle Kontextquellentypen 301 zum Zugriff auf die regelbasierte Erzwingungsplattform 200 bereit.
  • Die Regelmaschinen-Anpasseinrichtung 210 kann aus den folgenden drei Teilkomponenten gebildet werden. Die Regelmaschinen-Anpasseinrichtung 210 weist eine Kontextwandlerkomponente 211 auf, die einen Zugriffspunkt zu der regelbasierten Erzwingungsplattform 200 für die verschiedenen Kontextquellen 301 bereitstellt. Dies bedeutet, dass die Kontextquellen 301 alle über die gleiche Kommunikations-API 302 mit der regelbasierten Erzwingungsplattform 200, insbesondere mit der Kontextwandlerkomponente 211 der Regelmaschinen-Anpasseinrichtung 210, verbunden werden können. Durch diese Kommunikations-API 302 können die Kontextquellen 301 auf die regelbasierte Erzwingungsplattform 200 zugreifen und ihre jeweiligen Kontextinformationen aktualisieren. Die Kontextwandlerkomponente 211 stellt diese API 302 bereit.
  • Zusätzlich ist eine Kontextwandlerkomponente 211 für das Übersetzen jedes Aufrufs dieser API 302 von einer der Kontextquellen 301 in eine Darstellung, die von der Regelmaschine 201 interpretiert werden kann, verantwortlich. Dies bedeutet, dass die Kontextwandlerkomponente 211 einen solchen Aufruf in eine Tatsachenfestlegungssprache der Regelmaschine übersetzt. In einem Fall, in dem eine Kontextquelle 301 ein Aufgabenverwalter ist und ein Kontextinformationsbestandteil "Benutzer Alice hat Aufgabe Nummer 3 ausgeführt" ist, ruft die Kontextquelle 301 die API 302 auf und stellt als Parameter dieses Aufrufs eine Datenstruktur bereit, welche die Zeichenkette von "Benutzer" auf die Zeichenkette "Alice" und die Zeichenkette "Aufgabe-Nummer" auf die Nummer "3" abbildet. Die Zeichenkette "Benutzer-hat-Aufgabe-ausgeführt" wird auch als ein anderer Parameter übergeben. Der Kontextwandler 211 übersetzt dann diesen Aufruf in eine Kontrollaussage in der Festlegungssprache der Regelmaschine, wobei dies im Fall von JESS als "(festlegen (Benutzer-hat-Aufgabe-ausgeführt (Benutzer Alice) (Aufgabe-Nummer 3))" übersetzt werden würde. Die von einer der Kontextquellen 301 ausgehenden übersetzten Aufrufe können demgemäß innerhalb der Regelmaschine 201 als Tatsachen dargestellt werden, die von der Regelmaschine 201 behandelt werden können.
  • Die Regelmaschinen-Anpasseinrichtung 210 weist ferner eine Randbedingungs-Wandlerkomponente 212 auf. Die Randbedingungs-Wandlerkomponente 212 arbeitet mit einer weiteren Komponente der regelbasierten Erzwingungsplattform 200, nämlich einer Randbedingungs-Spezifikationskonsole 214, zusammen. Die Randbedingungs-Spezifikationskonsole 214 ist im Allgemeinen von der Regelmaschinen-Anpasseinrichtung 210 getrennt, kann jedoch auch Teil der Regelmaschinen-Anpasseinrichtung 210 sein. Die Rolle der Randbedingungs-Wandlerkomponente 212 besteht darin, von einem Anwendungsentwickler ausgedrückte Randbedingungen zur Regelmaschine 201 weiterzuleiten, so dass diese Randbedingungen von der Regelmaschine 201 erzwungen werden können, wenn die Kontextquellen 301 ihre jeweiligen Kontextinformationen aktualisieren.
  • Die Randbedingungs-Spezifikationskonsole 214 ist eine Komponente, die es einem Anwendungsentwickler, insbesondere demjenigen, der für das Ausdrücken von anwendungs spezifischen Randbedingungen, im Speziellen Sicherheitsrandbedingungen, verantwortlich ist, ermöglicht, Randbedingungen auf der Grundlage vereinbarter Kontextquellen 301 zu spezifizieren. Diese Randbedingungs-Spezifikationskonsole 214 stellt eine Schnittstelle bereit, um diese Randbedingungen in der Regelsprache der Regelmaschine zu spezifizieren. Die Randbedingungs-Spezifikationskonsole 214 stellt bereits die Randbedingungen in der Regelmaschinensprache bereit. Im Fall von JESS könnte beispielsweise eine als "Alle Kunden, die mehr als $100 auf einmal kaufen, empfangen einen Discount von 10%" ausgedrückte Regel in der englischen Sprache als "(Kunde-Auftrag(Auftrag-Nummer ?n) (gesamt-Preis ?p:>100))=>(festlegen(anwenden-Discount (Auftrag-Nummer ?n) (Prozentsatz 10)))" in der Regelmaschinensprache von JESS übersetzt werden. Dann leitet die Randbedingungs-Spezifikationskonsole 214 diese von einem Anwendungsentwickler spezifizierten Randbedingungen zur Regelmaschinen-Anpasseinrichtung 210 weiter, so dass die Randbedingungen als ein Satz von Regeln, die behandelt, nämlich auf entsprechende Tatsachen angewendet werden können, in der Regelmaschine 201 gespeichert werden.
  • Die Regelmaschinen-Anpasseinrichtung 210 weist ferner eine dritte Komponente, nämlich eine Anfragewandlerkomponente 213, auf. Die Anfragewandlerkomponente 213 stellt eine Verbindung zwischen dem Randbedingungs-Erzwingungspunkt 303 und der Regelmaschine 201 her. Der Anfragewandler 213 stellt eine Kommunikations-API für den Randbedingungs-Erzwingungspunkt 303 zum Anfragen über bestimmte Typen von Tatsachen bereit. Im Allgemeinen sollten dies Tatsachen sein, die für die entsprechende Anwendung sinnvoll sind, welche die regelbasierte Erzwingungsplattform 200 verwendet, um geeignete anwendungsspezifische Randbedingungen zu erzwingen.
  • Der Anfragewandler 213 ist ferner dafür verantwortlich, diese Anfragen in eine Darstellung zu übersetzen, die für die Regelmaschine 201 verständlich ist. Es ist beispielsweise möglich, dass der Randbedingungs-Erzwingungspunkt 303 eine Sicherheitskomponente einer Auftragsverwaltungsanwendung ist. Demgemäß möchte der Randbedingungs-Erzwingungspunkt 303 wissen, ob ein bestimmter Benutzer eine spezifische Aufgabe ausführen darf, wobei er beispielsweise wissen muss, ob "Alice Aufgabe 4 ausführen darf". Um dies zu bestimmen, ruft der Randbedingungs-Erzwingungspunkt 303 die API 304 auf und stellt als Parameter dieses Aufrufs eine Listendatenstruktur bereit, welche die Zeichenkette "Alice" und die Zahl "4" enthält. Die Zeichenkette "darf-ausführen" wird auch als ein anderer Parameter übergeben. Der Anfragewandler 213 übersetzt diesen Aufruf dann in eine Anfrageaussage in der Anfragesprache der Regelmaschine, wobei er im Fall von JESS als "(ausführen-Anfrage darf-ausführen Alice 4)" übersetzt werden würde. Dies bedeutet, dass diese Anfragen in die Anfragesprache der Regelmaschine übersetzt werden sollten.
  • Zusätzlich ist die Anfragewandlerkomponente 213 dafür verantwortlich, Antworten auf solche übersetzten Anfragen, die von der Regelmaschine 201 zurückkommen, in eine Datenstruktur zu übersetzen, die für den Randbedingungs-Erzwingungspunkt 303 verständlich ist. In dem vorhergehenden Beispiel wäre diese Datenstruktur einfach ein einziger Boolescher Wert, welcher angibt, ob Alice Auftrag 4 ausführen darf oder nicht. In einem anderen Beispiel, wobei der Randbedingungs-Erzwingungspunkt 303 alle Randbedingungen kennen muss, die für Alice nicht verboten sind, wäre die vom Anfragewandler 213 zurückgegebene Datenstruktur eine Liste, welche die Kennnummern jener Aufgaben, die für Alice nicht verboten sind, enthält.
  • 2 zeigt eine spezifischere Architektur einer weiteren Ausführungsform eines Zugriffssteuerungssystems. Die in 2 dargestellte Architektur kann zum Erzwingen einer dynamischen Trennung von Aufgaben- bzw. Pflichteigenschaften in einer Arbeitsablauf-Verwaltungsanwendung verwendet werden. Die Arbeitsablauf-Verwaltungsanwendung ist in 2 durch verschiedene anwendungsspezifische Komponenten, nämlich die Arbeitsablaufmaschine 401_1, eine Benutzerverwaltungsmaschine 401_2, einen Arbeitsablaufmodellierer 401_3 und einen Sicherheitsaufgabenmanager 403, dargestellt. Die Arbeitsablaufmaschine 401_1, die Benutzerverwaltungsmaschine 401_2 und der Arbeitsablaufmodellierer 401_3 entsprechen anwendungsspezifischen Kontextquellen 401, welche jeweilige Kontextinformationen zur Laufzeit bereitstellen.
  • Die regelbasierte Erzwingungsplattform 500 hat im Wesentlichen den gleichen Aufbau wie die regelbasierte Erzwingungsplattform 200 aus 1. Die regelbasierte Erzwingungsplattform 500 enthält auch eine Randbedingungs-Spezifikationskonsole 514, eine Regelmaschinen-Anpasseinrichtung 510 und eine Regelmaschine 501. Die Regelmaschinen-Anpasseinrichtung 510 weist eine Kontextwandlerkomponente 511, eine Randbedingungs-Wandlerkomponente 512 und eine Anfragewandlerkomponente 513 auf. Alle Komponenten der regelbasierten Erzwingungsplattform 500 haben jeweils die gleichen Funktionen wie die entsprechenden Komponenten der regelbasierten Erzwingungsplattform 200 aus 1. Die Kontextwandlerkomponente 511 stellt eine gleichmäßige Kommunikations-API 402 bereit. Die Anfragewandlerkomponente 513 stellt eine gleichmäßige Kommunikations-API 404 bereit. In dem in 2 dargestellten Beispiel sind die relevanten Kontextquellen durch die Arbeitsablaufmaschine 401_1, die Benutzerverwaltungsmaschine 401_2 und den Arbeitsablaufmodellierer 401_3 dargestellt. Die Benutzerverwaltungsmaschine 401_2 stellt Kontextinformationen über Benutzer, von denen angenommen wird, dass sie die Arbeitsablaufanwendung 400 verwenden, sowie über ihre Rolle innerhalb der Gesamtorganisation bereit. Der Arbeitsablaufmodellierer 401_3 stellt Kontextinformationen über die Art, in der Arbeitsabläufe als ein Aufgabensatz modelliert werden, sowie darüber, welcher Rolle innerhalb der Organisation jede Aufgabe zugewiesen wird, bereit. Die Arbeitsablaufmaschine 401_1 stellt Kontextinformationen darüber bereit, welcher Benutzer welche Aufgabe in welcher Arbeitsablaufinstanz ausgeführt hat.
  • In dem in 2 dargestellten Beispiel verwendet ein Sicherheitsadministrator des Arbeitsablauf-Verwaltungssystems die Randbedingungs-Spezifikationskonsole 514, um die dynamische Trennung von Aufgaben- bzw. Pflichtrandbedingungen in Bezug auf Aufgaben, Modelle und Instanzen, die von den vorstehend beschriebenen Kontextquellen kommen, zu spezifizieren. Diese Randbedingungen sind beispielsweise von der Form "Aufgabe T1 und Aufgabe T2 sollten in jeder Arbeitsablaufinstanz von einem anderen Benutzer ausgeführt werden".
  • Ferner wirkt in diesem Beispiel der Sicherheits aufgabenmanager 403 als der Randbedingungs-Erzwingungspunkt. Dieser Sicherheitsaufgabenmanager 403 fragt an der Regelmaschinen-Anpasseinrichtung 510 Tatsachen in der Form von "Aufgabe T ist für Benutzer U in der Arbeitsablaufinstanz I verboten" an.
  • Eine solche Einrichtung ermöglicht das Erfassen und Beurteilen von Trennungseigenschaften in der Art von: "Ein Angestellter darf keinen Kreditvertrag unterzeichnen, falls er an den früheren Schritten zur Vorbereitung des Vertrags beteiligt war".
  • 3 zeigt ein Ablaufdiagramm für eine Randbedingungsspezifikation durch ein Zugriffssteuerungssystem gemäß einem Aspekt der vorliegenden Erfindung. Ein Administrator 31 definiert oder identifiziert Kontextquellen 32, die für die zu entwickelnde Anwendung relevant sind (Schritt 1). Die identifizierten relevanten Kontextquellen 32 stellen einen bestimmten Typ von Kontextinformationen bereit, auf die die Spezifikation der anwendungsspezifischen Randbedingungen zu basieren ist (Schritt 2). Der Administrator verbindet zur Entwicklungszeit mit einer Randbedingungs-Spezifikationskonsole 33, um anwendungsspezifische Randbedingungen auf der Grundlage der Kontextinformationen zu spezifizieren, die zur Laufzeit von den identifizierten relevanten Kontextquellen 32 bereitgestellt werden (Schritt 3). Diese Randbedingungen werden durch die Randbedingungs-Spezifikationskonsole 33 zu einer Randbedingungs-Wandlerkomponente 34 weitergeleitet, die eine Komponente einer Regelmaschinen-Anpasseinrichtung ist (Schritt 4). Die Randbedingungen werden dann von der Randbedingungs-Wandlerkomponente 34 in Regeln übersetzt, die für eine zugrunde liegende Regelmaschine 35 verständlich sind (Schritt 5). Diese übersetzten Randbedingungen werden als ein Regelsatz in der Regelmaschine 35 gespeichert (Schritt 6).
  • 4 zeigt ein Ablaufdiagramm für eine Kontextaktualisierung. Eine Kontextquelle 41 als Teil einer Anwendung, welche beabsichtigt, eine regelbasierte Erzwingungsplattform gemäß einer Implementation der vorliegenden Erfindung zu verwenden, aktualisiert ihre Kontextinformationen, welche einer Änderung in ihren Kontextinformationen entsprechen (Schritt 1). Die Kontextquelle 41 leitet die Kontextinformationsaktualisierung über einen Zugriffspunkt, der vom Kontextwandler 42 bereitgestellt wird, zu einer Kontextwandlerkomponente 42 weiter, welche Teil einer Regelmaschinen-Anpasseinrichtung ist (Schritt 2). Dieser Zugriffspunkt ist gleichmäßig, so dass alle Kontextquellen die gleiche Kommunikations-API verwenden können, um auf die Kontextwandlerkomponente 42 zuzugreifen und ihre jeweiligen Kontextinformationen zu aktualisieren. Die Kontextwandlerkomponente 42 ist für das Übersetzen von Aufrufen dieser API von irgendeiner Kontextquelle in eine Darstellung verantwortlich, die von einer zugrunde liegenden Regelmaschine 43 interpretiert werden kann. Dies bedeutet, dass die Kontextwandlerkomponente 42 die von der Kontextquelle 41 ausgehende Kontextinformationsaktualisierung in Tatsachen, die von der Regelmaschine 43 verständlich sind, übersetzen muss (Schritt 3), und daher Tatsachen, welche aktuelle Kontextinformationen darstellen, in der Tatsachenbasis der Regelmaschinen gespeichert werden (Schritt 4). Das Hinzufügen neuer Tatsachen, welche Änderungen an Kontextinformationen darstellen, löst Regeln aus, die zur Entwicklungszeit spezifiziert wurden. Diese Regeln erzeugen wiederum neue Tatsachen, welche Informationen darstellen, die für das Erzwingen jeweiliger Randbedingungen benötigt werden.
  • 5 zeigt ein Ablaufdiagramm für eine Randbedingungserzwingung durch das Beispiel eines Arbeitsablaufssystems. Ein Angestellter 51 beabsichtigt, eine bestimmte Aufgabe auszuführen. Daher stellt er sich bei einem Manager 52 für sichere Aufgaben vor (Schritt 1). Der Manager 52 für sichere Aufgaben kommuniziert mit einer Anfragewandlerkomponente 53, welche Teil einer jeweiligen Regelmaschinen-Anpasseinrichtung ist (Schritt 2). Diese Kommunikation mit einer Anfragewandlerkomponente 53 wird in gleichmäßiger Weise unter Verwendung einer geeigneten Kommunikations-API erreicht. Die Anfragewandlerkomponente 53 bildet eine Verbindung zwischen dem Manager 52 für sichere Aufgaben und einer Regelmaschine 54. Sie stellt dem Manager 52 für sichere Aufgaben die API für das Anfragen zu bestimmten Tatsachentypen, in dem hier dargestellten Fall in Form einer Frage "Darf der Angestellte 51 die Aufgabe ausführen" bereit. Die Anfragewandlerkomponente 53 übersetzt die von dem Manager 52 für sichere Aufgaben ausgehende Anfrage in eine Darstellung, die für die Regelmaschine 54 verständlich ist (Schritt 3). Die konvertierte Anfrage wird zur Regelmaschine 54 weitergeleitet (Schritt 4), welche die übersetzte Anfrage beantwortet, wobei die Antwort von der Regelmaschine 54 zur Anfragewandlerkomponente 53 zurückkehrt (Schritt 5). Die Anfragewandlerkomponente 53 übersetzt nun die Antwort in eine Datenstruktur, die für den Manager 52 für sichere Aufgaben verständlich ist. Die übersetzte Antwort enthält eine Erwiderung darauf, ob der Angestellte 51 die spezifische Aufgabe ausführen darf (Schritt 6). Der Manager 52 für sichere Aufgaben trifft nun eine geeignete Sicherheitsentscheidung, die im vorliegenden Fall darin besteht, es dem Angestellten zu erlauben, die fragliche Aufgabe auszuführen, oder ihm dies zu verbieten, und benachrichtigt den Angestellten dementsprechend (Schritt 7).

Claims (17)

  1. Zugriffssteuerungssystem, das eine Zugriffssteuerung auf mindestens eine Informationsressource bereitstellt, die mindestens einer Anwendung innerhalb eines Computernetzwerks zugeordnet ist, welches aufweist: eine Vielzahl von Kontextquellen (301), die für die mindestens eine Anwendung relevant sind und Kontextinformationen bereitstellen, eine Randbedingungs-Spezifikationskonsole (214), die eine Schnittstelle zum Spezifizieren anwendungsspezifischer Randbedingungen auf der Grundlage der Kontextquellen (301) bereitstellt, eine Regelmaschine (201), die in der Lage ist, Tatsachen zu behandeln und Ableitungsregeln auf diese Tatsachen anzuwenden, einen Erzwingungspunkt (303) für anwendungsspezifische Randbedingungen, der konfiguriert ist, um Zugriffsanforderungen zu empfangen und daher Tatsachen abzufragen und weiter dafür verantwortlich ist, Zugriffsentscheidungen in Bezug auf die Informationsressource auf der Grundlage dieser Tatsachen und anwendungsspezifischer Randbedingungen zu treffen, und eine Regelmaschinen-Anpasseinrichtung (210), die als eine Verbindungskomponente zum Verbinden der Regelmaschine (201) mit den Kontextquellen (301), der Randbedingungs-Spezifikationskonsole (214) bzw. dem Erzwingungspunkt (303) und als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit den Kontextquellen (301), der Randbedingungs-Spezifikationskonsole (214) bzw. dem Erzwingungspunkt (303) wirkt, um eine Zugriffssteuerung auf die mindestens eine Informationsressource auf der Grundlage spezifizierter anwendungsspezifischer Randbedingungen in Bezug auf von den Kontextquellen (301) ausgehende Kontextinformationen zu ermöglichen, dadurch gekennzeichnet, dass die Regelmaschinen-Anpasseinrichtung (210) eine Kontextwandlerkomponente (211) aufweist, welche einen Zugriff auf die Regelmaschinen-Anpasseinrichtung (210) für die verschiedenen Kontextquellen (301) bereitstellt und als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit einer der Kontextquellen (301) wirkt, wobei der Kontextwandler für das Übersetzen eines Aufrufs von einer der Kontextquellen (301) in eine Darstellung, die von der Regelmaschine (201) interpretiert werden kann, verantwortlich ist.
  2. Zugriffssteuerungssystem nach Anspruch 1, wobei die Regelmaschinen-Anpasseinrichtung (210) in der Lage ist, Kontextinformationen von einer der Kontextquellen (301) in Tatsachen zu übersetzen, die von der Regelmaschine (201) interpretiert werden können.
  3. Zugriffssteuerungssystem nach Anspruch 1 oder 2, wobei die Regelmaschinen-Anpasseinrichtung (210) in der Lage ist, von der Randbedingungs-Spezifikationskonsole (214) weiter geleitete Randbedingungen in Regeln zu übersetzen, die von der Regelmaschine (201) interpretiert und geeignet auf Tatsachen angewendet werden können.
  4. Zugriffssteuerungssystem nach einem der Ansprüche 1 bis 3, wobei die Regelmaschinen-Anpasseinrichtung (210) in der Lage ist, Anfragen zu vom Randbedingungs-Erzwingungspunkt (303) abgefragten Tatsachen in eine Darstellung zu übersetzen, die von der Regelmaschine (201) interpretierbar ist, und Antworten auf solche von der Regelmaschine (201) bereitgestellte übersetzte Anfragen in eine Darstellung zu übersetzen, die dementsprechend von dem Randbedingungs-Erzwingungspunkt (303) interpretierbar ist.
  5. Zugriffssteuerungssystem nach einem der voranstehenden Ansprüche, wobei die Regelmaschinen-Anpasseinrichtung (210) gleichmäßige Kommunikationsschnittstellen für die Mehrzahl von Kontextquellen (301), die Randbedingungs-Spezifikationskonsole (214), den Randbedingungs-Erzwingungspunkt (303) bzw. die Regelmaschine (201) bereitstellt, um dementsprechend auf die Regelmaschinen-Anpasseinrichtung (210) zuzugreifen.
  6. Zugriffssteuerungssystem nach einem der voranstehenden Ansprüche, wobei die Regelmaschinen-Anpasseinrichtung (210) die folgenden Teilkomponenten aufweist: a. eine Kontextwandlerkomponente (211), die einen Zugriff auf die Regelmaschinen-Anpasseinrichtung (210) für die verschiedenen Kontextquellen (301) bereitstellt und als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit einer der Kontextquellen (301) wirkt, b. eine Randbedingungs-Wandlerkomponente (212), die als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit der Randbedingungs-Spezifikationskonsole (214) wirkt, um zu ermöglichen, dass die Regelmaschine (201) jeweilige spezifizierte Randbedingungen erzwingt, wenn die Kontextquellen (301) ihre jeweiligen Kontextinformationen aktualisieren, und c. eine Anfragewandlerkomponente (213), die einen Zugriff auf die Regelmaschinen-Anpasseinrichtung (210) für den Randbedingungs-Erzwingungspunkt (303) bereitstellt, um bestimmte Typen von Tatsachen abzufragen, und als ein Vermittler bei der Kommunikation der Regelmaschine mit dem Erzwingungspunkt (303) wirkt.
  7. Zugriffssteuerungssystem nach einem der voranstehenden Ansprüche, wobei die Regelmaschine (201) eine ab Lager lieferbare Komponente, insbesondere JESS, ist, die eine Tatsachenbasis zum Speichern von Tatsachen, welche von den Kontextquellen (301) stammende Kontextinformationen darstellen, und eine Regelbasis zum Speichern von Regeln, welche Randbedingungen darstellen, die von der Randbedingungs-Spezifikationskonsole (214) spezifiziert und weitergeleitet werden, aufweist.
  8. Regelmaschinen-Anpasseinrichtung, welche für die Zugriffssteuerung auf mindestens eine Informationsressource, die mindestens einer Anwendung innerhalb eines Computernetzwerks zugeordnet ist, verwendbar ist, wobei die Regelmaschinen-Anpasseinrichtung (210) als ein Vermittler bei der Kommunikation zwischen einer Regelmaschine (201) und verschiedenen anwendungsspezifischen Kontextquellen (301) bzw. einem Erzwingungspunkt (303) für anwendungs spezifische Randbedingungen wirkt, wobei die Regelmaschinen-Anpasseinrichtung (210) weiter die folgenden Teilkomponenten aufweist: a. eine Kontextwandlerkomponente (211), die einen Zugriff auf die Regelmaschinen-Anpasseinrichtung (210) für die verschiedenen Kontextquellen (301), welche Kontextinformationen bereitstellen, bereitstellt und als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit einer der Kontextquellen (301) wirkt, b. eine Randbedingungs-Wandlerkomponente (212), die als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit einer Randbedingungs-Spezifikationskonsole (214) wirkt, die eine Schnittstelle zum Spezifizieren anwendungsspezifischer Randbedingungen auf der Grundlage der Kontextquellen (301) bereitstellt, um zu ermöglichen, dass die Regelmaschine (201) Randbedingungen erzwingt, wenn die Kontextquellen (301) ihre jeweiligen Kontextinformationen aktualisieren, und c. eine Anfragewandlerkomponente (203), die einen Zugriff auf die Regelmaschinen-Anpasseinrichtung (210) für den Randbedingungs-Erzwingungspunkt (303) bereitstellt und als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit dem Randbedingungs-Erzwingungspunkt (303) wirkt, um zu ermöglichen, dass der Randbedingungs-Erzwingungspunkt (303) in Reaktion auf eine bestimmte Anfrage Zugriffsentscheidungen trifft.
  9. Regelmaschinen-Anpasseinrichtung nach Anspruch 8, wobei die Regelmaschinen-Anpasseinrichtung (210) anwendungsunabhängig ist und eine gemeinsame Abstraktionsschicht oberhalb der Regelmaschine (201) und einen gemeinsamen Weg für alle relevanten Komponenten, die für eine bestimmte Anwendung spezifisch sind, um auf die Regelmaschinen-Anpasseinrichtung (210) zuzugreifen, darstellt.
  10. Regelbasierte Erzwingungsplattform, die für die Zugriffssteuerung auf mindestens eine Informationsressource, die mindestens einer Anwendung innerhalb eines Computernetzwerks zugeordnet ist, verwendbar ist, wobei die Plattform die folgenden Komponenten aufweist: a. eine Regelmaschine (201), die in der Lage ist, Tatsachen zu behandeln und Ableitungsregeln auf diese Tatsachen anzuwenden, b. eine Randbedingungs-Spezifikationskonsole (214), die eine Schnittstelle zum Spezifizieren anwendungsspezifischer Randbedingungen auf der Grundlage vereinbarter anwendungsspezifischer Kontextquellen (301) bereitstellt, und c. eine Regelmaschinen-Anpasseinrichtung (210), die einen Zugriffspunkt auf die Randbedingungs-Spezifikationskonsole (214), um in der Lage zu sein, innerhalb der Randbedingungs-Spezifikationskonsole (214) spezifizierte Randbedingungen zur Regelmaschine (201) weiterzuleiten, so dass die Randbedingungen als ein Regelsatz in der Regelmaschine (201) gespeichert werden, gleichmäßige Zugriffspunkte für anwendungsspezifische Kontextquellen (301) zum Zugriff auf die Plattform (200), um sie in die Lage zu versetzen, mit der Regelmaschine (201) zu kommunizieren, so dass von den Kontextquellen (301) bereitgestellte Kontextinformationen als Tatsachen innerhalb der Regelmaschine (201) ausgedrückt werden können, und einen Zugriffspunkt (303) für einen Erzwingungspunkt für anwendungsspezifische Randbedingungen zum Zugriff auf die Plattform (200), um eine Zugriffssteuerung auf die mindestens eine Informationsressource auf der Grundlage der anwendungsspezifischen Randbedingungen in Bezug auf von den Kontextquellen (301) stammende Kontextinformationen zu ermöglichen, bereitstellt.
  11. Regelbasierte Erzwingungsplattform nach Anspruch 10, wobei die Regelmaschinen-Anpasseinrichtung (210) die folgenden Teilkomponenten aufweist: a. eine Kontextwandlerkomponente (211), die einen Zugriff auf die Regelmaschinen-Anpasseinrichtung (210) für die anwendungsspezifischen Kontextquellen (301) bereitstellt und als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit einer der Kontextquellen (301) wirkt, b. eine Randbedingungs-Wandlerkomponente (212), die als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit der Randbedingungs-Spezifikationskonsole (214) wirkt, um es der Regelmaschine (201) zu ermöglichen, Randbedingungen zu erzwingen, wenn die Kontextquellen (301) ihre jeweiligen Kontextinformationen aktualisieren, und c. eine Anfragewandlerkomponente (213), die einen Zugriff auf die Regelmaschinen-Anpasseinrichtung (210) für den Randbedingungs-Erzwingungspunkt (303) bereitstellt und als ein Vermittler bei der Kommunikation der Regelmaschine (201) mit dem Randbedingungs-Erzwingungspunkt (303) wirkt.
  12. Regelbasierte Erzwingungsplattform nach Anspruch 10 oder 11, welche anwendungsunabhängig ist.
  13. Verfahren zum Ausführen einer Zugriffssteuerung auf mindestens eine Informationsressource, die mindestens einer Anwendung innerhalb eines Computernetzwerks zugeordnet ist, welches folgende Schritte aufweist: a. Empfangen identifizierter anwendungsrelevanter Kontextquellen (301), b. Empfangen spezifizierter Randbedingungen, die durch eine Randbedingungs-Spezifikationskonsole (214) spezifiziert wurden, wobei die Randbedingungen auf Kontextinformationen beruhen, die durch die identifizierten relevanten Kontextquellen (301) bereitgestellt werden, c. Übersetzen der spezifizierten Randbedingungen in Regeln, die für eine geeignete Regelmaschine (201) verständlich sind, d. Weiterleiten der übersetzten Randbedingungen zur Regelmaschine (201), so dass die übersetzten Randbedingungen als ein Regelsatz in der Regelmaschine (201) gespeichert werden, e. Übersetzen von Kontextinformationen, die von den identifizierten relevanten Kontextquellen (301) stammen, in Echtzeit durch die Regelmaschinen-Anpasseinrichtung (210) in Tatsachen, die in der Regelmaschine (201) interpretiert und geeignet mit den jeweiligen Regeln korreliert und gespeichert werden können, f. Abfragen solcher Tatsachen bei Bedarf durch einen Erzwingungspunkt (303) für anwendungsspezifische Randbedingungen von der Regelmaschine (201) über die Regel maschinen-Anpasseinrichtung (210), um es dem Randbedingungs-Erzwingungspunkt (303) zu ermöglichen, geeignete Erzwingungsentscheidungen zu treffen.
  14. Verfahren nach Anspruch 13, wobei die Regelmaschine (201) als eine ab Lager lieferbare Komponente gewählt wird, die in der Lage ist, Tatsachen zu behandeln und Ableitungsregeln auf diese Tatsachen anzuwenden, und so verwendet wird, dass von den identifizierten relevanten Kontextquellen (301) stammende Kontextinformationen als Tatsachen dargestellt werden und die spezifizierten Randbedingungen innerhalb der Regelmaschine (201) als Regeln ausgedrückt werden.
  15. Computerprogrammprodukt mit einem computerlesbaren Medium und einem auf dem computerlesbaren Medium gespeicherten Computerprogramm mit einem Programmcode, der für das Ausführen eines Verfahrens nach einem der Ansprüche 13 bis 14 geeignet ist, wenn das Computerprogramm auf einem Computer ausgeführt wird.
  16. Computerprogramm mit einem Programmcode, der für das Ausführen eines Verfahrens nach einem der Ansprüche 13 bis 14 geeignet ist, wenn das Computerprogramm auf einem Computer ausgeführt wird.
  17. Computerlesbares Medium mit einem darauf gespeicherten Computerprogramm, wobei das Computerprogramm einen Programmcode aufweist, der für das Ausführen eines Verfahrens nach einem der Ansprüche 13 bis 14 geeignet ist, wenn das Computerprogramm auf einem Computer ausgeführt wird.
DE602006000907T 2006-02-27 2006-02-27 Zugangssteuerungssystem, Regelmaschinen-Anpasseinrichtung, regelbasierte Erzwingungsplattform und Verfahren zum Ausführen einer Zugriffssteuerung Active DE602006000907T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP06290341A EP1826703B1 (de) 2006-02-27 2006-02-27 Zugangssteuerungssystem, Regelmaschinenadapter, regelbasierte Durchführungsplattform und Verfahren zur Durchführung der Zugangssteuerung

Publications (2)

Publication Number Publication Date
DE602006000907D1 DE602006000907D1 (de) 2008-05-21
DE602006000907T2 true DE602006000907T2 (de) 2009-06-04

Family

ID=36649549

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602006000907T Active DE602006000907T2 (de) 2006-02-27 2006-02-27 Zugangssteuerungssystem, Regelmaschinen-Anpasseinrichtung, regelbasierte Erzwingungsplattform und Verfahren zum Ausführen einer Zugriffssteuerung

Country Status (4)

Country Link
US (1) US7689562B2 (de)
EP (1) EP1826703B1 (de)
AT (1) ATE391960T1 (de)
DE (1) DE602006000907T2 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013222384B4 (de) 2012-11-19 2023-09-14 International Business Machines Corporation Sicherheits-Screening auf Kontextgrundlage für Zugriff auf Daten

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8127287B2 (en) * 2007-12-20 2012-02-28 Baljit Singh Gupta Systems and methods for reusing SAP adaptors in non-supported releases
US8010560B2 (en) * 2007-12-21 2011-08-30 Microsoft Corporation Abducing assertion to support access query
US8607311B2 (en) * 2007-12-21 2013-12-10 Microsoft Corporation Delegation in logic-based access control
US8839344B2 (en) * 2008-01-28 2014-09-16 Microsoft Corporation Access policy analysis
US20090198548A1 (en) * 2008-02-05 2009-08-06 Mathias Kohler System to avoid policy-based deadlocks in workflow execution
US9652788B2 (en) * 2008-06-18 2017-05-16 Oracle International Corporation Method and apparatus for logging privilege use in a distributed computing environment
GB2475105A (en) * 2009-11-09 2011-05-11 Gm Global Tech Operations Inc Method for the control of a switchable water pump in an internal combustion engine
US9852382B2 (en) * 2010-05-14 2017-12-26 Oracle International Corporation Dynamic human workflow task assignment using business rules
US9589240B2 (en) 2010-05-14 2017-03-07 Oracle International Corporation System and method for flexible chaining of distinct workflow task instances in a business process execution language workflow
US9741006B2 (en) 2010-05-14 2017-08-22 Oracle International Corporation System and method for providing complex access control in workflows
US8819055B2 (en) 2010-05-14 2014-08-26 Oracle International Corporation System and method for logical people groups
US8914307B2 (en) 2010-11-08 2014-12-16 Bank Of America Corporation Processing loan transactions
US8606692B2 (en) * 2010-11-08 2013-12-10 Bank Of America Corporation Processing loan transactions
US8965827B2 (en) 2011-03-30 2015-02-24 Computer Sciences Corporation Rules execution platform system and method
JP5740529B2 (ja) * 2011-06-03 2015-06-24 アップル インコーポレイテッド クラウドストレージ
US9064111B2 (en) * 2011-08-03 2015-06-23 Samsung Electronics Co., Ltd. Sandboxing technology for webruntime system
US9286476B2 (en) * 2011-09-05 2016-03-15 Infosys Limited Method and system for configuring constraints for a resource in an electronic device
US8893225B2 (en) 2011-10-14 2014-11-18 Samsung Electronics Co., Ltd. Method and apparatus for secure web widget runtime system
US9020883B2 (en) 2012-02-22 2015-04-28 Oracle International Corporation System and method to provide BPEL support for correlation aggregation
US10037197B2 (en) 2013-03-15 2018-07-31 Oracle International Corporation Flexible microinstruction system for constructing microprograms which execute tasks, gateways, and events of BPMN models
US9495545B2 (en) 2014-11-13 2016-11-15 Sap Se Automatically generate attributes and access policies for securely processing outsourced audit data using attribute-based encryption
CN104580163B (zh) * 2014-12-19 2018-08-24 南阳师范学院 私有云环境下访问控制策略构建系统
US10044722B2 (en) 2015-04-02 2018-08-07 Sap Se Behavioral multi-level adaptive authorization mechanisms

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6058387A (en) * 1996-01-30 2000-05-02 The University Of Chicago Dynamic information architecture system and method
US6560592B1 (en) * 1998-03-19 2003-05-06 Micro Data Base Systems, Inc. Multi-model computer database storage system with integrated rule engine
US6434230B1 (en) 1999-02-02 2002-08-13 Avaya Technology Corp. Rules-based queuing of calls to call-handling resources
WO2001041039A2 (en) * 1999-12-02 2001-06-07 Secure Computing Corporation Security management system in an heterogenous network environment
US20010029499A1 (en) * 1999-12-30 2001-10-11 Tuatini Jeffrey Taihana Rules processing system
US7185192B1 (en) * 2000-07-07 2007-02-27 Emc Corporation Methods and apparatus for controlling access to a resource
US6513059B1 (en) * 2000-08-24 2003-01-28 Cambira Corporation Adaptive collaborative intelligent network system
SE0101708D0 (sv) 2001-05-15 2001-05-15 Ericsson Telefon Ab L M Interactive messaging
US6895575B2 (en) 2001-06-20 2005-05-17 Sap Ag Generic Java rule engine framework
US7350226B2 (en) * 2001-12-13 2008-03-25 Bea Systems, Inc. System and method for analyzing security policies in a distributed computer network
US7640429B2 (en) * 2004-02-26 2009-12-29 The Boeing Company Cryptographically enforced, multiple-role, policy-enabled object dissemination control mechanism
US8271527B2 (en) * 2004-08-26 2012-09-18 Illinois Institute Of Technology Refined permission constraints using internal and external data extraction in a role-based access control system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102013222384B4 (de) 2012-11-19 2023-09-14 International Business Machines Corporation Sicherheits-Screening auf Kontextgrundlage für Zugriff auf Daten

Also Published As

Publication number Publication date
US20070203881A1 (en) 2007-08-30
ATE391960T1 (de) 2008-04-15
US7689562B2 (en) 2010-03-30
EP1826703A1 (de) 2007-08-29
EP1826703B1 (de) 2008-04-09
DE602006000907D1 (de) 2008-05-21

Similar Documents

Publication Publication Date Title
DE602006000907T2 (de) Zugangssteuerungssystem, Regelmaschinen-Anpasseinrichtung, regelbasierte Erzwingungsplattform und Verfahren zum Ausführen einer Zugriffssteuerung
DE112018004946B4 (de) Kognitive datenanonymisierung
DE60306186T2 (de) Verfahren und system zur anordnung von dienste in einer webdienstarchitektur
DE69601149T2 (de) Systen und Verfahren zum Implementieren einer hierarchischen Politik für die Administration eines Computersystems
DE19963673A1 (de) Verfahren, Systeme und Computerprogrammprodukte zur Dokumentenverwaltung für Software-Entwicklungssysteme
DE19705955A1 (de) Verfahren zum Generieren einer Implementierung eines Workflow-Prozessmodells in einer Objektumgebung
DE19838055B4 (de) Kommunikationssystem und Verfahren zum Zuordnen von Benutzern zu Kommunikationsgruppen
DE112018005725T5 (de) Daten-deidentifikation auf der grundlage eines erkennens von zulässigen konfigurationen für daten-deidentifikationsprozesse
DE19955004A1 (de) Ableitung und Ausführung von Workload-Manager-Enklaven aus Workflows
DE112016002395T5 (de) Zugriffskontrolle für Datenressourcen
DE102006047499A1 (de) Datenerweiterbarkeit mit Hilfe externer Datenbanktabellen
DE112018005167T5 (de) Aktualisieren von trainingsdaten
DE19955718A1 (de) Paralleler Datenbank-Support für Workflow-Management-Systeme
DE102021130396A1 (de) Datenzugriffsüberwachung und -steuerung
DE19954268A1 (de) Verfahren und System zur Verbesserung des Workflow-Durchsatzes in Workflow-Anwendungssystemen
DE10205081A1 (de) Dokumentenauskunftszensor
DE19960048A1 (de) Zeitgesteuerte Startbedingungen für Aktivitäten in Workflow-Management-Systemen
DE112020000003T5 (de) Informationsbereitstellungssystem und Informationsbereitstellungsverfahren
WO2003027916A2 (de) Prozessmanagement und prozessvalidierung
DE60129922T2 (de) Verfahren, Computerprogrammprodukt und Computersystem zur Modifizierung von anwendungsdiensteinleitenden Rollen
DE102006027669A1 (de) Workflow-Maschine zur Verwaltung einer Arbeitsliste und ein Verfahren hierfür
DE10215494A1 (de) Computersystem für das Wissensmanagement
DE19814348A1 (de) System und Verfahren zur Kommunikation mit verschiedenen elektronischen Archivsystemen
DE19951152A1 (de) Startbedingungen für Aktivitäten in Workflow Management Systemen
EP1533940A1 (de) Transformation Function eines TMN Systems

Legal Events

Date Code Title Description
8364 No opposition during term of opposition