DE60213548T2 - Gerät zum Auffinden von Zugangsberechtigungswidersprüchen und Gerät zum Erzeugen von analysierenden Regeln - Google Patents

Gerät zum Auffinden von Zugangsberechtigungswidersprüchen und Gerät zum Erzeugen von analysierenden Regeln Download PDF

Info

Publication number
DE60213548T2
DE60213548T2 DE60213548T DE60213548T DE60213548T2 DE 60213548 T2 DE60213548 T2 DE 60213548T2 DE 60213548 T DE60213548 T DE 60213548T DE 60213548 T DE60213548 T DE 60213548T DE 60213548 T2 DE60213548 T2 DE 60213548T2
Authority
DE
Germany
Prior art keywords
access right
access rights
list
program
access
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.)
Expired - Lifetime
Application number
DE60213548T
Other languages
English (en)
Other versions
DE60213548D1 (de
Inventor
Hisashi Kawasaki-shi Kojima
Satoru Kawasaki-shi Torii
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of DE60213548D1 publication Critical patent/DE60213548D1/de
Publication of DE60213548T2 publication Critical patent/DE60213548T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/468Specific access rights for resources, e.g. using capability register
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Description

  • Diese Erfindung bezieht sich auf eine Zugriffsrecht-Widerspruchsdetektionsvorrichtung, welche für ein vorherbestimmtes Programm einen Widerspruch detektiert, der zwischen einer Laufzeit-Zugriffsrechtsliste, die eine Sammlung von Zugriffsrechten ist, die verwendet werden, wenn das auf der Basis einer Zugriffsrechtsbeschränkung auszuführende vorherbestimmte Programm ausgeführt wird, und einer Entwicklungszeit-Zugriffsrechtsliste, die eine Sammlung von Zugriffsrechten ist, die erteilt werden, wenn das Programm entwickelt wird, auftritt, und auf eine Analyseregel-Erstellungsvorrichtung, welche eine vorherbestimmte Analyseregel erstellt, die von der Zugriffsrecht-Widerspruchsdetektionsvorrichtung eingesetzt wird.
  • In den letzten Jahren wurden mit der Weiterentwicklung der Netztechnologie Programme populär, die auf einer als "Laufzeitumgebung" bezeichneten Software laufen, und die nicht von einer Plattform gemäß einem OS oder einem Gerätetyp (Computer) abhängig sind. Solche Programme enthalten beispielsweise ein Java-Programm, das in Java (Warenzeichen) erstellt wird, die eine objektorientierte Programmsprache ist.
  • Das Java-Programm ist dadurch gekennzeichnet, dass es eine Zugriffssteuerung über eine Dateioperation und Netzverbindung ausüben kann. Das Java-Programm steuert nämlich den Zugriff durch die Definition von Zugriffsrechten, welche notwendig sind, um die Programme auszuführen, die ein Sicherheitsrisiko wie das Lesen einer Datei und die Verbindung mit dem Netz involvieren.
  • Spezifisch, wie in 18 gezeigt, werden verschiedene Klassen von Zugriffsrechten für Typen in Übereinstimmung mit Ausdruckformaten definiert, die mit der Standard-Policy-Datei des Java 2 konform sind, und die Zugriffsrechte werden gemäß Zielen und Aktionen strikt ausgedrückt. Mit der Zugriffssteuerung "permit reading/tmp/hoge files" wird beispielsweise ein Zugriffsrecht
    "java.io.FilePermisson"/tmp/hoge", "read" definiert.
  • Zusätzlich wird ein Programm ausgeführt, das ein Sicherheitsrisiko involviert, um dem Aufruf einer spezifischen Methode zu entsprechen. Daher werden, wie in 19 gezeigt, vorherbestimmte Zugriffsrechte vergeben, um jeweils Methoden zu entsprechen, die Zugriffsrechte erfordern. Für eine Methode "java.io.FileInputStream.FileInputStream (String name)" wird beispielsweise ein Zugriffsrecht "java.io.FilePermission"[name]", "read" vergeben, um der Methode zu entsprechen.
  • Wenn eine Methode aufgerufen wird, um ein Programm auszuführen, wird auf ein Zugriffsrecht Bezug genommen, für das eine Person autorisiert ist, die die Methode aufruft. Solange die Person ein Zugriffsrecht hat, das notwendig ist, um die Methode aufzurufen, darf die Person die Methode ausführen. Auf diese Weise wird eine Zugriffssteuerung für jedes Java-Programm auf der Basis der Beschränkung von Zugriffsrechten ausgeübt, wenn das Programm ausgeführt wird.
  • Herkömmlich wird ein Programmausführungstest für ein auf der Basis der Beschränkung von Zugriffsrechten auszuführendes Programm durchgeführt, um keine Sicherheitsausnahme zwischen Zugriffsrechten, die verwendet werden, wenn das Programm ausgeführt wird, und Zugriffsrechten, die vergeben werden, wenn das Programm entwickelt wird, zu verursachen.
  • Wenn das Java-Programm entwickelt wird, werden spezifisch Zugriffsrechte, die das Java-Programm erfordert, im Voraus erteilt, und das Programm wird im Hinblick auf die so im Voraus erteilten Zugriffsrechte erstellt. Für ein Java-Programm, das tatsächlich erstellt wird, sind jedoch aufgrund eines Paketfehlers oder dgl. zu verwendende Zugriffs rechte nicht unbedingt auf jene begrenzt, die zur Zeit der Entwicklung erteilt werden.
  • Wenn ein Benutzer beispielsweise ein Zugriffsrecht ausübt, das breiter (weiter) ist als jenes, das zur Zeit der Entwicklung eines Java-Paketprogramms vergeben wird, tritt bei der Ausführung des Programms eine Sicherheitsausnahme auf. Dies enthält nämlich einen Fall, in dem, obwohl ein Zugriffsrecht "permit reading/tmp/hoge files" zur Zeit der Entwicklung eines Programms erteilt wird, ein Zugriffsrecht "permit reading all files" für ein Java-Paketprogramm ausgeübt wird.
  • Unter diesen Umständen wird untersucht, ob ein Widerspruch (Unterschied in der Breite der Beschränkung) zwischen einem Zugriffsrecht, das zu verwenden ist, wenn ein Java-Programm ausgeführt wird, und jenem, das erteilt wird, wenn das Programm entwickelt wird, auftritt oder nicht, indem ein Programmausführungstest durchgeführt wird. Wenn dieser Ausführungstest irgendeinen Widerspruch zwischen den beiden Zugriffsrechten detektiert, wird das Programm korrigiert, um mit dem Zugriffsrecht konform zu sein, das zur Zeit der Entwicklung erteilt wird, um dadurch eine Sicherheitsausnahme zu eliminieren.
  • Dennoch hat die herkömmliche Technik insofern einen Nachteil, als ein Widerspruch, der zwischen einem Zugriffsrecht, das verwendet wird, wenn ein Programm ausgeführt wird, und jenem, das erteilt wird, wenn das Programm entwickelt wird, auftritt, nicht mit großer Genauigkeit detektiert werden kann. Mit anderen Worten, gemäß der herkömmlichen Technik wird ein Ausführungstest einfach an einem Programm durchgeführt, das im Hinblick auf Zugriffsrechte erstellt wird, die erteilt werden, wenn das Programm entwickelt wird, und das Ergebnis des Ausführungstests deckt nicht immer alle Widersprüche auf. Auch wenn ein Ausfüh rungstest wiederholt durchgeführt wird, gibt es daher selbstverständlich eine Grenze für die Detektion aller Widersprüche.
  • Demgemäß ist ein ziemlich wichtiges Problem, das zu lösen ist, wie der Widerspruch detektiert werden kann, der zwischen einem Zugriffsrecht, das verwendet wird, wenn ein Programm ausgeführt wird, und jenem, das erteilt wird, wenn das Programm entwickelt wird, auftritt. Zweckmäßig ist nicht ein Verfahren der wiederholten Durchführung eines Ausführungstests, sondern ein Verfahren, das die Detektion eines Widerspruchs leicht und sicher ermöglicht.
  • Die US-6 092 194-A offenbart eine Zugriffsrecht-Widerspruchsdetektionsvorrichtung, ein Verfahren und ein Programm gemäß den Oberbegriffen der beigeschlossenen Ansprüche 1, 11 bzw. 21. Das Verfahren involviert einen Empfang eines ankommenden herunterladbaren Anwendungsprogramms, das an einen Client adressiert ist, durch einen Server, der als Gateway für den Client dient; einen Vergleich, durch den Server, von zum herunterladbaren Anwendungsprogramm gehörenden herunterladbaren Sicherheitsprofildaten, welche herunterladbaren Sicherheitsprofildaten eine Liste verdächtiger Computeroperationen, die von dem herunterladbaren Anwendungsprogramm versucht werden können, gegen eine Sicherheitsrichtlinie enthalten, um zu bestimmen, ob die Sicherheitsrichtlinie verletzt wurde; und das Verhindern der Ausführung des herunterladbaren Anwendungsprogramms durch den Client, wenn die Sicherheitsrichtlinie verletzt wurde.
    • JENSEN T et al: "VERIFICATION OF CONTROL FLOW BASED SECURITY PROPERTIES" 9. Mai 1999 (1999-05-09), PROCEEDINGS OF THE 1999 IEEE SYMPOSIUM ON SECURITY AND PRIVACY. OAKLAND, CA, MAY 9–12, 1999, PROCEEDINGS OF THE IEEE SYMPOSIUM ON SECURITY AND PRIVACY, LOS ALAMITOS, CA: IEEE COMP. SOC, US, 5.89–103, XP000871975 ISBN: 0-7695-0177-X, offenbaren ein Sicherheitsmodell zur Verwendung mit Java-Programmen und dgl., bei dem automatisch verifiziert wird, ob eine lokale Sicherheitsprüfungen verwendende Implementation eine globale Sicherheitseigenschaft erfüllt. Diese Verifikation involviert das Mapping eines unendlichen Übergangssystems in ein endliches System, das zu dem ursprünglichen in Bezug auf eine gegebene Eigenschaft äquivalent ist.
    • GONG L et al: "Implementing Protection Domains in the Java (TM) Development Kit 1.2" PROCEEDINGS INTERNET SOCIETY SYMPOSIUM ON NETWORK AND DISTRIBUTED SYSTEM SECURITY, März 1988 (1988-03), XP002304112, offenbaren die Entwicklung und Implementation des Konzepts von "Schutzdomänen" im Java Entwicklungskit 1.2. Die Java-Sandbox im JDK 1.0 ist in gewissem Sinn eine Schutzdomäne mit einer festgelegten Begrenzung. Im JDK 1.2 werden Schutzdomänen Berechtigungen erteilt, und Klassen und Objekte gehören zu Schutzdomänen. Diese Indirektion, wo Berechtigungen Klassen und Objekten nicht direkt erteilt werden, ist entwicklungsbedingt, da in der Zukunft Schutzdomänen durch Benutzerauthentifizierung und Delegation weiter charakterisiert werden können, so dass derselbe Code verschiedene Berechtigungen erhalten könnte, wenn er "für" verschiedene Benutzer oder Auftraggeber läuft.
  • Eine Ausführungsform der vorliegenden Erfindung kann eine Zugriffsrecht-Widerspruchsdetektionsvorrichtung vorsehen, die leicht und sicher einen Widerspruch detektieren kann, der zwischen einem Zugriffsrecht, das zu verwenden ist, wenn ein Programm ausgeführt wird, und einem Zugriffsrecht, das erteilt wird, wenn das Programm entwickelt wird, auftritt. Eine weitere Ausführungsform der vorliegenden Erfindung kann eine Analyseregel-Erstellungsvorrichtung vorsehen, die automatisch eine vorherbestimmte Analyseregel erstellt, die von der Zugriffsrecht-Widerspruchsdetektionsvorrichtung einzusetzen ist, und die die Effizienz bei der Zu griffsrecht-Widerspruchsdetektionsverarbeitung verbessern kann.
  • Die Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß einem Aspekt der vorliegenden Erfindung enthält eine Detektionseinheit, die einen Quellcode des Programms analysiert, und die sequentiell Methodensignaturen detektiert, die in dem Programm enthalten sind, und eine Meldungseinheit, die ein Vergleichsergebnis meldet. Die Vorrichtung ist gekennzeichnet durch eine Analyseeinheit, welche sequentiell die von der Detektionseinheit detektierten Methodensignaturen analysiert und eine Laufzeit-Zugriffsrechtsliste auf der Basis einer vorherbestimmten Regel ermittelt, die Methodensignaturen und die Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen, und eine Vergleichseinheit, welche die Laufzeit-Zugriffsrechtsliste, die von der Analyseeinheit ermittelt wird, mit der Entwicklungszeit-Zugriffsrechtsliste (in der Breite der Beschränkung) auf der Basis einer vorherbestimmten Vergleichsregel vergleicht, die Breiten (in Bezug auf Beschränkungen) der Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können. Die Meldungseinheit meldet das Vergleichsergebnis der Vergleichseinheit.
  • Die Analyseregel-Erstellungsvorrichtung gemäß einem weiteren Aspekt der vorliegenden Erfindung enthält eine Detektionseinheit, die einen Quellcode des Programms analysiert, und die sequentiell die Methodensignaturen detektiert, die in dem Programm enthalten sind, eine Analyseeinheit, welche, wenn die Methodensignaturen, die von der Detektionseinheit detektiert werden, bereits durch die vorherbestimmte Analyseregel spezifiziert sind, die spezifizierten Methodensignaturen analysiert und die Zugriffsrechte ermit telt, und welche, wenn die Methodensignaturen, die von der Detektionseinheit detektiert werden, nicht durch die vorherbestimmte Analyseregel spezifiziert sind, sondern die Methodensignaturen, die durch die vorherbestimmte Analyseregel spezifiziert sind, intern aufgerufen werden, jeweils die Methodensignaturen analysiert, die intern aufgerufen werden, und die Zugriffsrechte ermittelt, und eine Analyseregel-Erstellungseinheit, die, wenn die Analyseeinheit jeweils die Methodensignaturen analysiert, die intern aufgerufen werden, und die Zugriffsrechte ermittelt, eine neue Analyseregel erstellt, welche die ermittelten Zugriffsrechte und die Methodensignaturen spezifiziert, die von der Detektionseinheit detektiert werden, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen.
  • Das Zugriffsrecht-Widerspruchsdetektionsverfahren gemäß noch einem weiteren Aspekt der vorliegenden Erfindung enthält einen Detektionsschritt des Analysierens eines Quellcodes des Programms, und des sequentiellen Detektierens von Methodensignaturen, die in dem Programm enthalten sind, und einen Meldungsschritt des Meldens eines Vergleichsergebnisses. Das Verfahren ist gekennzeichnet durch einen Analyseschritt des sequentiellen Analysierens der in dem Detektionsschritt detektierten Methodensignaturen und des Ermittelns einer Laufzeit-Zugriffsrechtsliste auf der Basis einer vorherbestimmten Regel, die Methodensignaturen und die Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen, und einen Vergleichsschritt des Vergleichens der Laufzeit-Zugriffsrechtsliste, die in dem Analyseschritt ermittelt wird, mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite (der Beschränkung) auf der Basis einer vorherbestimmten Vergleichsregel, die Breiten (in Bezug auf Beschränkungen) der Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können. Der Meldungsschritt meldet ein Vergleichsergebnis in dem Vergleichsschritt.
  • Das Analyseregel-Erstellungsverfahren gemäß noch einem weiteren Aspekt der vorliegenden Erfindung enthält einen Detektionsschritt des Analysierens eines Quellcodes des Programms, und des sequentiellen Detektierens der Methodensignaturen, die in dem Programm enthalten sind, einen Analyseschritt, wenn die Methodensignaturen, die in dem Detektionsschritt detektiert werden, bereits durch die vorherbestimmte Analyseregel spezifiziert werden, des Analysierens der spezifizierten Methodensignaturen und des Ermittelns der Zugriffsrechte, und, wenn die Methodensignaturen, die in dem Detektionsschritt detektiert werden, nicht durch die vorherbestimmte Analyseregel spezifiziert werden, sondern die Methodensignaturen, die durch die vorherbestimmte Analyseregel spezifiziert werden, intern aufgerufen werden, des Analysierens jeweils der Methodensignaturen, die intern aufgerufen werden, und des Ermittelns der Zugriffsrechte, und einen Analyseregel-Erstellungsschritt, wenn jeweils in dem Analyseschritt die Methodensignaturen, die intern aufgerufen werden, analysiert werden, und die Zugriffsrechte ermittelt werden, des Erstellens einer neuen Analyseregel, welche die ermittelten Zugriffsrechte und die Methodensignaturen spezifiziert, die in dem Detektionsschritt detektiert werden, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen.
  • Das Computerprogramm gemäß noch einem weiteren Aspekt der vorliegenden Erfindung realisiert die verfahren gemäß der vorliegenden Erfindung auf einem Computer.
  • Als vorherbestimmte Vergleichsregel kann das Ausmaß verwendet werden, in dem ein Zugriffsrecht einen Zugriff beschränkt oder verbietet.
  • Anhand bloßer Beispiele wird auf die beigeschlossenen Zeichnungen Bezug genommen, in denen:
  • 1 ein Blockbild ist, das die Konfiguration einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß einer ersten Ausführungsform zeigt;
  • 2 eine Ansicht ist, die ein konkretes Beispiel einer Methodensignatur-Detektionsverarbeitung in der ersten Ausführungsform zeigt;
  • 3 eine Ansicht ist, die ein Beispiel der Struktur von Informationen zeigt, die von einer Analyseregel spezifiziert werden;
  • 4 eine Ansicht ist, die ein konkretes Beispiel einer Zugriffsrecht-Analyseverarbeitung in der ersten Ausführungsform zeigt;
  • 5 eine Ansicht ist, die ein konkretes Beispiel der Zugriffsrecht-Analyseverarbeitung in der ersten Ausführungsform zeigt;
  • 6 eine Ansicht ist, die ein Beispiel der Struktur von Informationen zeigt, die durch eine Vergleichsregel spezifiziert werden;
  • 7 eine Ansicht ist, die ein konkretes Beispiel eines Vergleichsergebnisses in der ersten Ausführungsform zeigt;
  • 8 ein Flussdiagramm ist, das Prozeduren für eine Zugriffsrecht-Widerspruchsdetektionsverarbeitung in der ersten Ausführungsform zeigt;
  • 9 ein Blockbild ist, das die Konfiguration einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß einer zweiten Ausführungsform zeigt;
  • 10 eine Ansicht ist, die ein konkretes Beispiel einer Kompressionsverarbeitung in der zweiten Ausführungsform zeigt;
  • 11 ein Blockbild ist, das die Konfiguration einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß einer dritten Ausführungsform zeigt;
  • 12 eine Ansicht ist, die ein konkretes Beispiel einer Kompressionsverarbeitung in der dritten Ausführungsform zeigt;
  • 13 ein Blockbild ist, das die Konfiguration einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß einer vierten Ausführungsform zeigt;
  • 14 eine Ansicht ist, die ein konkretes Beispiel einer Ausgabeverarbeitung in der vierten Ausführungsform zeigt;
  • 15 ein Blockbild ist, das die Konfiguration einer Analyseregel-Erstellungsvorrichtung gemäß einer fünften Ausführungsform zeigt;
  • 16 eine Ansicht ist, die ein konkretes Beispiel einer Analyseregel-Erstellungsverarbeitung in der fünften Ausführungsform zeigt;
  • 17 ein Blockbild ist, das die Konfiguration einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß einer sechsten Ausführungsform zeigt;
  • 18 eine Ansicht ist, die Beispiele von Zugriffsrechten zeigt;
  • 19 eine Ansicht ist, die Entsprechungsbeispiele von Zugriffsrechten und Methoden zeigt.
  • Im Nachstehenden werden Ausführungsformen einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung und einer Analyseregel-Erstellungsvorrichtung gemäß dieser Erfindung mit Bezugnahme auf die beigeschlossenen Zeichnungen detailliert erläutert. In den folgenden Ausführungsformen werden Fälle der Detektion eines Zugriffsrechtwiderspruchs in Bezug auf ein Java-Programm erklärt.
  • Zuerst werden der Umriss und die Hauptmerkmale einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß der ersten Ausführungsform erläutert. 1 ist ein Blockbild, das die Konfiguration der Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß der ersten Ausführungsform zeigt. Die in 1 gezeigte Zugriffsrecht-Widerspruchsdetektionsvorrichtung soll allgemein für ein Java-Programm einen Widerspruch detektieren, der zwischen einer Laufzeit-Zugriffsrechtsliste, welche eine Sammlung von Zugriffsrechten ist, die zu verwenden sind, wenn ein Java-Programm ausgeführt wird, das auf der Basis der Beschränkung von Zugriffsrechten ausgeführt wird, und einer Entwicklungszeit-Zugriffsrechtsliste, welche eine Sammlung von Zugriffsrechten ist, die erteilt werden, wenn das Java-Programm entwickelt wird, auftritt.
  • Diese Zugriffsrecht-Widerspruchsdetektionsvorrichtung 10 ist hauptsächlich durch eine Zugriffsrecht-Widerspruchsdetektionsverarbeitung gekennzeichnet. Spezifisch wird die Laufzeit-Zugriffsrechtsliste aus dem Quellcode des Programms erhalten. Auf der Basis einer vorherbestimmten Regel, welche die Breiten (von Beschränkungen) von Zugriffsrechten spezifiziert, die möglicherweise in dem Programm enthalten sein können, wird die Laufzeit-Zugriffsrechtsliste mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite (z.B. Klasse oder Stufe) der Beschränkung verglichen. Durch die Meldung des Ergebnisses davon kann der Widerspruch, der zwischen einem Zugriffsrecht, das zu verwenden ist, wenn das Programm ausgeführt wird, und jenem, das erteilt wird, wenn das Programm entwickelt wird, leicht und sicher detektiert werden.
  • Als Nächstes wird die Konfiguration der Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß der ersten Ausführungsform erläutert. Diese Zugriffsrecht-Widerspruchsdetektionsvorrichtung 10 besteht aus einer Zugriffsrechtslisten- Eingabesektion 11, einer Zugriffsrechtslisten-Speichersektion 12, einer Quellcode-Eingabesektion 13, einem Methodensignaturdetektor 14, einer Zugriffsrecht-Analysesektion 15, einem Zugriffsrechtskomparator 16 und einer Ausgabesektion 17, wie in 1 gezeigt.
  • Unter diesen Bestandteilelementen ist die Zugriffsrechtslisten-Eingabesektion 11 eine Verarbeitungssektion, welche eine Entwicklungszeit-Zugriffsrechtsliste, die eine Sammlung von Zugriffsrechten ist, die erteilt werden, wenn ein Programm entwickelt wird, in die Zugriffsrecht-Widerspruchsdetektionsvorrichtung 10 eingibt. Spezifisch ausgedrückt, gibt die Zugriffsrechtslisten-Eingabesektion 11 Daten auf einer Liste von Zugriffsrechten ein, wie in 18 gezeigt.
  • Die Zugriffsrechtslisten-Speichersektion 12 ist ein Speicher, der die Entwicklungszeit-Zugriffsrechtsliste speichert, die von der Zugriffsrechtslisten-Eingabesektion 11 eingegeben wird. Wenn eine Vielzahl von Entwicklungszeit-Zugriffsrechtslisten von der Zugriffsrechtslisten-Eingabesektion 11 eingegeben wird, werden ID-Informationen jeder Entwicklungszeit-Zugriffsrechtsliste zugeordnet, um die Liste einheitlich zu spezifizieren, und dann in der Zugriffsrechtslisten-Speichersektion 12 gespeichert.
  • Die Quellcode-Eingabesektion 13 ist eine Verarbeitungssektion, die den Quellcode des Programms in die Zugriffsrecht-Widerspruchsdetektionsvorrichtung 10 eingibt. Spezifisch ausgedrückt, gibt die Quellcode-Eingabesektion 13 solche Quellcodedaten wie die in 2, 14 und 16 gezeigten ein. Ein Programm, das die Basis für diesen Quellcode bildet, ist ein Programm, das im Hinblick auf die Entwicklungszeit-Zugriffsrechtsliste erstellt wird.
  • Der Methodensignaturdetektor 14 ist eine Verarbeitungssektion, welche den Quellcode des Programms analysiert, der von der Quellcode-Eingabesektion 13 eingegeben wird, und welche sequentiell Methodensignaturen detektiert, die in dem Programm enthalten sind. Spezifisch ausgedrückt, analysiert der Methodensignaturdetektor 14 den Quellcode als Quellcodeanalysator, detektiert einen Methodenaufruf, und analysiert eine Methodensignatur in dem Format von "type name.method name (parameter type name 1, parameter type name 2, ...)" aus dem Methodenaufruf auf der Basis einer Methode zum Spezifizieren einer Aufrufmethode gemäß der Java-Sprachspezifikation. Hier wird angenommen, dass eine dynamische Bindung nicht berücksichtigt wird.
  • Diese Methodensignatur-Detektionsverarbeitung wird spezifisch erklärt. 2 ist eine Ansicht, die ein konkretes Beispiel der Methodensignatur-Detektionsverarbeitung in der ersten Ausführungsform zeigt. Der Methodensignaturdetektor 14 detektiert beispielsweise einen Quellcode "importjava.io*;FileInputStreamfis=newFileInputStream ("/tmp/hoge");" und detektiert eine Methodensignatur "java.io.FileInputStream.FileInputStream (java.lang.String)", wie in 2 gezeigt.
  • Mit erneuter Bezugnahme auf 1 ist die Zugriffsrecht-Analysesektion 15 eine Verarbeitungssektion, die auf der Basis einer vorherbestimmten Analyseregel 15a sequentiell vom Methodensignaturdetektor 14 detektierte Methodensignaturen analysiert und eine Laufzeit-Zugriffsrechtsliste ermittelt. Die Analyseregel 15a, auf welche die Zugriffsrecht-Analysesektion 15 Bezug nimmt, ist ein Speicher, der Methodensignaturen, die möglicherweise in dem Java-Programm enthalten sein können, und Zugriffsrechte spezifiziert, wobei bewirkt wird, dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen.
  • Nun wird diese Analyseregel 15a konkret erläutert. 3 ist eine Ansicht, welche ein Beispiel der Struktur von Informationen zeigt, die von der Analyseregel 15a spezifiziert werden. In Java sind jeweils Zugriffsrecht-Analyseregeln für alle Zugriffsrechte vorhanden, die als Standards definiert sind. Gemäß einer gewöhnlichen Analyseregel wird ein entsprechendes Zugriffsrechts für jede Methodensignatur bestimmt.
  • Daher, wie in 3 gezeigt, spezifiziert die Analyseregel 15a die Methodensignaturen, die möglicherweise in dem Java-Programm enthalten sein können, und die Zugriffsrechte, so dass die Zugriffsrechte den jeweiligen Methodensignaturen entsprechen. Die Analyseregel 15a spezifiziert beispielsweise ein Zugriffsrecht "java.lang.RuntimePermission"exitVM"", um einer Methodensignatur "java.lang.System.exit(int)" zu entsprechen.
  • Auf der Basis einer solchen Analyseregel 15a analysiert die Zugriffsrecht-Analysesektion 15 sequentiell Methodensignaturen und ermittelt Zugriffsrechte, die den jeweiligen Methodensignaturen entsprechen. In diesem Moment bestimmt die Zugriffsrecht-Analysesektion 15 auch Zugriffsrechtsparameter auf der Basis jeweiliger Parameter, die zur Zeit des Methodenaufrufs jeweils für die Zugriffsrechte eingestellt werden, die Parameter aufweisen. Die so sequentiell ermittelten Zugriffsrechte sind Zugriffsrechte, die zu verwenden sind, wenn das Programm ausgeführt wird, und eine Sammlung dieser Zugriffsrechte ist die Laufzeit-Zugriffsrechtsliste.
  • Diese Zugriffsrecht-Analyseverarbeitung wird konkret erläutert. 4 und 5 sind Ansichten, die konkrete Beispiele der Zugriffsrecht-Analyseverarbeitung in der ersten Ausführungsform zeigen. Spezifisch zeigt 4 ein konkretes Beispiel, bei dem eine Methodensignatur "java.io.FileInputStrem.FileInputStream (java.lang.String)" ist, und ein Parameter mit der Wirkung definiert ist, dass "str ist eine willkürliche Zeichenfolge" in einem Quellcode.
  • Das heißt, in diesem Fall ermittelt die Zugriffsrecht-Analysesektion 15 ein Zugriffsrecht "java.io.FilePermission"parameter", "read"", das der Methodensignatur "java.io.FileInputStream.FilelnputStream (java.lang.String)" entspricht, auf der Basis der Analyseregel 15a. Zusätzlich bestimmt die Zugriffsrecht-Analysesektion 15 den Parameter des Zugriffsrechts auf der Basis der jeweiligen Parameter, die zur Zeit des Methodenaufrufs eingestellt werden.
  • Wenn der Parameter des Zugriffsrechts im Hinblick auf "str ist eine willkürliche Zeichenfolge" bestimmt wird, und ein Quellcode für den Parameter beispielsweise "newFileInputStream(str)" ist, dann wird ein Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>, "read"" ermittelt (siehe in 4 gezeigtes Zugriffsrecht (1)). Wenn ein Quellcode für den Parameter "newFileInputStream ("/tmp/hoge")" ist, wird ähnlich ein Zugriffsrecht "java.io.FilePermission"/tmp/hoge", "read"" ermittelt (siehe in 4 gezeigtes Zugriffsrecht (2)). Wenn ein Quellcode für den Parameter "newFileInputStream ("/tmp"+str)" ist, wird ein Zugriffsrecht "java.io.FilePermission"/tmp/-", "read"" ermittelt (siehe in 4 gezeigtes Zugriffsrecht (3)).
  • 5 zeigt ein konkretes Beispiel, bei dem eine Methodensignatur "java.net.Socket.Socket(java.lang.String host, int port)" ist, und ein Parameter mit der Wirkung definiert ist, dass "str ist eine willkürliche Zeichenfolge und num ist eine willkürliche ganze Zahl " im Quellcode.
  • Das heißt, in diesem Fall ermittelt die Zugriffsrecht-Analysesektion 15 ein Zugriffsrecht "java.net.SocketPermission"parameter","connect"", das der Methodensignatur "java.io.FileInputStream.FileInputStream (java.lang.String)" entspricht, auf der Basis der Analysere gel 15a. Zusätzlich bestimmt die Zugriffsrecht-Analysesektion 15 den Parameter des Zugriffsrechts auf der Basis jedes zur Zeit eines Methodenaufrufs eingestellten Parameters.
  • Wenn der Parameter des Zugriffsrechts im Hinblick auf "str ist eine willkürliche Zeichenfolge und num ist eine willkürliche ganze Zahl" bestimmt wird, und ein Quellcode für den Parameter beispielsweise "new Socket(str,num)" ist, dann wird ein Zugriffsrecht "java.net.SocketPermission"*","connect"" ermittelt (siehe in 5 gezeigtes Zugriffsrecht (1)). Wenn ein Quellcode für den Parameter "new Socket (str+".hogehoge.net",num)" ist, wird ähnlich ein Zugriffsrecht "java.net.SocketPermission"*.hogehoge.net", "connect"" ermittelt (siehe in 5 gezeigtes Zugriffsrecht (2)). Wenn ein Quellcode für den Parameter "new Socket (str,80)" ist, wird ein Zugriffsrecht "java.io.SocketPermission"*:80", "connect"" ermittelt (siehe in 5 gezeigtes Zugriffsrecht (3)).
  • Wenn die Methodensignatur, die vom Methodensignaturdetektor 14 detektiert wird, nicht durch die vorherbestimmte Analyseregel 15a spezifiziert ist, sondern die Methodensignatur, die durch die vorherbestimmte Regel 15a spezifiziert ist, intern aufgerufen wird, analysiert ferner die Zugriffsrecht-Analysesektion 15 die Methodensignatur, die intern aufgerufen wird, und ermittelt ein Laufzeit-Zugriffsrecht.
  • Mit Bezugnahme auf 16 wird nun die Analyse eines Zugriffsrechts durch den internen Aufruf der Methodensignatur konkret erläutert. Es wird angenommen, wie in 16 gezeigt, dass eine Regel, gemäß der beispielsweise eine Methodensignatur "java.io.FileInputStream.FileInputStream(java.lang.String)" einem Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>", "read"" entspricht, durch die Analyseregel 15a spezifiziert wird.
  • Andererseits, wie in 16 gezeigt, ruft in dem Quellcode, der von der Quellcode-Eingabesektion 13 eingegeben wird, eine Methode "Sample.foo(java.lang.String)", die in der fünften Zeile definiert ist, die Methodensignatur "java.io.FileInputStream.FileInputStream(java.lang.String)" intern auf. In diesem Fall analysiert die Zugriffsrecht-Analysesektion 15 die Methodensignatur "java.io.FileInputStream.FileInputStream(java.lang.String)", die intern aufgerufen wird, und ermittelt ein Zugriffsrecht, das dieser Methodensignatur entspricht, auf der Basis der Analyseregel 15a, obwohl das Zugriffsrecht, das der Methode "Sample.foo(java.lang.String)" entspricht, von der Analyseregel 15a nicht spezifiziert wird.
  • Das heißt, für die Methodensignatur "java.io.FileInputStream.FileInputStream(java.lang.String)", die intern aufgerufen wird, wird das Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>", "read"" von der Analyseregel 15a spezifiziert. Daher ermittelt die Zugriffsrecht-Analysesektion 15 das Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>", "read"" als Laufzeit-Zugriffsrecht. Wie ersichtlich ist, ist es durch das Analysieren des Zugriffsrechts durch den internen Aufruf möglich sicherzustellen, dass ein Laufzeit-Zugriffsrecht ermittelt wird.
  • Mit erneuter Bezugnahme auf 1 ist der Zugriffsrechtskomparator 16 eine Verarbeitungssektion, welche die Laufzeit-Zugriffsrechtsliste, die von der Zugriffsrecht-Analysesektion 15 ermittelt wird, mit der Entwicklungszeit-Zugriffsrechtsliste, die in der Zugriffsrechtslisten-Speichersektion 12 gespeichert ist, in der Breite der Beschränkung auf der Basis einer Vergleichsregel 16a vergleicht. Die Vergleichsregel 16a, auf die dieser Zugriffsrechtskomparator 16 Bezug nimmt, ist ein Speicher, der Breiten der Beschränkungen von Zugriffsrechten spezifiziert, die möglicherweise in dem Java-Programm enthalten sein können.
  • Diese Vergleichsregel 16a wird konkret erklärt. 6 ist eine Ansicht, welche ein Beispiel der Struktur von Informationen zeigt, die durch die Vergleichsregel 16a spezifiziert werden. Die Vergleichsregel 16a spezifiziert Regeln für den Vergleich zwischen einem Zugriffsrecht mit allen anderen Zugriffsrechten in der Breite der Beschränkung für jede Zugriffsrechtsklasse (z.B. "java.io.FilePermission").
  • Das heißt, wie in 6 gezeigt, für eine Klasse "java.security.AllPermission" wird beispielsweise eine Regel mit der Wirkung spezifiziert, dass "alle Zugriffsrechte sind enthalten ". Für eine Klasse "java.lang.RuntimePermission" werden die folgenden Regeln spezifiziert. Wenn ein Vergleichsobjekt in "java.lang.RuntimePermission" ist, und ein Ziel dasselbe ist, ist die Beschränkungsbreite gleich; ansonsten ungleich. Wenn ein Vergleichsobjekt in "java.security.AllPermission" ist, ist das Zugriffsrecht in "java.security.AllPermission" enthalten. Wenn ein Vergleichsobjekt in einer anderen Klasse ist als "java.lang.RuntimePermission", ist die Beschränkungsbreite ungleich.
  • Ferner werden für eine Klasse "java.io.FilePermission" die folgenden Regeln spezifiziert. Wenn ein Vergleichsobjekt in "java.io.FilePermission" ist, wird eine Vergleichsbeziehung durch ein Ziel und eine Aktion bestimmt:
    "java.io.FilePermission"*", "read"" >
    "java.io.FilePermission"/tmp/hoge", "read"" und
    "java.io.FilePermission"/tmp/hoge", "read,write"" >
    "java.io.FilePermission"/tmp/hoge", "read"". Wenn ein Vergleichsobjekt in "java.security.AllPermission" ist, ist das Zugriffsrecht in "java.security.AllPermission" enthal ten. Wenn ein Vergleichsobjekt in einer anderen Klasse ist als "java.io.FilePermission", ist die Beschränkungsbreite ungleich.
  • Auf der Basis einer solchen Vergleichsregel 16a vergleicht der Zugriffsrechtskomparator 16 die Laufzeit-Zugriffsrechtsliste mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite der Beschränkung. Spezifisch vergleicht der Zugriffsrechtskomparator 16 jedes der Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, mit jedem von denen, die in der Entwicklungszeit-Zugriffsrechtsliste enthalten sind, in der Breite der Beschränkung. Wenn ein Laufzeit-Zugriffsrecht beispielsweise "java.io.FilePermission"*", "read"" ist, und ein Vergleichsobjekt oder das Entwicklungszeit-Zugriffsrecht "java.io.FilePermission"/tmp/hoge", "read"" ist, vergleicht der Zugriffsrechtskomparator 16 die beiden Rechte in der Breite der Beschränkung auf der Basis der Vergleichsregel 16a und bestimmt, als Vergleichsergebnis, dass "java.io.FilePermission"*", "read"" > "java.io.FilePermission"/tmp/hoge", "read"".
  • Mit erneuter Bezugnahme auf 1 ist die Ausgabesektion 17 eine Verarbeitungssektion, die das Vergleichsergebnis des Zugriffsrechtskomparators 16 an die Außenseite der Zugriffsrecht-Widerspruchsdetektionsvorrichtung 10 meldet. Spezifisch besteht diese Ausgabesektion 17 aus Informationsausgabeeinheiten wie einem Monitor, einem Drucker und einem Lautsprecher. Die Ausgabesektion 17 gibt einen Widerspruch aus, der zwischen der Laufzeit-Zugriffsrechtsliste und der Entwicklungszeit-Zugriffsrechtsliste auftritt, d.h. gibt ein Zugriffsrecht in der Laufzeit-Zugriffsrechtsliste aus, von welchem Recht durch die Vergleichsverarbeitung des Zugriffsrechtskomparators 16 bestimmt wird, dass es breiter in der Beschränkung ist als die Entwicklungszeit-Zugriffsrechte.
  • Das Vergleichsergebnis, das von dieser Ausgabesektion 17 ausgegeben wird, wird konkret erläutert. 7 ist eine Ansicht, die ein Beispiel des Vergleichsergebnisses in der ersten Ausführungsform zeigt. Es wird angenommen, wie in 7 gezeigt, dass Zugriffsrechte, die im Voraus erteilt werden (in der Entwicklungszeit-Zugriffsrechtsliste), ein Zugriffsrecht (1) "java.io.FilePermission"/tmp/hoge", "read"" und ein Zugriffsrecht (2) "java.io.RuntimePermission"exitVM"" sind, und Zugriffsrechte, die analysiert werden (in der Laufzeit-Zugriffsrechtsliste), ein Zugriffsrecht (3) "java.io.FilePermission"*", "read"" und ein Zugriffsrecht (4) "java.io.RuntimePermission"exitVM"" sind.
  • In diesem Fall bestimmt der Zugriffsrechtskomparator 16, als Vergleichsergebnis, dass das Laufzeit-Zugriffsrecht (4) gleich dem Entwicklungszeit-Zugriffsrecht (2) ist, aber dass das Laufzeit-Zugriffsrecht (3) breiter (in der Beschränkung) ist als das Entwicklungszeit-Zugriffsrecht (1). Daher gibt die Ausgabesektion 17, als Vergleichsergebnis, aus: "java.io.FilePermission"*", "read"" > "java.io.FilePermission"/tmp/hoge", "read"", wie in 7 gezeigt. Das Zeichen > bezeichnet ein weiteres (weniger beschränktes) Zugriffsrecht.
  • Als Nächstes werden die Zugriffsrecht-Widerspruchsdetektionsverarbeitungsprozeduren in der ersten Ausführungsform erläutert. 8 ist ein Flussdiagramm, das die Zugriffsrecht-Widerspruchsdetektionsverarbeitungsprozeduren in der ersten Ausführungsform erklärt. Die Prozeduren werden im Nachstehenden unter der Annahme erläutert, dass die Entwicklungszeit-Zugriffsrechtsliste, die von der Zugriffsrechtslisten-Eingabesektion 11 eingegeben wird, bereits in der Zugriffsrechtslisten-Speichersektion 12 gespeichert ist.
  • In der Zugriffsrecht-Widerspruchsdetektionsvorrichtung 10 gemäß der ersten Ausführungsform, wie in 8 gezeigt, gibt die Quellcode-Eingabesektion 13 den Quellcode eines Programms in die Zugriffsrecht-Widerspruchsdetektionsvorrichtung 10 ein (Schritt S801). Die Methodensignatur-Detektionsvorrichtung 14 analysiert den Quellcode des Programms, der von der Quellcode-Eingabesektion 13 eingegeben wird, und detektiert sequentiell Methodensignaturen, die in dem Programm enthalten sind (Schritt 802), wie in 2 gezeigt.
  • Danach analysiert die Zugriffsrecht-Analysesektion 15 sequentiell die Methodensignaturen, die vom Methodensignaturdetektor 14 detektiert werden, auf der Basis der vorherbestimmten Analyseregel 15a und ermittelt eine Laufzeit-Zugriffsrechtsliste, wie in 4 und 5 gezeigt (Schritt S803). Diese Zugriffsrechtsanalyse ist nicht auf jene begrenzt, die ausgeführt wird, jedesmal wenn jede Methodensignatur von dem Methodensignaturdetektor 14 aufeinanderfolgend detektiert wird. Alternativ dazu kann die Analyse von Zugriffsrechten sequentiell ausgeführt werden, nachdem alle Methodensignaturen detektiert werden.
  • Dann vergleicht der Zugriffsrechtskomparator 16 die Laufzeit-Zugriffsrechtsliste, die von der Zugriffsrecht-Analysesektion 15 ermittelt wird, mit der Entwicklungszeit-Zugriffsrechtsliste, die in der Zugriffsrechtslisten-Speichersektion 12 gespeichert ist, in der Breite der Beschränkung auf der Basis der Vergleichsregel 16a (Schritt S804). Dieser Zugriffsrechtsvergleich, ähnlich der oben erläuterten Zugriffsrechtsanalyse, ist nicht auf jenen begrenzt, der ausgeführt wird, jedesmal wenn jedes Laufzeit-Zugriffsrecht aufeinanderfolgend von der Zugriffsrecht-Analysesektion 15 ermittelt wird. Alternativ dazu kann der Vergleich von Zugriffsrechten sequentiell ausgeführt werden, nachdem alle Laufzeit-Zugriffsrechte ermittelt werden.
  • Die Ausgabesektion 17, wie in 7 gezeigt, gibt, als Vergleichsergebnis des Zugriffsrechtskomparators 16, einen Widerspruch aus, der zwischen der Laufzeit-Zugriffsrechtsliste und der Entwicklungszeit-Zugriffsrechtsliste auftritt, d.h. gibt ein Zugriffsrecht in der Laufzeit-Zugriffsrechtsliste aus, von welchem Recht durch die Vergleichsverarbeitung des Zugriffsrechtskomparators 16 bestimmt wird, dass es breiter in der Beschränkung ist als die Entwicklungszeit-Zugriffsrechte (Schritt S805). Dieses ausgegebene Vergleichsergebnis, ähnlich wie die Zugriffsrechtsanalyse und der Zugriffsrechtsvergleich, die oben erläutert werden, ist nicht auf jenes begrenzt, das ausgeführt wird, jedesmal wenn der Zugriffsrechtskomparator 16 jedes der Laufzeit-Zugriffsrechte mit Entwicklungszeit-Zugriffen vergleicht. Alternativ dazu können Vergleichsergebnisse als Vergleichsergebnisliste ausgegeben werden, nachdem alle Laufzeit-Zugriffsrechte mit den Entwicklungszeit-Zugriffsrechten verglichen werden.
  • Durch eine Serie von oben erläuterten Verarbeitungen wird der Widerspruch, der zwischen der Laufzeit-Zugriffsrechtsliste und der Entwicklungszeit-Zugriffsrechtsliste auftritt, klar durch die Ausgabesektion 17 gemeldet. Dieser gemeldete Inhalt unterstützt die Korrektur des Programms, damit es mit den Zugriffsrechten konform ist, die zur Zeit der Entwicklung des Programms erteilt werden.
  • Gemäß der ersten Ausführungsform, wie bisher erläutert, analysiert der Methodensignaturdetektor 14 den Quellcode des Programms, der von der Quellcode-Eingabesektion 13 eingegeben wird, und detektiert sequentiell die Methodensignaturen, die in dem Programm enthalten sind. Die Zugriffsrecht-Analysesektion 15 analysiert sequentiell die so detektierten Methodensignaturen auf der Basis der vorherbestimmten Analyseregel 15a und ermittelt die Laufzeit-Zugriffsrechtsliste. Der Zugriffsrechtskomparator 16 vergleicht die Laufzeit-Zugriffsrechtsliste mit der Entwicklungszeit-Zugriffsrechts liste, die in der Zugriffsrechtslisten-Speichersektion 12 gespeichert ist, in der Breite der Beschränkung auf der Basis der vorherbestimmten Vergleichsregel 16a. Die Ausgabesektion 17 meldet dieses Vergleichsergebnis. Daher ist es möglich, einen Widerspruch leicht und sicher zu detektieren, der zwischen den Zugriffsrechten, die zu verwenden sind, wenn das Programm ausgeführt wird, und den Zugriffsrechten, die erteilt werden, wenn das Programm ausgeführt wird, auftritt.
  • In der ersten Ausführungsform wurde ein Beispiel erklärt, bei dem die Entwicklungszeit-Zugriffsrechtsliste, die von der Zugriffsrechtslisten-Eingabesektion 11 selbst eingegeben wird, ein Vergleichsobjekt für die Laufzeit-Zugriffsrechtsliste ist. Die vorliegende Erfindung ist nicht auf dieses Beispiel begrenzt. Die vorliegende Erfindung kann auch bei einem Beispiel angewendet werden, bei dem die Entwicklungszeit-Zugriffsrechtsliste, die von der Zugriffsrechtslisten-Eingabesektion 11 eingegeben wird, editiert wird, um mit der Laufzeit-Zugriffsrechtsliste verglichen zu werden.
  • Ein Beispiel, bei dem die Entwicklungszeit-Zugriffsrechtsliste, die von der Zugriffsrechtslisten-Eingabesektion 11 eingegeben wird, editiert wird, wird als zweite Ausführungsform der vorliegenden Erfindung erklärt. 9 ist ein Blockbild, das die Konfiguration einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß der zweiten Ausführungsform zeigt. Es ist zu beachten, dass Sektionen, die dieselben Funktionen haben wie die in 1 gezeigten, jeweils mit denselben Bezugssymbolen wie jene in 1 bezeichnet sind, und nicht detailliert erläutert werden. Nur ein Zugriffsrechtskompressor 21, der die charakteristische Sektion der zweiten Ausführungsform ist, wird detailliert erläutert.
  • Der Zugriffsrechtskompressor 21 in einer Zugriffsrecht- Widerspruchsdetektionsvorrichtung 20 ist eine Verarbeitungssektion, die Breiten von Beschränkungen jeweiliger Zugriffsrechte, die in einer Entwicklungszeit-Zugriffsrechtsliste enthalten sind, auf der Basis einer vorherbestimmten Regel 16a vergleicht, und die eine neue Entwicklungszeit-Zugriffsrechtsliste (von komprimierten Zugriffsrechten) durch das Löschen eines Zugriffsrechts, das schmäler in der Beschränkung ist als die anderen Zugriffsrechte, aus der Entwicklungszeit-Zugriffsrechtsliste erstellt.
  • Diese Kompressionsverarbeitung wird konkret erläutert. 10 ist eine Ansicht, die ein konkretes Beispiel der Kompressionsverarbeitung in der zweiten Ausführungsform zeigt. Es wird angenommen, wie in 10 gezeigt, dass Zugriffsrechte, die im Voraus erteilt werden, beispielsweise ein Zugriffsrecht (1) "java.io.FilePermission"/tmp/hoge", "read"" und ein Zugriffsrecht (2) "java.io.FilePermission"/tmp/*", "read"" sind.
  • In diesem Fall vergleicht der Zugriffsrechtskompressor 21 das Zugriffsrecht (2) mit dem Zugriffsrecht (1) auf der Basis der vorherbestimmten Vergleichsregel 16a und bestimmt, dass das erstere breiter in der Beschränkung (weniger beschränkt) ist. Das heißt, der Beschränkungsinhalt des Zugriffsrechts (1) ist in jenem des Zugriffsrechts (2) enthalten. Daher ist das Zugriffsrecht (2) ein redundantes Zugriffsrecht unter jenen in der Entwicklungszeit-Zugriffsrechtsliste. Demgemäß erstellt der Zugriffsrechtskompressor 21 eine neue Entwicklungszeit-Zugriffsrechtsliste durch das Löschen des Zugriffsrechts (2) aus der Entwicklungszeit-Zugriffsrechtsliste (siehe 10), wobei das stärker beschränkte Zugriffsrecht (1) zurückbleibt.
  • Es ist zu beachten, dass die so erstellte neue Entwicklungszeit-Zugriffsrechtsliste in einer Zugriffsrechtslisten-Speichersektion 12 gespeichert wird und von einem Zu griffsrechtskomparator 16 als Vergleichsobjekt für eine Laufzeit-Zugriffsrechtsliste verwendet wird.
  • Gemäß der zweiten Ausführungsform, wie bisher erläutert, vergleicht der Zugriffsrechtskompressor 21 Breiten von Beschränkungen der jeweiligen Zugriffsrechte, die in der Entwicklungszeit-Zugriffsrechtsliste enthalten sind, auf der Basis der vorherbestimmten Vergleichsregel 16a, und erstellt eine neue Entwicklungszeit-Zugriffsrechtsliste durch das Löschen eines Zugriffsrechts, das schmäler in der Beschränkung (weniger einschränkend) ist als die anderen, aus der Entwicklungszeit-Zugriffsrechtsliste. Der Zugriffsrechtskomparator 16 vergleicht die neu erstellte Entwicklungszeit-Zugriffsrechtsliste mit der Laufzeit-Zugriffsrechtsliste in der Breite der Beschränkung. Daher ist es möglich, Zugriffsrechte effizient zu vergleichen.
  • In der zweiten Ausführungsform wurde ein Beispiel erklärt, bei dem die Entwicklungszeit-Zugriffsrechtsliste, die von der Zugriffsrechtslisten-Eingabesektion 11 eingegeben wird, editiert wird. Die vorliegende Erfindung ist nicht auf dieses Beispiel begrenzt. Es ist auch möglich, die Laufzeit-Zugriffsrechtsliste zu editieren, die von der Zugriffsrecht-Analysesektion 15 ermittelt wird.
  • Ein Beispiel, bei dem die Laufzeit-Zugriffsrechtsliste editiert wird, die von der Zugriffsanalysesektion 15 ermittelt wird, wird hier als dritte Ausführungsform der vorliegenden Erfindung erläutert. 11 ist ein Blockbild, das die Konfiguration einer Zugriffsrechtslisten-Widerspruchsdetektionsvorrichtung gemäß der dritten Ausführungsform zeigt. Es ist zu beachten, dass Sektionen, die dieselben Funktionen haben wie die in 1 und 2 gezeigten, jeweils mit denselben Bezugssymbolen wie jene in 1 und 2 bezeichnet sind, und nicht detailliert erläutert werden. Nur ein Zugriffsrechtskompressor 31, der die charakteristische Sektion der dritten Ausführungsform ist, wird detailliert erläutert. Der Zugriffsrechtskompressor 31 in einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung 30 ist eine Verarbeitungssektion, welche Breiten (von Beschränkungen) jeweiliger Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, auf der Basis einer vorherbestimmten Regel 16a vergleicht, und welche eine neue Laufzeit-Zugriffsrechtsliste (komprimierter Zugriffsrechte) durch das Löschen eines Zugriffsrechts, das schmäler (in der Beschränkung) ist als die anderen Zugriffsrechte, aus der Laufzeit-Zugriffsrechtsliste erstellt.
  • Diese Kompressionsverarbeitung ist gleich wie die in der zweiten Ausführungsform erläuterte, die konkret erklärt wird. Es wird angenommen, wie in 12 gezeigt, dass Zugriffsrechte (Laufzeit-Zugriffsrechtsliste), die von der Zugriffsrecht-Analysesektion 15 analysiert werden, beispielsweise ein Zugriffsrecht (1) "java.net.SocketPermission"www.hogehoge.net:80", "connect"" und ein Zugriffsrecht (2) "java.net.SocketPermission"*:80", "connect"" sind.
  • In diesem Fall vergleicht der Zugriffsrechtskompressor 31 das Zugriffsrecht (2) mit dem Zugriffsrecht (1) auf der Basis der vorherbestimmten Vergleichsregel 16a und bestimmt, dass das erstere breiter in der Beschränkung (weniger beschränkt) ist. Das heißt, der Beschränkungsinhalt des Zugriffsrechts (1) ist in jenem des Zugriffsrechts (2) enthalten. Daher ist das Zugriffsrecht (2) ein redundantes Zugriffsrecht unter jenen in der Laufzeit-Zugriffsrechtsliste. Demgemäß erstellt der Zugriffsrechtskompressor 31 eine neue Laufzeit-Zugriffsrechtsliste durch das Löschen des Zugriffsrechts (2) aus der Laufzeit-Zugriffsrechtsliste (siehe 11), wobei das stärker beschränkte Zugriffsrecht (1) zurückbleibt.
  • Es ist zu beachten, dass die so erstellte neue Entwicklungszeit-Zugriffsrechtsliste von einem Zugriffsrechtskomparator 16 als Vergleichsobjekt für die Entwicklungszeit-Zugriffsrechtsliste verwendet wird. Der Zugriffsrechtskomparator 16 vergleicht nämlich die neue Laufzeit-Zugriffsrechtsliste, die vom Zugriffsrechtskompressor 31 erstellt wird, mit der neuen Entwicklungszeit-Zugriffsrechtsliste, die vom Zugriffsrechtskompressor 21 erstellt wird, in der Breite der Beschränkung.
  • In der dritten Ausführungsform, wie bisher erläutert, zusätzlich zur Erstellung der neuen Entwicklungszeit-Zugriffsrechtsliste durch den Zugriffsrechtskompressor 21, vergleicht der Zugriffsrechtskompressor 31 Breiten von Beschränkungen der jeweiligen Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, auf der Basis der vorherbestimmten Vergleichsregel 16a, und erstellt die neue Laufzeit-Zugriffsrechtsliste durch das Löschen eines Zugriffsrechts, das schmäler (in der Beschränkung) ist als die anderen Zugriffsrechte, aus der Laufzeit-Zugriffsrechtsliste. Der Zugriffsrechtskompaestor 16 vergleicht die neue Entwicklungszeit-Zugriffsrechtsliste mit der neuen Laufzeit-Zugriffsrechtsliste in der Breite der Beschränkung. Daher ist es möglich, Zugriffsrechte weiter effizient zu vergleichen.
  • Zweckmäßig wird die Kompressionsverarbeitung ausgeführt, nachdem alle Laufzeit-Zugriffsrechte von der Zugriffsrecht-Analysesektion 15 ermittelt werden. Dies ist auf die Annahme zurückzuführen, dass, wenn eine Kompressionsverarbeitung durchgeführt wird, nachdem alle Laufzeit-Zugriffsrechte ermittelt werden, diese in der Lage ist, ein redundantes Zugriffsrecht sicher und effizient zu löschen.
  • In der dritten Ausführungsform wurde ein Beispiel erklärt, bei dem der Zugriffsrechtskompressor 31 die neue Laufzeit-Zugriffsrechtsliste zusätzlich zur Erstellung der neuen Entwicklungszeit-Zugriffsrechtsliste durch den Zugriffsrechtskompressor 21 erstellt. Die vorliegende Erfindung ist nicht auf dieses Beispiel begrenzt. Die vorliegende Erfindung kann auch bei einem Beispiel angewendet werden, bei dem nur der Zugriffsrechtskompressor 31 eine neue Laufzeit-Zugriffsrechtsliste erstellt, ohne dass der Zugriffsrechtskompressor 21 vorgesehen ist. In diesem Fall ist es ähnlich wie in der dritten Ausführungsform möglich, die Zugriffsrechte effizient zu vergleichen, verglichen mit der ersten Ausführungsform.
  • In der ersten bis dritten Ausführungsform wurde ein Beispiel erklärt, bei dem das Zugriffsrecht, das einen Widerspruch in der Breite der Beschränkung aufweist, als Ausgang des Vergleichsergebnisses der Ausgabesektion 17 ausgegeben wird. Die vorliegende Erfindung ist jedoch nicht auf dieses Beispiel begrenzt. Es ist auch möglich, den Quellcode auszugeben, der einen Widerspruch verursacht.
  • Ein Beispiel, bei dem die Ausgabesektion 17 einen Quellcode ausgibt, der den Widerspruch von Zugriffsrechten verursacht, wird hier als vierte Ausführungsform der vorliegenden Erfindung erklärt. 13 ist ein Blockbild, das die Konfiguration einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß der vierten Ausführungsform zeigt. Es ist zu beachten, dass Sektionen, die dieselben Funktionen haben wie die in 1 gezeigten, jeweils mit denselben Bezugssymbolen wie jene in 1 bezeichnet sind, und nicht detailliert erläutert werden. Nur ein Teilquellcodedetektor 41, der eine charakteristische Sektion der vierten Ausführungsform ist, wird detailliert erläutert.
  • Der Teilquellcodedetektor 41 in einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung 40 ist eine Verarbeitungssektion, die einen Teilquellcode aus einem Quellcode eines Programms detektiert, der einem Zugriffsrecht entspricht, für das als Ergebnis des Vergleichs durch einen Zugriffsrechtskomparator 16 bestimmt wird, dass die Beschränkung des Laufzeitzugriffs breiter ist als jene eines Entwicklungszeit-Zugriffsrechts. Eine Ausgabesektion 17 gibt den Teilquellcode aus, der von dem Teilquellcodedetektor 41 detektiert wird.
  • Diese Ausgabeverarbeitung wird konkret erklärt. 14 ist eine Ansicht, die ein konkretes Beispiel der Ausgabeverarbeitung in der fünften Ausführungsform zeigt. Es wird angenommen, wie in 14 gezeigt, dass beispielsweise ein Zugriffsrecht"java.io.FilePermission"/tmp/-", "read"" als Zugriffsrecht, das im Voraus erteilt wird (Entwicklungszeit-Zugriffsrecht), in einer Zugriffsrechtslisten-Speichersektion 12 gespeichert ist.
  • Wenn in diesem Fall der in 14 gezeigte Quellcode in eine Quellcode-Eingabesektion 13 eingegeben wird, ermittelt eine Zugriffsrecht-Analysesektion 15 ein Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>", "read"", das sich aus der Zeile des Quellcodes "new FileInputStream (file)" in der sechsten Zeile des Quellcodes ergibt. Dann vergleicht der Zugriffsrechtskomparator 16 jedes Laufzeit-Zugriffsrecht, das von der Zugriffsrecht-Analysesektion 15 ermittelt wird, mit dem Entwicklungszeit-Zugriffsrecht, das in der Zugriffsrechtslisten-Speichersektion 12 gespeichert ist, in der Breite der Beschränkung. In diesem Fall wird als Vergleichsergebnis bestimmt, dass die Beschränkung des Laufzeit-Zugriffsrechts breiter (geringer) ist als jene des Entwicklungszeit-Zugriffsrechts. Es besteht nämlich ein Widerspruch in den Breiten der Beschränkungen von Zugriffsrechten.
  • Daher detektiert der Teilquellcodedetektor 41 den Teilquellcode, der den Widerspruch verursacht, aus dem Quellcode des Programms. In diesem Fall detektiert der Teilquellcodedetektor 41, dass "new FileInputStream (file)" in der sechsten Zeile des Quellcodes den Widerspruch verursacht. Die Ausgabesektion 17 gibt das widersprüchliche Zugriffsrecht und den Teilquellcode aus, der den Widerspruch verursacht, wie in 14 gezeigt.
  • Gemäß der vierten Ausführungsform, wie bisher erläutert, detektiert der Teilquellcodedetektor 41 den Teilquellcode, der dem Zugriffsrecht entspricht, für das als Ergebnis des Vergleichs durch den Zugriffsrechtskomparator 16 bestimmt wird, dass die Beschränkung des Laufzeit-Zugriffsrechts breiter ist als jene des Entwicklungszeit-Zugriffsrechts. Die Ausgabesektion 17 meldet den so detektierten Teilquellcode. Daher ist es möglich, klar den Teilquellcode zu melden, der einen Widerspruch verursacht. Daher ist es möglich, die Korrektur des Programms zu erleichtern, um mit den Zugriffsrechten konform zu sein, die erteilt werden, wenn das Programm entwickelt wird.
  • In der vierten Ausführungsform wurde ein Beispiel erklärt, bei dem die Kompression der Entwicklungszeit-Zugriffsrechtsliste und jene der Laufzeit-Zugriffsrechtsliste, wie in der zweiten und dritten Ausführungsform erläutert, nicht ausgeführt werden. Die vorliegende Erfindung ist jedoch nicht auf dieses Beispiel begrenzt. Die vorliegende Erfindung kann auch bei einem Beispiel angewendet werden, bei dem diese Kompressionsverarbeitungen ausgeführt werden, und dann ein Teilquellcode, der einen Widerspruch verursacht, detektiert und ausgegeben wird.
  • Wenn die Kompression der Laufzeit-Zugriffsrechtsliste ausgeführt wird, ist es kompliziert, einen Teilquellcode, der einen Widerspruch verursacht, durch eine Rückwirkung auf die ursprüngliche Laufzeit-Zugriffsrechtsliste von der neuen Laufzeit-Zugriffsrechtsliste zu detektieren. Daher wird davon ausgegangen, dass es bevorzugt wird, nur die Kompression der Entwicklungszeit-Zugriffsrechtsliste auszuführen.
  • In der ersten bis vierten Ausführungsform wurde ein Beispiel erklärt, bei dem die Zugriffsrechte auf der Basis der Analyseregel 15a analysiert werden. Alternativ dazu kann diese Analyseregel 15a durch dieselbe Verarbeitung wie die Zugriffsrecht-Analyseverarbeitung, die von der Zugriffsrecht-Analysesektion 15 durchgeführt wird, neu erstellt werden.
  • Eine Analyseregel-Erstellungsvorrichtung, welche die Analyseregel 15a erstellt, die in jeder der ersten bis vierten Ausführungsform verwendet wird, wird hier als fünfte Ausführungsform der vorliegenden Erfindung erläutert.
  • 15 ist ein Blockbild, das die Konfiguration der Analyseregel-Erstellungsvorrichtung gemäß der fünften Ausführungsform zeigt. Diese Analyseregel-Erstellungsvorrichtung 50, wie in 15 gezeigt, besteht aus einer Quellcode-Eingabesektion 13, einem Methodensignaturdetektor 14, einer Zugriffsrecht-Analysesektion 15, einer Analyseregel-Erstellungssektion 51 und einer Ausgabesektion 17.
  • Unter diesen Bestandteilelementen haben die Quellcode-Eingabesektion 13, der Methodensignaturdetektor 14 und die Zugriffsrecht-Analysesektion 15 dieselben Funktionen wie jene, die in 1 erläutert und jeweils mit denselben Bezugssymbolen bezeichnet werden. Sie analysieren nämlich Laufzeit-Zugriffsrechte aus dem Quellcode eines Programms.
  • Wenn die Methodensignatur, die von dem Methodensignaturdetektor 14 detektiert wird, bereits durch die Analyseregel 15a spezifiziert ist, analysiert dabei, wie in der ersten Ausführungsform erläutert, die Zugriffsrecht-Analysesektion 15 die spezifizierte Methodensignatur und ermittelt ein Zugriffsrecht. Wenn die Methodensignatur, die von dem Methodensignaturdetektor 14 detektiert wird, nicht durch die Analyseregel 15 spezifiziert ist, sondern die Methodensignatur, die durch die vorherbestimmte Analyseregel 15a spezifiziert ist, intern aufgerufen wird, dann analysiert die Zugriffsrecht-Analysesektion 15 die intern aufgerufene Methodensignatur und ermittelt ein Zugriffsrecht.
  • Die Zugriffsrechtsanalyse durch den internen Aufruf der Methodensignatur wird konkret erläutert. Es wird angenommen, wie in 16 gezeigt, dass eine Regel, gemäß der beispielsweise eine Methodensignatur "java.io.FileInputStream.FileInputStream (java.lang.String)" einem Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>", "read"" entspricht, durch die Analyseregel 15a spezifiziert ist.
  • Andererseits ruft in dem Quellcode, der von der Quellcode-Eingabesektion 13 eingegeben wird, wie in 16 gezeigt, eine in der fünften Zeile definierte Methode "Sample.foo(java.lang.String)" die Methodensignatur "java.io.FileInputStream.FileInputStream(java.lang.String)" intern auf. Obwohl ein Zugriffsrecht, das der Methode "Sample.foo(java.lang.String)" entspricht, nicht durch die Analyseregel 15a spezifiziert ist, analysiert in diesem Fall auf der Basis der Analyseregel 15a die Zugriffsrecht-Analysesektion 15 die Methodensignatur "java.io.FileInputStream.FileInputStream(java.lang.String)", die intern aufgerufen wird, und ermittelt ein Zugriffsrecht, das dieser Methodensignatur entspricht.
  • Das heißt, für die Methodensignatur "java.io.FileInputStream.FileInputStream(java.lang.String)", die intern aufgerufen wird, wird das Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>", "read"" durch die Analyseregel 15a spezifiziert. Daher ermittelt die Zugriffsrecht-Analysesektion 15 das Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>", "read"" als Lauf zeit-Zugriffsrecht.
  • Wenn die Zugriffsrechtsanalyse durch den internen Aufruf der Methodensignatur durchgeführt wird, wie oben erläutert, ist es eine in 15 gezeigte Analyseregel-Erstellungssektion 51, die eine Analyseregel neu erstellt. Wenn die Zugriffsrecht-Analysesektion 15 die Methodensignatur analysiert, die intern aufgerufen wird, und ein Zugriffsrecht ermittelt, erstellt nämlich die Analyseregel-Erstellungssektion 51 eine neue Analyseregel, die das so ermittelte Zugriffsrecht und die Methodensignatur spezifiziert, so dass diese einander entsprechen.
  • In dem in 16 gezeigten Fall erstellt die Analyseregel-Erstellungssektion 51 beispielsweise eine Analyseregel, gemäß der die Methodensignatur "Sample.foo(java.lang.String)" dem Zugriffsrecht "java.io.FilePermission" <<ALL FILES>>", "read"" entspricht. Zusätzlich gibt die Ausgabesektion 17 die Analyseregel, die von der Analyseregel-Erstellungssektion 51 erstellt wird, an die Außenseite der Analyseregel-Erstellungsvorrichtung 50 aus.
  • Wenn die Zugriffsrecht-Analysesektion 15 die Methodensignatur analysiert, die intern aufgerufen wird, und ein Zugriffsrecht ermittelt, erstellt die Analyseregel-Erstellungssektion 51, wie bisher erläutert, gemäß der fünften Ausführungsform eine neue Analyseregel, die das so ermittelte Zugriffsrecht und die so detektierte Methodensignatur spezifiziert, so dass diese einander entsprechen. Daher ist es möglich, eine effiziente Analyseregel zu erstellen, die zur effizienten Ermittlung von Laufzeit-Zugriffsrechten beiträgt.
  • Mit anderen Worten, durch das Spezifizieren der Analyseregel, die von der Analyseregel-Erstellungssektion 51 erstellt wird, als Analyseregel 15a der Zugriffsrecht-Wider spruchsdetektionsvorrichtung, die in der ersten bis vierten Ausführungsform erläutert wurde, und indem das Programm beispielsweise als Bibliothek eingesetzt wird, ist es dann möglich, Laufzeit-Zugriffsrechte effizient zu ermitteln. Dies ist darauf zurückzuführen, dass es nicht notwendig ist, Methoden aufzurufen, die gemäß Java als Standards definiert sind, und eine Analyse für die jeweiligen Methoden vorzunehmen.
  • In der fünften Ausführungsform wurde die Analyseregel-Erstellungsvorrichtung erläutert, welche die Analyseregel 15a erstellt, die in jeder der ersten bis vierten Ausführungsform eingesetzt wird. Alternativ dazu kann eine Zugriffsrecht-Widerspruchsdetektionsvorrichtung so zusammengesetzt sein, dass die Funktion einer solchen Analyseregel-Erstellungsvorrichtung in der Vorrichtung eingebaut sein kann.
  • Eine Zugriffsrecht-Widerspruchsdetektionsvorrichtung, die den Widerspruch von Zugriffsrechten detektiert, wobei eine neue Analyseregel erstellt wird, wird hier als sechste Ausführungsform der vorliegenden Erfindung erläutert.
  • 17 ist ein Blockbild, das die Konfiguration der Zugriffsrecht-Widerspruchsdetektionsvorrichtung gemäß der sechsten Ausführungsform zeigt. Es ist zu beachten, dass Sektionen, die dieselben Funktionen haben wie die in 1 gezeigten, jeweils mit denselben Bezugssymbolen wie jene in 1 bezeichnet sind, und nicht detailliert erklärt werden. Nur eine Analyseregel-Erstellungssektion 51, die eine charakteristische Sektion der sechsten Ausführungsform ist, wird detailliert erläutert.
  • Die Analyseregel-Erstellungssektion 51 in einer Zugriffsrecht-Widerspruchsdetektionsvorrichtung 60 nimmt dieselben Verarbeitungen vor wie jene der Analyseregel-Erstellungssektion 51, die in der fünften Ausführungsform erklärt wurde. Wenn die Zugriffsrecht-Analysesektion 15 die Methodensignatur analysiert, die intern aufgerufen wird, und ein Zugriffsrecht ermittelt, erstellt nämlich die Analyseregel-Erstellungssektion 51 eine neue Analyseregel, die das so ermittelte Zugriffsrecht und die so detektierte Methodensignatur spezifiziert, so dass diese einander entsprechen.
  • Ferner addiert diese Analyseregel-Erstellungssektion 51 die neu erstellte Analyseregel mit der Analyseregel 15a und spezifiziert eine neue Analyseregel. Daher kann die Zugriffsrecht-Analysesektion 15 Zugriffsrechte durch Bezugnahme auf diese neue Analyseregel effizient analysieren, wodurch es unnötig wird, die gemäß Java als Standards definierten Methodenaufrufe zu verfolgen, um eine Analyse vorzunehmen.
  • Wenn die Zugriffsrecht-Analysesektion 15 die Methodensignatur analysiert, die intern aufgerufen wird, und ein Zugriffsrecht ermittelt, erstellt die Analyseregel-Erstellungssektion 51, wie bisher erläutert, gemäß der sechsten Ausführungsform eine neue Analyseregel, die das so ermittelte Zugriffsrecht und die so detektierte Methodensignatur spezifiziert, so dass diese einander entsprechen, und addiert die neue Analyseregel mit der vorherbestimmten Analyseregel 15a, um dadurch eine neue Analyseregel zu spezifizieren. Daher ist es möglich, Laufzeit-Zugriffsrechte effizient zu ermitteln, kurz nachdem die neue Analyseregel addiert wird.
  • Bisher wurden die Ausführungsformen der vorliegenden Erfindung erläutert. Die vorliegende Erfindung kann, neben den oben erklärten Ausführungsformen, in verschiedensten anderen Ausführungsformen im Umfang des technischen Konzepts durchgeführt werden, das in den Ansprüchen beschrieben ist.
  • In den Ausführungsformen der vorliegenden Erfindung wird ein Beispiel erklärt, bei dem der Widerspruch von Zu griffsrechten in Bezug auf ein Java-Programm detektiert wird. Die vorliegende Erfindung ist jedoch nicht auf dieses Beispiel begrenzt. Die vorliegende Erfindung kann auch bei einem beliebigen Programm, das ausgeführt wird, auf der Basis der Beschränkung oder Erteilung von Zugriffsrechten angewendet werden.
  • Ferner können, unter den jeweiligen Verarbeitungen, die in den Ausführungsformen der vorliegenden Erfindung erklärt wurden, alle oder ein Teil von jenen, die, wie erläutert wurde, automatisch durchgeführt werden, manuell durchgeführt werden. Alle oder ein Teil jener, die, wie erläutert wurde, manuell durchgeführt werden, können durch ein wohlbekanntes Verfahren automatisch durchgeführt werden. Dabei können die Verarbeitungsprozeduren, Steuerprozeduren, konkreten Namen, Informationen, die verschiedenste Daten und Parameter enthalten, wie in der Beschreibung oder in den Zeichnungen gezeigt, willkürlich geändert werden, wenn nichts anderes spezifiziert ist.
  • Außerdem sind die jeweiligen Bestandteilelemente jeder der in den Zeichnungen gezeigten Vorrichtungen funktionelle Konzepte und sind nicht unbedingt wie in den Zeichnungen gezeigt physisch zusammengesetzt. Das heißt, die konkreten Ausführungsformen der Verteilung und Integration der Bestandteilelemente in den jeweiligen Vorrichtungen sind nicht auf die in den Zeichnungen gezeigten begrenzt. Alle oder ein Teil der Bestandteilelemente können so zusammengesetzt sein, dass die funktionell oder physisch in willkürlichen Einheiten verteilt oder integriert sind, in Abhängigkeit von verschiedensten Belastungen und einem Nutzungszustand. Ferner können alle oder ein willkürlicher Teil der jeweiligen Verarbeitungsfunktionen, die von jeder Vorrichtung durchgeführt werden, von der CPU und einem Programm, das von der CPU analysiert und ausgeführt wird, realisiert werden. Alternativ dazu können sie als Hardware auf der Basis einer verdrahteten Logik realisiert werden.
  • Jedes dieser in den Ausführungsformen der vorliegenden Erfindung erläuterten Zugriffsrecht-Widerspruchsdetektionsverfahren und Analyseregel-Erstellungsverfahren kann dadurch realisiert werden, dass es einem Computer, wie einem Personalcomputer oder einer Arbeitsstation, ermöglicht wird, ein im Voraus erstelltes Programm auszuführen. Dieses Programm kann über das Netz, wie das Internet, verteilt werden. Alternativ dazu, kann dieses Programm durch das Aufzeichnen des Programms auf einem computerlesbaren Aufzeichnungsmedium, wie einer Festplatte, einer Diskette (FD), einer CD-ROM, einer MO oder einer DVD, und Lesen des Programms aus dem Aufzeichnungsmedium durch einen Computer ausgeführt werden.
  • Gemäß einem Aspekt der vorliegenden Erfindung, wie bisher erläutert, wird ein Quellcode eines Programms analysiert, und Methodensignaturen, die in dem Programm enthalten sind, werden sequentiell detektiert; die detektierten Methodensignaturen werden sequentiell analysiert, und eine Laufzeit-Zugriffsrechtsliste wird ermittelt, auf der Basis einer vorherbestimmten Analyseregel, welche Methodensignaturen und Zugriffsrechte spezifiziert, die möglicherweise in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen; die Laufzeit-Zugriffsrechtsliste wird mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite (der Beschränkung) auf der Basis einer vorherbestimmten Vergleichsregel verglichen, welche Breiten in Bezug auf (Beschränkungen der) Zugriffsrechte spezifiziert, die möglicherweise in dem Programm enthalten sein können; und dieses Vergleichsergebnis wird gemeldet. Daher ist es möglich, einen Widerspruch leicht und sicher zu detektieren, der zwischen den Zugriffsrechten, die zu verwenden sind, wenn das Programm ausgeführt wird, und den Zu griffsrechten, die erteilt werden, wenn das Programm ausgeführt wird, auftritt.
  • Ferner wird eines der Zugriffsrechte in der Laufzeit-Zugriffsrechtsliste als Vergleichsergebnis gemeldet, für welches Zugriffsrecht bestimmt wird, dass die Beschränkung, die vergeben wird, wenn das Programm ausgeführt wird, breiter (oder geringer) ist als jene, die vergeben wird, wenn das Programm entwickelt wird. Daher ist es möglich, die Korrektur des Programms zu unterstützen, damit es mit den Zugriffsrechten konform ist, die erteilt werden, wenn das Programm entwickelt wird.
  • Außerdem wird ein Teilquellcode, der dem Zugriffsrecht entspricht, für das bestimmt wird, dass die Beschränkung, die vergeben wird, wenn das Programm ausgeführt wird, breiter ist als die Beschränkung, die vergeben wird, wenn das Programm entwickelt wird, als Ergebnis des Vergleichs aus dem Quellcode des Programms detektiert, und der detektierte Teilquellcode wird gemeldet. Daher ist möglich, einen Teilquellcode, der einen Widerspruch verursacht, klar zu melden. Dadurch ist es möglich, die Korrektur des Programms zu erleichtern, damit es mit den Zugriffsrechten konform ist, die erteilt werden, wenn das Programm entwickelt wird.
  • Ferner werden die Zugriffsrechte, die in der Entwicklungszeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite (der Beschränkung) auf der Basis der vorherbestimmten Vergleichsregel verglichen, und eine neue Entwicklungszeit-Zugriffsrechtsliste wird erstellt, indem das Zugriffsrecht, das schmäler (in der Beschränkung) ist als die anderen Zugriffsrechte, aus dem Entwicklungszeit-Zugriffsrecht gelöscht wird, und die so erstellte neue Entwicklungszeit-Zugriffsrechtsliste wird mit der Laufzeit-Zugriffsrechtsliste in der Breite (der Beschränkung) verglichen. Daher ist es möglich, einen Widerspruch prompt zu de tektieren, der zwischen dem Zugriffsrecht, das verwendet wird, wenn das Programm ausgeführt wird, und jenem, das erteilt wird, wenn das Programm entwickelt wird, auftritt.
  • Außerdem werden die Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite (der Beschränkung) auf der Basis der vorherbestimmten Vergleichsregel verglichen, und eine neue Laufzeit-Zugriffsrechtsliste wird erstellt, indem das Zugriffsrecht, das schmäler (in der Beschränkung) ist als die anderen Zugriffsrechte, aus der Laufzeit-Zugriffsrechtsliste gelöscht wird, und die so erstellte neue Laufzeit-Zugriffsrechtsliste wird mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite (der Beschränkung) verglichen. Daher ist es möglich, Zugriffsrechte effizient zu vergleichen. Dadurch ist es möglich, einen Widerspruch prompt zu detektieren, der zwischen dem Zugriffsrecht, das verwendet wird, wenn das Programm ausgeführt wird, und jenem, das erteilt wird, wenn das Programm entwickelt wird, auftritt.
  • Ferner werden die Zugriffsrechte, die in der Entwicklungszeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite (der Beschränkung) auf der Basis der vorherbestimmten Vergleichsregel verglichen, und eine neue Entwicklungszeit-Zugriffsrechtsliste wird erstellt, indem das Zugriffsrecht, das schmäler (in der Beschränkung) ist als die anderen Zugriffsrechte, aus dem Entwicklungszeit-Zugriffsrecht gelöscht wird, die Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, werden miteinander in der Breite (der Beschränkung) auf der Basis der vorherbestimmten Vergleichsregel verglichen, eine neue Laufzeit-Zugriffsrechtsliste wird erstellt, indem das Zugriffsrecht, das schmäler (in der Beschränkung) ist als die anderen Zugriffsrechte, aus der Laufzeit-Zugriffsrechtsliste gelöscht wird, und die neue Entwicklungszeit-Zugriffsrechts liste wird mit der neuen Laufzeit-Zugriffsrechtsliste in der Breite (der Beschränkung) verglichen. Daher ist es möglich, Zugriffsrechte weiter effizient zu vergleichen. Dadurch ist es möglich, einen Widerspruch weiter prompt zu detektieren, der zwischen dem Zugriffsrecht, das verwendet wird, wenn das Programm ausgeführt wird, und jenem, das erteilt wird, wenn das Programm entwickelt wird, auftritt.
  • Wenn die Methodensignaturen, die detektiert werden, nicht durch die vorherbestimmte Analyseregel spezifiziert sind, sondern die Methodensignaturen, die durch die vorherbestimmte Analyseregel spezifiziert sind, intern aufgerufen werden, werden außerdem die Methodensignaturen, die intern aufgerufen werden, analysiert, bzw. die Laufzeit-Zugriffsrechte werden ermittelt. Daher ist es möglich, Laufzeit-Zugriffsrechte aus dem Quellcode des Programms zu ermitteln. Dadurch ist es möglich, weiter sicherzustellen, dass ein Widerspruch detektiert wird, der zwischen dem Zugriffsrecht, das verwendet wird, wenn das Programm ausgeführt wird, und jenem, das erteilt wird, wenn das Programm entwickelt wird, auftritt.
  • Wenn die intern aufgerufenen Methodensignaturen analysiert werden, bzw. die Laufzeit-Zugriffsrechte ermittelt werden, wird ferner eine neue Analyseregel erstellt, welche die ermittelten Zugriffsrechte und die detektierten Methodensignaturen spezifiziert, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen. Daher ist es möglich, eine effiziente Analyseregel zu erstellen, die dazu beiträgt, Laufzeit-Zugriffsrechte effizient zu ermitteln.
  • Wenn eine neue Analyseregel erstellt wird, wird außerdem die neue Analyseregel mit der vorherbestimmten Analyseregel addiert, um die neue Analyseregel mit der addierten Analyseregel zu spezifizieren. Daher ist es möglich, Lauf zeit-Zugriffsrechte effizient zu ermitteln, kurz nachdem die neue Analyseregel addiert wird.
  • Gemäß einem weiteren Aspekt der vorliegenden Erfindung wird ein Quellcode des Programms analysiert, und die Methodensignaturen, die in dem Programm enthalten sind, werden sequentiell detektiert; wenn die detektierten Methodensignaturen bereits durch die vorherbestimmte Analyseregel spezifiziert werden, werden die spezifizierten Methodensignaturen analysiert, und die Zugriffsrechte werden ermittelt, und wenn die Methodensignaturen, die detektiert werden, nicht von der vorherbestimmten Analyseregel spezifiziert werden, sondern die Methodensignaturen, die von der vorherbestimmten Analyseregel spezifiziert werden, intern aufgerufen werden, werden die Methodensignaturen, die intern aufgerufen werden, analysiert, bzw. die Zugriffsrechte werden ermittelt; und wenn jeweils die Methodensignaturen, die intern aufgerufen werden, analysiert werden, und die Zugriffsrechte ermittelt werden, wird eine neue Analyseregel erstellt, welche die ermittelten Zugriffsrechte und die detektierten Methodensignaturen spezifiziert, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen. Daher ist es möglich, eine effiziente Analyseregel zu erstellen, die dazu beiträgt, Laufzeit-Zugriffsrechte effizient zu ermitteln.
  • Obwohl die Erfindung in Bezug auf eine spezifische Ausführungsform für eine vollständige und klare Offenbarung beschrieben wurde, sollen die beigeschlossenen Ansprüche dadurch nicht eingeschränkt werden, sondern sind so auszulegen, dass die alle Modifikationen und alternative Konstruktionen verkörpern, die für Fachleute klar sind, und die in die hier ausgeführte Grundlehre fallen. Obwohl die obige Beschreibung beispielsweise auf die Breite der Beschränkung als Kriterium zur Beurteilung von Zugriffsrechten Bezug nimmt, kann die Erfindung gleichermaßen bei einem Fall angewendet werden, wo eine Breite (Grad, Stufe oder Klasse) einer Berechtigung eingestellt wird, um die Zugriffsrechte zu bestimmen. Der oben verwendete Ausdruck "Breite der Beschränkung" kann so als "Ausmaß der Berechtigung" eines Zugriffsrechts angesehen werden.

Claims (22)

  1. Zugriffsrecht-Widerspruchsdetektionsvorrichtung (10, 20, 30, 40, 60), welche, für ein vorherbestimmtes Programm, das auf der Basis einer Zugriffsrechtsbeschränkung ausgeführt wird, einen Widerspruch detektiert, der zwischen einer Laufzeit-Zugriffsrechtsliste, welche eine Sammlung von Zugriffsrechten ist, die verwendet werden, wenn das Programm ausgeführt wird, und einer Entwicklungszeit-Zugriffsrechtsliste, welche eine Sammlung von Zugriffsrechten ist, die erteilt werden, wenn das Programm entwickelt wird, auftritt, wobei die Vorrichtung umfasst: eine Detektionseinheit (14), die einen Quellcode des Programms analysiert, und die sequentiell Methodensignaturen detektiert, die in dem Programm enthalten sind; und eine Meldungseinheit, die ein Vergleichsergebnis meldet; gekennzeichnet durch: eine Analyseeinheit (15), welche sequentiell die von der Detektionseinheit detektierten Methodensignaturen analysiert und die Laufzeit-Zugriffsrechtsliste auf der Basis einer vorherbestimmten Regel (15a) ermittelt, die Methodensignaturen und die Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen; und eine Vergleichseinheit (16), welche die Laufzeit-Zugriffsrechtsliste, die von der Analyseeinheit ermittelt wird, mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite der Beschränkung auf der Basis einer vorherbestimmten Vergleichsregel (16a) vergleicht, die Breiten in Bezug auf Beschränkungen der Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können; wobei die Meldungseinheit (17) das Vergleichsergebnis der Vergleichseinheit (16) meldet.
  2. Zugriffsrecht-Widerspruchsdetektionsvorrichtung nach Anspruch 1, bei welcher die Meldungseinheit (17) eines der Zugriffsrechte in der Laufzeit-Zugriffsrechtsliste meldet, für welches Zugriffsrecht als Ergebnis des Vergleichs durch die Vergleichseinheit (16) bestimmt wird, dass die Beschränkung, die vergeben wird, wenn das Programm ausgeführt wird, breiter ist als die Beschränkung, die vergeben wird, wenn das Programm entwickelt wird.
  3. Zugriffsrecht-Widerspruchsdetektionsvorrichtung (40) nach Anspruch 1, ferner mit: einer Teilquellcode-Detektionseinheit (41), die aus dem Quellcode des Programms einen Teilquellcode detektiert, der dem Zugriffsrecht entspricht, für das als Ergebnis des Vergleichs durch die Vergleichseinheit (16) bestimmt wird, dass die Beschränkung, die vergeben wird, wenn das Programm ausgeführt wird, breiter ist als die Beschränkung, die vergeben wird, wenn das Programm entwickelt wird, wobei die Meldungseinheit (17) den Teilquellcode meldet, der von der Teilquellcode-Detektionseinheit (41) detektiert wird.
  4. Zugriffsrecht-Widerspruchsdetektionsvorrichtung (20) nach Anspruch 1, ferner mit: einer ersten Listenerstellungseinheit (21), welche die Zugriffsrechte, die in der Entwicklungszeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite der Beschränkung auf der Basis der vorherbestimmten Vergleichsregel (16a) vergleicht, die das Zugriffsrecht, das enger in der Beschränkung ist als die anderen Zugriffsrechte, aus dem Entwicklungszeit-Zugriffsrecht löscht, und welche eine neue Entwicklungszeit-Zugriffsrechtsliste erstellt, wobei die Vergleichseinheit (16) die neue Entwicklungszeit-Zugriffsrechtsliste, die von der ersten Listenerstellungseinheit (21) erstellt wird, mit der Laufzeit-Zugriffsrechtsliste, die von der Analyseeinheit (15) ermittelt wird, in der Breite der Beschränkung vergleicht.
  5. Zugriffsrecht-Widerspruchsdetektionsvorrichtung (30) nach Anspruch 1, ferner mit: einer zweiten Listenerstellungseinheit (31), welche die Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite der Beschränkung auf der Basis der vorherbestimmten Vergleichsregel (16a) vergleicht, die das Zugriffsrecht, das enger in der Beschränkung ist als die anderen Zugriffsrechte, aus dem Laufzeit-Zugriffsrecht löscht, und welche eine neue Laufzeit-Zugriffsrechtsliste erstellt, wobei die Vergleichseinheit (16) die neue Laufzeit-Zugriffsrechtsliste, die von der zweiten Listenerstellungseinheit (31) erstellt wird, mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite der Beschränkung vergleicht.
  6. Zugriffsrecht-Widerspruchsdetektionsvorrichtung (30) nach Anspruch 1, ferner mit: einer ersten Listenerstellungseinheit (21), welche die Zugriffsrechte, die in der Entwicklungszeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite der Beschränkung auf der Basis der vorherbestimmten Vergleichsregel (16a) vergleicht, die das Zugriffsrecht, das enger in der Beschränkung ist als die anderen Zugriffsrechte, aus dem Entwicklungszeit-Zugriffsrecht löscht, und welche eine neue Entwicklungszeit-Zugriffsrechtsliste erstellt; und einer zweiten Listenerstellungseinheit (31), welche die Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite der Beschränkung auf der Basis der vorherbestimmten Vergleichsregel (16a) vergleicht, die das Zugriffsrecht, das enger in der Beschränkung ist als die anderen Zugriffsrechte, aus dem Laufzeit-Zugriffsrecht löscht, und welche eine neue Laufzeit-Zugriffsrechtsliste erstellt, wobei die Vergleichseinheit (16) die neue Entwicklungszeit-Zugriffsrechtsliste, die von der ersten Listenerstellungseinheit (21) erstellt wird, mit der neuen Laufzeit-Zugriffsrechtsliste, die von der zweiten Listenerstellungseinheit (31) erstellt wird, in der Breite der Beschränkung vergleicht.
  7. Zugriffsrecht-Widerspruchsdetektionsvorrichtung nach Anspruch 1, bei welcher, wenn die Methodensignaturen, die von der Detektionseinheit (14) detektiert werden, nicht durch die vorherbestimmte Analyseregel (15a) spezifiziert werden, sondern die Methodensignaturen, die durch die vorherbestimmte Analyseregel (15a) spezifiziert werden, intern aufgerufen werden, die Analyseeinheit (15) jeweils die Methodensignaturen analysiert, die intern aufgerufen werden, und die Laufzeit-Zugriffsrechte ermittelt.
  8. Zugriffsrecht-Widerspruchsdetektionsvorrichtung nach Anspruch 7, ferner mit: einer Analyseregel-Erstellungseinheit (51), die, wenn die Analyseeinheit (15) jeweils die intern aufgerufenen Methodensignaturen analysiert und die Laufzeit-Zugriffsrechte ermittelt, eine neue Analyseregel erstellt, welche die ermittelten Zugriffsrechte und die Methodensignaturen spezifiziert, die von der Detektionseinheit detektiert werden, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen.
  9. Zugriffsrecht-Widerspruchsdetektionsvorrichtung (60) nach Anspruch 8, ferner mit: einer Analyseregel-Additionseinheit, die, wenn die Analyseregel-Erstellungseinheit (51) die neue Analyseregel erstellt, die neue Analyseregel mit der vorherbestimmten Analyseregel (15a) addiert, um die neue Analyseregel mit der addierten Analyseregel zu spezifizieren.
  10. Analyseregel-Erstellungsvorrichtung (50), welche, für ein vorherbestimmtes Programm, das auf der Basis einer Zugriffsrechtsbeschränkung ausgeführt wird, eine vorherbestimmte Analyseregel (15a) erstellt, die Methodensignaturen und Zugriffsrechte spezifiziert, welche in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen, welche Vorrichtung umfasst: eine Detektionseinheit (14), die einen Quellcode des Programms analysiert, und die sequentiell die Methodensignaturen detektiert, die in dem Programm enthalten sind; eine Analyseeinheit (15), welche, wenn die Methodensignaturen, die von der Detektionseinheit (14) detektiert werden, bereits durch die vorherbestimmte Analyseregel (15a) spezifiziert sind, die spezifizierten Methodensignaturen analysiert und die Zugriffsrechte ermittelt, und welche, wenn die Methodensignaturen, die von der Detektionseinheit detektiert werden, nicht durch die vorherbestimmte Analyseregel (15a) spezifiziert sind, sondern die Methodensignaturen, die durch die vorherbestimmte Analyseregel spezifiziert sind, intern aufgerufen werden, jeweils die Methodensignaturen analysiert, die intern aufgerufen werden, und die Zu griffsrechte ermittelt; und eine Analyseregel-Erstellungseinheit (51), die, wenn die Analyseeinheit (15) jeweils die Methodensignaturen analysiert, die intern aufgerufen werden, und die Zugriffsrechte ermittelt, eine neue Analyseregel erstellt, welche die ermittelten Zugriffsrechte und die Methodensignaturen spezifiziert, die von der Detektionseinheit (14) detektiert werden, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen.
  11. Zugriffsrecht-Widerspruchsdetektionsverfahren zum Detektieren, für ein vorherbestimmtes Programm, das auf der Basis einer Zugriffsrechtsbeschränkung ausgeführt wird, eines Widerspruchs, der zwischen einer Laufzeit-Zugriffsrechtsliste, welche eine Sammlung von Zugriffsrechten ist, die verwendet werden, wenn das Programm ausgeführt wird, und einer Entwicklungszeit-Zugriffsrechtsliste, welche eine Sammlung von Zugriffsrechten ist, die erteilt werden, wenn das Programm entwickelt wird, auftritt, wobei das Verfahren umfasst: einen Detektionsschritt des Analysierens eines Quellcodes des Programms, und des sequentiellen Detektierens von Methodensignaturen, die in dem Programm enthalten sind; und einen Meldungsschritt des Meldens eines Vergleichsergebnisses; gekennzeichnet durch: einen Analyseschritt des sequentiellen Analysierens der in dem Detektionsschritt detektierten Methodensignaturen und des Ermittelns der Laufzeit-Zugriffsrechtsliste auf der Basis einer vorherbestimmten Regel (15a), die Methodensignaturen und die Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen; und einen Vergleichsschritt des Vergleichens der Laufzeit-Zugriffsrechtsliste, die in dem Analyseschritt ermittelt wird, mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite der Beschränkung auf der Basis einer vorherbestimmten Vergleichsregel (16a), die Breiten in Bezug auf Beschränkungen der Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können; welcher Meldungsschritt ein Vergleichsergebnis in dem Vergleichsschritt meldet.
  12. Zugriffsrecht-Widerspruchsdetektionsverfahren nach Anspruch 11, bei welchem, in dem Meldungsschritt, eines der Zugriffsrechte in der Laufzeit-Zugriffsrechtsliste gemeldet wird, für welches Zugriffsrecht als Ergebnis des Vergleichs in dem Vergleichsschritt bestimmt wird, dass die Beschränkung, die vergeben wird, wenn das Programm ausgeführt wird, breiter ist als die Beschränkung, die vergeben wird, wenn das Programm entwickelt wird.
  13. Zugriffsrecht-Widerspruchsdetektionsverfahren nach Anspruch 11, ferner mit: einem Teilquellcode-Detektionsschritt des Detektierens eines Teilquellcodes aus dem Quellcode des Programms, der dem Zugriffsrecht entspricht, für das als Ergebnis des Vergleichs in dem Vergleichsschritt bestimmt wird, dass die Beschränkung, die vergeben wird, wenn das Programm ausgeführt wird, breiter ist als die Beschränkung, die vergeben wird, wenn das Programm entwickelt wird, wobei in dem Meldungsschritt der Teilquellcode gemeldet wird, der in dem Teilquellcode-Detektionsschritt detektiert wird.
  14. Zugriffsrecht-Widerspruchsdetektionsverfahren nach Anspruch 11, ferner mit: einem ersten Listenerstellungsschritt des Vergleichens der Zugriffsrechte, die in der Entwicklungszeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite der Beschränkung auf der Basis der vorherbestimmten Vergleichsregel (16a), des Löschens des Zugriffsrechts, das enger in der Beschränkung ist als die anderen Zugriffsrechte, aus dem Entwicklungszeit-Zugriffsrecht, und des Erstellens einer neuen Entwicklungszeit-Zugriffsrechtsliste, wobei in dem Vergleichsschritt die neue Entwicklungszeit-Zugriffsrechtsliste, die in dem ersten Listenerstellungsschritt erstellt wird, mit der Laufzeit-Zugriffsrechtsliste, die in dem Analyseschritt ermittelt wird, in der Breite der Beschränkung verglichen wird.
  15. Zugriffsrecht-Widerspruchsdetektionsverfahren nach Anspruch 11, ferner mit: einem zweiten Listenerstellungschritt des Vergleichens der Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite der Beschränkung auf der Basis der vorherbestimmten Vergleichsregel (16a), des Löschens des Zugriffsrechts, das enger in der Beschränkung ist als die anderen Zugriffsrechte, aus dem Laufzeit-Zugriffsrecht, und des Erstellens einer neuen Laufzeit-Zugriffsrechtsliste, wobei in dem Vergleichsschritt die neue Laufzeit-Zugriffsrechtsliste, die in dem zweiten Listenerstellungsschritt erstellt wird, mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite der Beschränkung verglichen wird.
  16. Zugriffsrecht-Widerspruchsdetektionsverfahren nach Anspruch 11, ferner mit: einem ersten Listenerstellungsschritt des Vergleichens der Zugriffsrechte, die in der Entwicklungszeit-Zugriffs rechtsliste enthalten sind, miteinander in der Breite der Beschränkung auf der Basis der vorherbestimmten Vergleichsregel (16a), des Löschens des Zugriffsrechts, das enger in der Beschränkung ist als die anderen Zugriffsrechte, aus dem Entwicklungszeit-Zugriffsrecht, und des Erstellens einer neuen Entwicklungszeit-Zugriffsrechtsliste; und einem zweiten Listenerstellungsschritt des Vergleichens der Zugriffsrechte, die in der Laufzeit-Zugriffsrechtsliste enthalten sind, miteinander in der Breite der Beschränkung auf der Basis einer vorherbestimmten Vergleichsregel (16a), des Löschens des Zugriffsrechts, das enger in der Beschränkung ist als die anderen Zugriffsrechte, aus dem Laufzeit-Zugriffsrecht, und des Erstellens einer neuen Laufzeit-Zugriffsrechtsliste, wobei in dem Vergleichsschritt die neue Entwicklungszeit-Zugriffsrechtsliste, die in dem ersten Listenerstellungsschritt erstellt wird, mit der neuen Laufzeit-Zugriffsrechtsliste, die in dem zweiten Listenerstellungsschritt erstellt wird, in der Breite der Beschränkung verglichen wird.
  17. Zugriffsrecht-Widerspruchsdetektionsverfahren nach Anspruch 11, bei welchem, wenn die Methodensignaturen, die in dem Detektionsschritt detektiert werden, nicht durch die vorherbestimmte Analyseregel (15a) spezifiziert werden, sondern die Methodensignaturen, die durch die vorherbestimmte Analyseregel spezifiziert werden, intern aufgerufen werden, jeweils in dem Analyseschritt die Methodensignaturen analysiert werden, die intern aufgerufen werden, und die Laufzeit-Zugriffsrechte ermittelt werden.
  18. Zugriffsrecht-Widerspruchsdetektionsverfahren nach Anspruch 17, ferner mit: einem Analyseregel-Erstellungsschritt, wenn jeweils in dem Analyseschritt die intern aufgerufenen Methodensignaturen analysiert werden, und die Laufzeit-Zugriffsrechte ermittelt werden, des Erstellens einer neuen Analyseregel, welche die ermittelten Zugriffsrechte und die Methodensignaturen spezifiziert, die in dem Detektionsschritt detektiert werden, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen.
  19. Zugriffsrecht-Widerspruchsdetektionsverfahren nach Anspruch 18, ferner mit: einem Analyseregel-Additionsschritt, wenn die neue Analyseregel in dem Analyseregel-Erstellungsschritt erstellt wird, des Addierens der neuen Analyseregel mit der vorherbestimmten Analyseregel (15a), um die neue Analyseregel mit der addierten Analyseregel zu spezifizieren.
  20. Analyseregel-Erstellungsverfahren zum Erstellen, für ein vorherbestimmtes Programm, das auf der Basis einer Zugriffsrechtsbeschränkung ausgeführt wird, einer vorherbestimmten Analyseregel (15a), die Methodensignaturen und Zugriffsrechte spezifiziert, welche in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen, wobei das Verfahren umfasst: einen Detektionsschritt des Analysierens eines Quellcodes des Programms, und des sequentiellen Detektierens der Methodensignaturen, die in dem Programm enthalten sind; einen Analyseschritt, wenn die Methodensignaturen, die in dem Detektionsschritt detektiert werden, bereits durch die vorherbestimmte Analyseregel (15a) spezifiziert werden, des Analysierens der spezifizierten Methodensignaturen und des Ermittelns der Zugriffsrechte, und, wenn die Methodensignaturen, die in dem Detektionsschritt detektiert werden, nicht durch die vorherbestimmte Analyseregel (15a) spezifiziert werden, sondern die Methodensignaturen, die durch die vorherbestimmte Analyseregel spezifiziert werden, intern aufgerufen werden, des Analysierens jeweils der Methodensignaturen, die intern aufgerufen werden, und des Ermittelns der Zugriffsrechte; und einen Analyseregel-Erstellungsschritt, wenn jeweils in dem Analyseschritt die Methodensignaturen, die intern aufgerufen werden, analysiert werden und die Zugriffsrechte ermittelt werden, des Erstellens einer neuen Analyseregel, welche die ermittelten Zugriffsrechte und die Methodensignaturen spezifiziert, die in dem Detektionsschritt detektiert werden, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen.
  21. Computerprogramm, welches einen Programmcode enthält, der es einem Computer ermöglicht, ein Zugriffsrecht-Widerspruchsdetektionsverfahren auszuführen zum Detektieren, für ein vorherbestimmtes Programm, das auf der Basis einer Zugriffsrechtsbeschränkung ausgeführt wird, eines Widerspruchs, der zwischen einer Laufzeit-Zugriffsrechtsliste, welche eine Sammlung von Zugriffsrechten ist, die verwendet werden, wenn das Programm ausgeführt wird, und einer Entwicklungszeit-Zugriffsrechtsliste, welche eine Sammlung von Zugriffsrechten ist, die erteilt werden, wenn das Programm entwickelt wird, auftritt, wobei das Verfahren umfasst: einen Detektionsschritt des Analysierens eines Quellcodes des Programms, und des sequentiellen Detektierens von Methodensignaturen, die in dem Programm enthalten sind; und einen Meldungsschritt des Meldens eines Vergleichsergebnisses; gekennzeichnet durch einen Programmcode für: einen Analyseschritt des sequentiellen Analysierens der in dem Detektionsschritt detektierten Methodensignaturen und des Ermittelns der Laufzeit-Zugriffsrechtsliste auf der Basis einer vorherbestimmten Regel (15a), die Methodensignaturen und die Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen; und einen Vergleichsschritt des Vergleichens der Laufzeit-Zugriffsrechtsliste, die in dem Analyseschritt ermittelt wird, mit der Entwicklungszeit-Zugriffsrechtsliste in der Breite der Beschränkung auf der Basis einer vorherbestimmten Vergleichsregel (16a), die Breiten in Bezug auf Beschränkungen der Zugriffsrechte spezifiziert, welche möglicherweise in dem Programm enthalten sein können; welcher Meldungsschritt ein Vergleichsergebnis in dem Vergleichsschritt meldet.
  22. Computerprogramm, welches es einem Computer ermöglicht, ein Analyseregel-Erstellungsverfahren auszuführen zum Erstellen, für ein vorherbestimmtes Programm, das auf der Basis einer Zugriffsrechtsbeschränkung ausgeführt wird, einer vorherbestimmten Analyseregel (15a), die Methodensignaturen und Zugriffsrechte spezifiziert, welche in dem Programm enthalten sein können, so dass die Methodensignaturen jeweils den Zugriffsrechten entsprechen, wobei das Verfahren umfasst: einen Detektionsschritt des Analysierens eines Quellcodes des Programms, und des sequentiellen Detektierens der Methodensignaturen, die in dem Programm enthalten sind; einen Analyseschritt, wenn die Methodensignaturen, die in dem Detektionsschritt detektiert werden, bereits durch die vorherbestimmte Analyseregel (15a) spezifiziert werden, des Analysierens der spezifizierten Methodensignaturen und des Ermittelns der Zugriffsrechte, und, wenn die Methodensignaturen, die in dem Detektionsschritt detektiert werden, nicht durch die vorherbestimmte Analyseregel (15a) spezifiziert werden, sondern die Methodensignaturen, die durch die vorherbestimmte Analyseregel spezifiziert werden, intern aufgerufen werden, des Analysierens jeweils der Methodensignaturen, die intern aufgerufen werden, und des Ermittelns der Zugriffsrechte; und einen Analyseregel-Erstellungsschritt, wenn jeweils in dem Analyseschritt die Methodensignaturen, die intern aufgerufen werden, analysiert werden und die Zugriffsrechte ermittelt werden, des Erstellens einer neuen Analyseregel, welche die ermittelten Zugriffsrechte und die Methodensignaturen spezifiziert, die in dem Detektionsschritt detektiert werden, so dass die ermittelten Zugriffsrechte jeweils den detektierten Methodensignaturen entsprechen.
DE60213548T 2001-12-20 2002-10-17 Gerät zum Auffinden von Zugangsberechtigungswidersprüchen und Gerät zum Erzeugen von analysierenden Regeln Expired - Lifetime DE60213548T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2001388587A JP3939977B2 (ja) 2001-12-20 2001-12-20 アクセス権矛盾検出装置および解析ルール作成装置
JP2001388587 2001-12-20

Publications (2)

Publication Number Publication Date
DE60213548D1 DE60213548D1 (de) 2006-09-14
DE60213548T2 true DE60213548T2 (de) 2007-10-25

Family

ID=19188190

Family Applications (1)

Application Number Title Priority Date Filing Date
DE60213548T Expired - Lifetime DE60213548T2 (de) 2001-12-20 2002-10-17 Gerät zum Auffinden von Zugangsberechtigungswidersprüchen und Gerät zum Erzeugen von analysierenden Regeln

Country Status (4)

Country Link
US (1) US7363275B2 (de)
EP (1) EP1321844B1 (de)
JP (1) JP3939977B2 (de)
DE (1) DE60213548T2 (de)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4710221B2 (ja) * 2003-11-07 2011-06-29 日本電気株式会社 情報管理システムおよび情報管理プログラム
JP4545430B2 (ja) * 2003-12-19 2010-09-15 株式会社エヌ・ティ・ティ・データ アクセス権の矛盾・冗長ルール検出を行うアクセス制御システム及びそのコンピュータプログラム
DE102005021064B4 (de) 2005-05-06 2008-10-16 Siemens Ag Verfahren und Vorrichtung zum Schutz gegen Buffer Overrun-Attacken
US7784101B2 (en) * 2005-06-30 2010-08-24 Microsoft Corporation Identifying dependencies of an application upon a given security context
US7620995B2 (en) * 2005-06-30 2009-11-17 Microsoft Corporation Identifying dependencies of an application upon a given security context
US7779480B2 (en) * 2005-06-30 2010-08-17 Microsoft Corporation Identifying dependencies of an application upon a given security context
US10121153B1 (en) 2007-10-15 2018-11-06 Elance, Inc. Online escrow service
US10204074B1 (en) 2008-06-12 2019-02-12 Elance, Inc. Online professional services storefront
US8332909B2 (en) * 2008-12-16 2012-12-11 Microsoft Corporation Automated software restriction policy rule generation
JP5228943B2 (ja) 2009-01-27 2013-07-03 富士通株式会社 最小権限違反検出プログラム
US10635412B1 (en) * 2009-05-28 2020-04-28 ELANCE, Inc . Online professional badge
US10650332B1 (en) 2009-06-01 2020-05-12 Elance, Inc. Buyer-provider matching algorithm
JP5423424B2 (ja) * 2010-01-25 2014-02-19 富士ゼロックス株式会社 アクセス権管理プログラム、アクセス権管理装置及びデータ処理システム
US9842312B1 (en) 2010-02-19 2017-12-12 Upwork Global Inc. Digital workroom
JP5807640B2 (ja) * 2010-09-22 2015-11-10 日本電気株式会社 アクセス権可否生成装置、アクセス権可否生成方法、プログラム、及び、アクセス制御システム
JP2013065114A (ja) * 2011-09-15 2013-04-11 Fujitsu Ltd 情報処理システムの制御方法、中継装置の制御プログラム及びクライアント装置の制御プログラム
JP5736335B2 (ja) * 2012-03-19 2015-06-17 Kddi株式会社 アプリケーション解析装置、アプリケーション解析システム、およびプログラム
US9542433B2 (en) 2012-12-20 2017-01-10 Bank Of America Corporation Quality assurance checks of access rights in a computing system
US9189644B2 (en) 2012-12-20 2015-11-17 Bank Of America Corporation Access requests at IAM system implementing IAM data model
US9639594B2 (en) 2012-12-20 2017-05-02 Bank Of America Corporation Common data model for identity access management data
US9537892B2 (en) 2012-12-20 2017-01-03 Bank Of America Corporation Facilitating separation-of-duties when provisioning access rights in a computing system
US9529629B2 (en) 2012-12-20 2016-12-27 Bank Of America Corporation Computing resource inventory system
US9477838B2 (en) * 2012-12-20 2016-10-25 Bank Of America Corporation Reconciliation of access rights in a computing system
US9117180B1 (en) 2013-03-15 2015-08-25 Elance, Inc. Matching method based on a machine learning algorithm and a system thereof
US9185136B2 (en) * 2013-11-28 2015-11-10 Cyber-Ark Software Ltd. Correlation based security risk identification
US11176267B2 (en) 2015-02-24 2021-11-16 International Business Machines Corporation Fine-grained user control over usages of sensitive system resources having private data with applications in privacy enforcement
US11153383B2 (en) 2016-03-08 2021-10-19 Tanium Inc. Distributed data analysis for streaming data sources
US10819586B2 (en) * 2018-10-17 2020-10-27 Servicenow, Inc. Functional discovery and mapping of serverless resources
CN109784073A (zh) * 2018-12-29 2019-05-21 360企业安全技术(珠海)有限公司 数据访问方法及装置、存储介质、计算机设备

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08263438A (ja) * 1994-11-23 1996-10-11 Xerox Corp ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法
CA2242596C (en) * 1996-01-11 2012-06-19 Mrj, Inc. System for controlling access and distribution of digital property
US6167520A (en) * 1996-11-08 2000-12-26 Finjan Software, Inc. System and method for protecting a client during runtime from hostile downloadables
US6032216A (en) * 1997-07-11 2000-02-29 International Business Machines Corporation Parallel file system with method using tokens for locking modes
US5983348A (en) * 1997-09-10 1999-11-09 Trend Micro Incorporated Computer network malicious code scanner
US6317868B1 (en) * 1997-10-24 2001-11-13 University Of Washington Process for transparently enforcing protection domains and access control as well as auditing operations in software components
US5983225A (en) * 1998-01-26 1999-11-09 Telenor As Parameterized lock management system and method for conditional conflict serializability of transactions
US6205466B1 (en) * 1998-07-17 2001-03-20 Hewlett-Packard Company Infrastructure for an open digital services marketplace
US6625603B1 (en) * 1998-09-21 2003-09-23 Microsoft Corporation Object type specific access control
US6466983B1 (en) * 1999-09-30 2002-10-15 Steven Paul Strazza Systems and methods for controlling access to data maintained in a repository
US7350204B2 (en) * 2000-07-24 2008-03-25 Microsoft Corporation Policies for secure software execution
US6889209B1 (en) * 2000-11-03 2005-05-03 Shieldip, Inc. Method and apparatus for protecting information and privacy
US7302634B2 (en) * 2001-03-14 2007-11-27 Microsoft Corporation Schema-based services for identity-based data access
US7110982B2 (en) * 2001-08-27 2006-09-19 Dphi Acquisitions, Inc. Secure access method and system
US20030188183A1 (en) * 2001-08-27 2003-10-02 Lee Lane W. Unlocking method and system for data on media

Also Published As

Publication number Publication date
EP1321844B1 (de) 2006-08-02
JP3939977B2 (ja) 2007-07-04
US7363275B2 (en) 2008-04-22
US20030120603A1 (en) 2003-06-26
EP1321844A3 (de) 2005-05-11
JP2003186708A (ja) 2003-07-04
EP1321844A2 (de) 2003-06-25
DE60213548D1 (de) 2006-09-14

Similar Documents

Publication Publication Date Title
DE60213548T2 (de) Gerät zum Auffinden von Zugangsberechtigungswidersprüchen und Gerät zum Erzeugen von analysierenden Regeln
DE69714752C5 (de) Verwendung einer hohen programmiersprache in einem mikrokontroller
DE602004010563T2 (de) Ausführliche Identifizierung von Hardware zur Verbindung der Software mit einem änderungstolerantem Computersystem
DE69530128T2 (de) Sicherheit für rechnerbetriebsmittel
DE69929772T2 (de) Dateizugriffsteuerung in einem mehrfachprotokoll-datei-server
EP3274825B1 (de) Verfahren und ausführungsumgebung zum gesicherten ausführen von programmbefehlen
DE69230778T2 (de) Dynamische Programmverknüpfung zwischen Programmadressbereichen im Nicht-Überwachungsmodus
DE69132809T2 (de) Verfahren und Anordnung zur Ausführung von Sicherheitswegbefehlen
DE69402955T2 (de) Datenauswechselsystem mit tragbaren Datenverarbeitungseinheiten
DE112011103048B4 (de) Ein Verfahren zum Beglaubigen einer Vielzahl von Datenverarbeitungssystemen
US7363616B2 (en) Systems and methods for prioritized data-driven software testing
Steffan et al. Collaborative attack modeling
DE60017457T2 (de) Verfahren zur isolierung eines fehlers in fehlernachrichten
DE60102555T2 (de) Verhinderung der map-aktivierten modulmaskeradeangriffe
DE60108181T2 (de) Änderbarkeitsanalyse in java
DE202011111121U1 (de) System zum Erfassen komplexer Schadsoftware
DE102012216597A1 (de) Wirksames Testen einer Berechtigungslogik von WEB-Komponenten, die eine Berechtigung auf der Grundlage von Ansprüchen einsetzen
DE112012000279T5 (de) Ermitteln der Anfälligkeit von Computer-Software-Anwendungen gegenüber Rechteausweitungsangriffen
EP1904923A1 (de) Verfahren und softwaresystem zur konfiguration eines modularen systems
DE112012004247T5 (de) Passives Überwachen virtueller Systeme unter Verwendung einer erweiterbaren Indexierung
WO2005076129A1 (de) Verfahren zur konfiguration eines computerprogramms
DE10303054A1 (de) Verifizieren einer Programmversion
DE10333088A1 (de) Verfahren zum Liefern von Zugriff auf die internen Signale eines dynamischen Systemmodells von außerhalb bezüglich der Modellierungsumgebung
EP3767505B1 (de) Verfahren und system zur bereitstellung von sicherheitsinformationen über einen anwendungscontainer für ein industrielles edge-gerät
DE10004198A1 (de) System und Verfahren für eine intelligente Analysesonde

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8381 Inventor (new situation)

Inventor name: KOJIMA, HISASHI, KAWASAKI-SHI, KANAGAWA 211-85, JP

Inventor name: TORII, SATORU, KAWASAKI-SHI, KANAGAWA 211-8588, JP

8328 Change in the person/name/address of the agent

Representative=s name: SEEGER SEEGER LINDNER PARTNERSCHAFT PATENTANWAELTE