DE69933329T2 - Vorrichtung und Verfahren für sichere übertragung von Dokumenten die von einem Webmittel gesendet werden - Google Patents

Vorrichtung und Verfahren für sichere übertragung von Dokumenten die von einem Webmittel gesendet werden Download PDF

Info

Publication number
DE69933329T2
DE69933329T2 DE69933329T DE69933329T DE69933329T2 DE 69933329 T2 DE69933329 T2 DE 69933329T2 DE 69933329 T DE69933329 T DE 69933329T DE 69933329 T DE69933329 T DE 69933329T DE 69933329 T2 DE69933329 T2 DE 69933329T2
Authority
DE
Germany
Prior art keywords
token
server
security
received
client
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
DE69933329T
Other languages
English (en)
Other versions
DE69933329D1 (de
Inventor
Douglas W. Fort Collins Steele
Todd M. Loveland Goin
Craig W. Fort Collins Bryant
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.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
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 Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of DE69933329D1 publication Critical patent/DE69933329D1/de
Application granted granted Critical
Publication of DE69933329T2 publication Critical patent/DE69933329T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0807Network architectures or network communication protocols for network security for authentication of entities using tickets, e.g. Kerberos
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)

Description

  • Hintergrund der Erfindung
  • Gebiet der Erfindung
  • Die vorliegende Erfindung bezieht sich allgemein auf Computer und Software, und insbesondere auf die Sicherheit im Zusammenhang mit dem Zugriff auf eine Web-Ressource auf einem Server mit einem Klientbrowser.
  • Beschreibung des Stands der Technik
  • Wie es in der Technik bekannt ist, ist das Internet eine weltweite Sammlung von Netzwerken und Gateways bzw. Netzübergängen, die die TCP/IP-Protokollfolge verwenden, um miteinander zu kommunizieren. Das Herz des Internets ist ein Backbone von Hochgeschwindigkeitsdatenkommunikationsleitungen zwischen Hauptknoten oder Hostcomputern, die aus Tausenden von kommerziellen Regierungs-, Erziehungs- und anderen Computersystemen bestehen, die Daten und Mitteilungen leiten.
  • World Wide Web (WWW) bezieht sich auf den gesamten Satz von miteinander verbundenen Hypertext-Dokumenten, die sich auf Hypertext-Transfer-Protokoll-(HTTP-)Servern auf der ganzen Welt befinden. Dokumente auf dem WWW, die als Seiten oder Webseiten bezeichnet werden, sind in Hypertext-Markup-Sprache (HTML; HTML = hypertext mark-up language) geschrieben, die durch Einheitsressourcenlokatoren (URL; URL = uniform resource locators) identifiziert werden, die die bestimmte Maschine und den Pfadnamen spezifizieren, durch die auf eine Datei zugegriffen werden kann und dieselbe von Knoten zu Knoten zu dem Endnutzer unter HTTP übertragen werden kann. Eine Website ist eine verwandte Gruppe dieser Dokumente und zugeordneten Dateien, Scripte, Teilprozeduren und Datenbanken, die durch einen HTTP-Server auf dem WWW angeboten werden.
  • Benutzer benötigen ein Browser-Programm und eine Internetverbindung, um auf eine Website zuzugreifen. Browser-Programme, die auch als „Web-Browser" bezeichnet werden, sind Klient-Anwendungen, die es einem Benutzer ermöglichen, im Internet zu navigieren und HTML-Dokumente auf dem WWW, einem anderen Netzwerk oder dem Computer des Benutzers zu betrachten. Web-Browser ermöglichen es Benutzern auch, Codes zu folgen, die als „Kennungen" bezeichnet werden, die in einem HTML-Dokument eingebettet sind, die bestimmte Wörter und Bilder in dem Dokument URLs zuordnen, so dass ein Benutzer auf eine andere Datei zugreifen kann, die sich irgendwo auf der Welt befinden kann, mit nur einem Tastendruck oder einem Mausklick.
  • Diese Dateien können Text (in einer Vielzahl von Schriftarten und -typen), Graphikbilder, Filmdateien und Töne sowie Java-Applets, Perl-Anwendungen, andere Script-Sprachen, aktive X-Steuerungen oder andere kleine eingebettete Softwareprogramme enthalten, die ausgeführt werden, wenn der Benutzer dieselben durch Klicken auf eine Verknüpfung aktiviert. Scripte sind Anwendungen, die durch einen HTTP-Server ansprechend auf eine Anforderung durch einen Klient-Benutzer ausgeführt werden. Diese Scripts werden durch den HTTP-Dämon aufgerufen, um einen einzelnen Auftrag auszuführen, und dann enden.
  • Ein Typ von Script ist ein CGI-Script (CGI = common gateway interface = gemeinsame Gateway-Schnittstelle). Allgemein wird ein CGI-Script aufgerufen, wenn ein Benutzer auf ein Element in einer Webseite klickt, wie z. B. eine Verknüpfung oder ein Bild. CGI-Scripts werden verwendet, um Interaktivität in einer Webseite zu liefern. CGI-Scripts können in vielen Sprachen geschrieben sein, einschließlich C, C++ und Perl. Ein CGI-BIN ist eine Bibliothek von CGI-Script- Anwendungen, die durch einen HTTP-Server ausgeführt werden können.
  • Eine Hauptschwierigkeit bei dem Zugriff auf diese Dokumente und zugeordnete Dateien, Scripte, Teilprozeduren und Datenbanken, die durch einen HTTP-Server auf dem WWW angeboten werden, ist die der Sicherheit. Wie kann man sicherstellen, dass nur erlaubte Benutzer von erlaubten Klient-Systemen Zugriff zu der Server-Anwendung erhalten, und auch sicherstellen, dass der Zugriff nicht für böswillige Zwecke missbraucht werden kann?
  • Das Verfahren, das derzeitig verwendet wird, umfasst die Verwendung eines „Cookie". Cookies sind Datenblöcke, die ein Server ansprechend auf eine Anforderung von dem Klient zu einem Klient zurücksendet. Der Datenblock wird dann auf dem System eines Klienten gespeichert. Wenn der Klient zu der gleichen Website zurückkehrt, sendet der Klient eine Kopie des Cookie zurück zu dem Server und identifiziert dadurch den Klient für den Server. Cookies werden verwendet, um Benutzer zu identifizieren, um den Server anzuweisen, eine kundenspezifische Version der angeforderten Webseite zu senden, um Account-Informationen für den Benutzer vorzulegen und für andere Verwaltungszwecke. Bei den meisten Systemen wird ein Cookie-Programm während der Anmeldung des Benutzers ausgeführt.
  • Die bisherige Lösung zum Liefern von Sicherheit, wenn auf Web-Ressourcen zugegriffen wird, leidet an den folgenden Sicherheitsschwächen. Es wird später gezeigt, wie die vorliegende Erfindung bestimmte dieser Schwierigkeiten adressiert und überwindet.
  • Ein Problem der herkömmlichen Lösungen ist, dass die Host-Adressen und Benutzernamen (d. h. Benutzer-Anmeldungsinformationen) in Klartext gesendet werden, der sehr leicht „manipuliert" werden kann. Ein versierter Hacker kann Pakete übertragen, und vorgeben, von einer anderen Maschine zu sein oder ein anderer Benutzer zu sein, und dadurch unbefugten Zugriff zu dem Server erhalten.
  • Noch ein weiteres Problem ergibt sich, wenn mehrere Benutzersicherheitspegel angestrebt werden. Das Cookie-Verfahren ermöglicht nur einen einzigen Sicherheitspegel. Darüber hinaus ermöglicht die Verwendung von Cookies nicht, dass eine Benutzeranwendung mit einem Sicherheitssystem integriert wird. Derzeit sind Cookies Teil des Klientbrowser-Programms und sind getrennt von einer Benutzeranwendung.
  • Ein weiteres Problem im Stand der Technik ist, dass die Authentifizierung schwach ist. Dies liegt daran, dass der Server den Benutzer- und Hostnamen in der Übertragung ohne Beweis als identifiziert annimmt. Ferner gibt es das Problem, dass kein Zustand beibehalten wird, da jede Befehlstransaktion alleine steht. Dies öffnet diese Verfahren für „Wiedergabe-Attacken", bei denen ein Hacker ein gültiges Netzwerkpaket erfasst, einige Details ändert (wie den Namen des Benutzers oder den Befehl, der auszuführen ist) und dasselbe neu sendet.
  • Die US-A-5,740,361 offenbart ein System und Verfahren zum Authentifizieren von Benutzern und Diensten, die über ein unsicheres Netzwerk kommunizieren. Jeder Benutzer und Dienst hat eine Zugangsphrase, die für Identifikation verwendet wird. Herausforderung-Antwort-Techniken werden verwendet, um die Zugangsphrasen während des Authentifizierungsprozesses geheim zu halten. Zugangsphrasen sind einer Identifikationsentität bekannt, mit der der Dienst kommuniziert, um sowohl den Dienst als auch den Benutzer zu identifizieren.
  • Die WO98/03927A lehrt die Verwendung von persönlichen Informationsagenten, um Agentenregel-basierte Befehle und Steuerung von Informations-Werten in einer Computernetzwerkumgebung zu implementieren. Vertrauenswürdige elektronische Gemeinschaften werden gebildet, in denen Mitglieder ihre digitalen Rollen befehlen und steuern, und die vertrauenswürdige Verwendung von Informations-Anteilen austauschen oder deren Wert vermitteln.
  • Bis jetzt hatten Netzwerksysteme jedoch nicht die Fähigkeit, flexible und erhöhte Sicherheit für Web-Dokumente auf dem Internet oder anderen Netzwerktypen zu liefern.
  • Zusammenfassung der Erfindung
  • Bestimmte Objekte, Vorteile und neuartige Merkmale der Erfindung werden teilweise in der folgenden Beschreibung offensichtlich und werden für Fachleute auf diesem Gebiet bei der Untersuchung des Folgenden teilweise offensichtlich oder können bei der Anwendung der Erfindung erlangt werden. Die Objekte und Vorteile der Erfindung können realisiert und erhalten werden durch die Vorrichtungen und Kombinationen, die in den angehängten Ansprüchen besonders dargestellt sind.
  • Bei einem ersten Aspekt schafft die vorliegende Erfindung ein Verfahren zum Sichern von Web-Ressourcen in einem Netzwerksystem, wobei das Verfahren folgende Schritte umfasst: Erzeugen eines einmaligen Tokens, jedes Mal, wenn ein Klientbrowser eine Dienstanforderung empfängt; Senden des einmaligen Tokens an einen Sicherheitsserver, jedes Mal, wenn der Klientbrowser auf die Dienstanforderung anspricht; Senden der Dienstanforderung und des einmaligen Tokens an einen Anwendungsserver zum Erfüllen der Dienstanforderung, wobei der Anwendungsserver das einmalige Token an den Sicherheitsserver weiterleitet, um das einmalige Token zu verifizieren; Empfangen eines angeforderten Dienstes von dem Anwendungsserver, wenn eine Übereinstimmungsmitteilung von dem Sicherheitsserver dem Anwendungsserver anzeigt, dass das einmalige Token von dem Klientbrowser und das einmalige Token von dem Anwendungsserver übereinstimmen; und Empfangen einer Fehlermitteilung von dem Anwen dungsserver, wenn eine vorbestimmte Auszeitperiode abläuft, zwischen dem Zeitpunkt, wenn das einmalige Token von dem Klientbrowser empfangen wird und wenn das zweite einmalige Token von dem Anwendungsserver empfangen wird.
  • Das Erzeugen eines einmaligen Tokens kann ferner das Verwenden eines Zufallszahlgenerators umfassen, um das einmalige Token zu erzeugen. Eine Tornummer für die Sicherheitsserververbindung zu dem Klientbrowser kann bestimmt werden, und diese Tornummer kann dem einmaligen Token hinzugefügt werden.
  • Der Klientbrowser kann mit dem Sicherheitsserver registriert werden.
  • Bei einem weiteren Aspekt schafft die vorliegende Erfindung ein System zum Liefern von Sicherheit von Web-Ressourcen an eine Klientvorrichtung, das jedes Mal ein einmaliges Token erzeugt, wenn die Klientvorrichtung eine Dienstanforderung erzeugt, und ein Anwendungsgerät zum Liefern eines angeforderten Dienstes, wobei das Computersystem folgende Merkmale umfasst: eine Sicherheitsvorrichtung zum Verifizieren des einmaligen Tokens, das durch die Klientvorrichtung mit der Dienstanforderung erzeugt wurde, wobei die Sicherheitsvorrichtung ferner folgende Merkmale umfasst: einen ersten Sicherheitsmechanismus, der das einmalige Token, das von der Klientvorrichtung empfangen wurde, und ein zweites einmaliges Token, das von der Anwendungsvorrichtung empfangen wurde, vergleicht; einen zweiten Sicherheitsmechanismus, der eine Übereinstimmungsmitteilung erzeugt, wenn das einmalige Token, das von der Klientvorrichtung empfangen wurde, und das zweite einmalige Token, das von der Anwendungsvorrichtung empfangen wurde, übereinstimmen, wobei die Übereinstimmungsmitteilung die Anwendungsvorrichtung autorisiert, den angeforderten Dienst an die Klientvorrichtung zu liefern, wenn die Übereinstimmungsnotiz empfangen wird; und einen dritten Sicherheitsmechanismus, der eine Nicht-Übereinstimmungsmitteilung erzeugt, wenn eine vorbestimmte Auszeitperiode abläuft, zwischen dem Zeitpunkt, wenn das einmalige Token von der Klientvorrichtung empfangen wird, und wenn das zweite einmalige Token von der Anwendungsvorrichtung empfangen wird, wobei die Nicht-Übereinstimmungsmitteilung die Anwendungsvorrichtung daran hindert, den angeforderten Dienst an die Klientvorrichtung zu liefern, wenn die Nicht-Übereinstimmungsmitteilung empfangen wird.
  • Der dritte Sicherheitsmechanismus kann die Nicht-Übereinstimmungsmitteilung erzeugen, wenn das einmalige Token, das von dem Klientbrowser empfangen wird und das zweite einmalige Token, das von dem Anwendungsserver empfangen wird, nicht übereinstimmen.
  • Das System kann ferner einen vierten Sicherheitsmechanismus zum Empfangen des einmaligen Tokens von der Klientbrowser-Vorrichtung und einen fünften Sicherheitsmechanismus zum Empfangen des zweiten einmaligen Tokens von der Anwendungsvorrichtung umfassen. Alternativ kann das System einen vierten Sicherheitsmechanismus umfassen, zum Senden der Mitteilung, die erzeugt wurde, an den Anwendungsserver, um anzuzeigen, ob die Dienstanforderung verifiziert ist.
  • Kurze Beschreibung der Zeichnungen
  • Die beiliegenden Zeichnungen, die einen Teil der Beschreibung bilden und in derselben enthalten sind, stellen mehrere Aspekte der vorliegenden Erfindung dar, und dienen zusammen mit der Beschreibung dazu, die Prinzipien der Erfindung zu erklären.
  • 1 ist ein Blockdiagramm des Klient/Server-Systems, das das Internet verwendet.
  • 2 ist ein Blockdiagramm, das ein Browser-Programm darstellt, das in einem computer-lesbaren Medium angeordnet ist, beispielsweise in einem Computersystem der Klient-Systeme.
  • 3 ist ein Blockdiagramm, das ein Dienstanwendungsprogramm eines Servers, das CGI-BIN-Programm und den Sicherheitsserver darstellt, die in einem computerlesbaren Medium angeordnet sind, beispielsweise in einem Computersystem der Serversysteme.
  • 4 ist ein Blockdiagramm, das den Prozess für Klientbrowser und die Serveranwendung des Servers, das CGI-BIN-Programm und die Sicherheitsserverprozesse darstellt, wie es in 2 und 3 gezeigt ist.
  • 5 ist ein Flussdiagramm des Prozesses für den Klientbrowser der vorliegenden Erfindung, wie es in 4 gezeigt ist.
  • 6 ist ein Flussdiagramm des Prozesses für die Serveranwendung des Servers der vorliegenden Erfindung, wie es in 4 gezeigt ist.
  • 7 ist ein Flussdiagramm des Prozesses für das Sicherheitsserverprogramm der vorliegenden Erfindung, wie es in 4 gezeigt ist.
  • 8 ist ein Flussdiagramm des Prozesses für den CGI-BIN-Programmprozess der vorliegenden Erfindung, wie es in 4 gezeigt ist.
  • Detaillierte Beschreibung des bevorzugten Ausführungsbeispiels
  • Die vorliegende Erfindung wird nun mit besonderer Bezugnahme auf die Zeichnungen näher beschrieben. Obwohl die Erfin dung in Verbindung mit diesen Zeichnungen beschrieben wird, gibt es keine Absicht, dieselbe auf das oder die hierin offenbarten Ausführungsbeispiele zu begrenzen. Im Gegenteil, die Absicht ist es, alle Alternativen, Modifikationen und Äquivalente abzudecken, die in der Offenbarung enthalten sind, wie sie durch die angehängten Ansprüche definiert ist.
  • Mit Bezugnahme auf die Zeichnungen ist 1 ein Blockdiagramm von nur einer Systemkonfiguration, die die Flexibilität, Erweiterbarkeit und Plattformunabhängigkeit der vorliegenden Erfindung darstellt. Obwohl die Systemkonfiguration viele Formen annehmen könnte, stellt das Diagramm von 1 eine Mehrzahl von unterschiedlichen Workstationen 12, 14 und 16 dar, die direkt mit einem Netzwerk verbunden sind, beispielsweise, aber nicht begrenzt auf, einem LAN 18. Zusätzliche Workstationen 21, 22 können gleichartig entfernt angeordnet sein und in Kommunikation mit dem Netzwerk 18 sein, durch eine Einwähl- oder andere Verbindung 24. Jede der Workstationen in 1 ist einzeln dargestellt, um zu betonen, dass Workstationen eine unterschiedliche Hardware-Plattform umfassen können.
  • Wie es gut bekannt ist, sind Browser-Anwendungen für eine Vielzahl von Hardware-Plattformen vorgesehen und ohne weiteres verfügbar. Browser sind üblicherweise bekannt für ihren Nutzen zum Zugreifen auf Informationen über das Internet 32. Wie es vorher erwähnt wurde, ist ein Browser eine Vorrichtung oder eine Plattform, die es einem Benutzer ermöglicht, eine Vielzahl von Dienstsammlungen zu betrachten. Der Browser gewinnt Informationen von einem Web-Server 31 oder Netzwerk-Server 26 wieder, unter Verwendung von HTTP, interpretiert dann HTML-Code, formatiert und zeigt das interpretierte Ergebnis auf einer Workstationanzeige an.
  • Zusätzliche Workstationen 33 und 34 können gleichartig angeordnet sein und in Kommunikation sein mit den Web- Servern 31, für einen Zugriff auf Webseiten auf dem lokalen Server und dem Internet. Workstationen 33 und 34 kommunizieren mit dem Web-Server 31 auf einem LAN-Netzwerk 35. Die Netzwerke 18 und 35 können beispielsweise Ethernet-Typ-Netzwerke sein, auch bekannt als 10 BASE 2, 10 BAS 5, 10 BSAF, 10 BAST, BASE BAN network, CO-EX cable, und dergleichen.
  • Wie es in 2 dargestellt ist, umfassen Klient-Systeme heutzutage allgemein nur ein Browser-Programm 100 (z. B. Netscape, Internet-Explorer oder ein anderes Browser-Programm) für die Verwendung beim Zugreifen auf Positionen auf einem Netzwerk 11. Diese Browser-Programme 100 befinden sich in einem Computerspeicher 51 und greifen auf ein Kommunikationseinrichtungsmodem 47 zu, um den Benutzer zu anderen Ressourcen zu bringen, die mit dem Netzwerk 11 verbunden sind. Um eine Ressource zu finden, sollte der Benutzer die Netzwerkposition der Ressource kennen, die durch einen Netzwerkpositionsidentifizierer oder URL (URL = Uniform Resource Locator) bezeichnet ist. Diese Identifizierer sind häufig kryptisch und folgen sehr komplexen Schemata und Formaten in ihren Benennungskonventionen.
  • Systeme identifizieren heutzutage diese Ressourcen, greifen auf dieselben zu und verarbeiten, dieselben, die durch einen Benutzer gewünscht werden, durch Verwenden des Prozessors 41, der Speichervorrichtung 42 und des Speichers 51 mit einem Betriebssystem 52 und einem Fensterverwalter 53. Der Prozessor nimmt Daten von dem Speicher 51 und der Speicherung 42 über den Bus 43 an. Anordnungen von dem Benutzer können signalisiert werden durch Verwenden der Eingabegeräte Maus 44 und Tastatur 45. Die Aktionseingabe und Ergebnisausgabe werden auf dem Anzeigeanschluss 46 angezeigt.
  • Das erste Ausführungsbeispiel der vorliegenden Erfindung umfasst das Browser-Programm 100. Das Browser-Programm 100 ist die Software, die mit dem Server interagiert, um die erforderlichen Daten und erforderliche Funktionalität zu erhalten, die durch den Klient-Benutzer angefordert werden. Das Klientbrowser-Programm 100 wird hierin nachfolgend mit Bezugnahme auf 4 und 5 näher beschrieben.
  • In 3 ist die Architektur des Serversystems 26 und 31 dargestellt. Der Hauptunterschied zwischen den Servern 31 und 26 und den Klienten 12, 16, 21, 22, 33 und 34, die in 1 dargestellt sind, ist, dass die Klient-Systeme eine Schnittstelle bilden mit dem Benutzer und die Funktionalität anfordern durch das Browser-Programm 100, während die Server 26 und 31 die Dienste liefern, die durch das Klient-System angefordert werden, unter Verwendung des Serveranwendungsprogramms 120, des Sicherheitsservers 140 und des CGI-BIN-Programms 160.
  • Ansonsten sind die Funktionalität des Prozessors 61, der Speicherung 62, der Maus 64, der Tastatur 65, der Anzeige 66 und des Modems 67 im Wesentlichen gleich wie entsprechende Elemente von 2, die oben beschrieben sind. Wie es in der Technik bekannt ist, können sich die Klient-Systeme 12, 14, 16, 21, 22, 33 und 34 und die Dienst-Systeme 26 und 27 auf der gleichen physikalischen Maschine befinden.
  • Der Hauptunterschied bei dem Server ist, dass der Speicher 71, der mit dem Betriebssystem 72 und dem Fensterverwalter 37 interagiert, die Dienste liefert, die durch den Klient angefordert werden, unter Verwendung der Serveranwendung 120, des CGI-BIN-Programms 160 und des Sicherheitsservers 140. Die Serveranwendung 120, das CGI-BIN-Programm 160 und der Sicherheitsserver 140 werden hierin mit Bezugnahme auf 4 und 6, 7 und 8 näher definiert.
  • Mit Bezugnahme auf 4 kann das Klient-System 12, 16, 21, 22, 33 oder 34 Dienste von dem Web-Server 31 anfordern durch Verwenden des Klient-System-Browser-Programms 100. Das Browser-Benutzer-Schnittstellenprogramm empfängt zuerst eine Anforderung von dem Benutzer und prüft, um sicherzustellen, dass der Benutzer befugt ist, auf eine bestimmte Funktion zuzugreifen.
  • Als Nächstes erzeugt der Web-Browser ein Token durch Verwenden jedes geeigneten Algorithmus und Generators. Bei dem bevorzugten Ausführungsbeispiel ist der Token keine fortlaufende Zahl, sondern ist in der Tat eine Zahl, die durch einen Zufallszahlgenerator erzeugt wird.
  • Der Klient-Benutzer-Schnittstellen-Browser verbindet mit dem Sicherheitsserver. Diese Verbindung kann beispielsweise durch Verwenden von Sockets erreicht werden. Die Klient-Benutzer-Schnittstelle 100 sendet das Token an den Sicherheitsserver 140 unter Verwendung der hergestellten Verbindung. Als Nächstes führt der Klient-Benutzer-Schnittstellen-Browser 100 einen Aufruf an die Dienstanwendung für einen Dienst durch, und sendet das Token an die Dienstanwendung als eines der Argumente für den angeforderten Dienst. Diese Dienstanforderung geht auf einer Netzwerkleitung zu dem Server 31 und wird durch die Serveranwendung 120 empfangen.
  • Die Serveranwendung 120 empfängt eine Dienstanforderung von der Klient-Benutzer-Schnittstelle 100. Als Nächstes findet die Serveranwendung 120 das aufgeforderte Programm und ruft das aufgeforderte Programm auf durch Aufrufen der CGI-BIN-Anwendung 160 unter Verwendung des Programmnamens und der –argumente.
  • Das CGI-BIN-Anwendungsprogramm 160 empfängt die Programmnamen-Ausführungsargumente. Vor dem Ausführen der angeforderten Subroutine, die den angeforderten Dienst liefert, richtet das CGI-BIN-Programm 160 ein Socket mit dem Sicherheitsserver 140 ein. Sobald das Socket mit dem Sicherheitsserver 140 eingerichtet ist, sendet das CGI-BIN-Anwendungsprogramm 160 eine Token-Verifizierungsanforderung an den Sicherheitsserver 140.
  • Der Sicherheitsserver 140 richtet auf die Initialisierung hin stellt eine Hör-Socket ein. Der Sicherheitsserver 140 wartet, um ein Token von der Klient-Benutzer-Schnittstelle 100 zu empfangen, auf dem Socket, das auf der Verbindung eingerichtet wurde, die erzeugt wurde, wenn der Klient-Benutzer 100 verifiziert wurde. Sobald ein Token von der Klient-Benutzer-Schnittstelle empfangen wird, wird derselbe zu der Token-Verifizierungstabelle des Sicherheitsservers hinzugefügt. Der Sicherheitsserver 100 wartet, um eine Token-Verifizierungsanforderung von dem CGI-BIN-Programm 160 auf einem CGI-BIN-Token-Verifizierungs-Socket zu empfangen. Wenn die Anforderung, ein Token zu verifizieren, von dem CGI-BIN-Programm 160 empfangen wird, prüft der Sicherheitsserver 140 die Token-Verifizierungstabelle und sendet eine Mitteilung an das CGI-BIN-Programm 160 zurück, darüber, ob das Token von der Klient-Benutzer-Schnittstelle empfangen wurde oder nicht, und daher ein gültiges Token ist.
  • Wenn das CGI-BIN-Programm 160 die Token-Verifizierungsmitteilung von dem Sicherheitsserver 140 empfängt, prüft das CGI-BIN-Programm 160 die Autorisierung des Tokens. Falls die Token-Autorisierungsmitteilung, die von dem Sicherheitsserver 140 empfangen wird, zufriedenstellend ist, dann führt das CGI-SIN-Programm 160 die angeforderte Operation aus und schreibt die Ausgabe an ein stdout, das dann zu einer Serveranwendung 120 zurückgesendet wird. Falls die Token-Autorisierungsmitteilung, die von dem Sicherheitsserver 140 empfangen wird, nicht zufriedenstellend ist, dann wird eine Fehlermitteilung an die Serveranwendung 120 gesendet. Wenn die Ausgabe an die Serveranwendung 120 gesendet wird, dann endet das CGI-BIN-Programm 160 und hört daher auf, zu existieren.
  • Die Serveranwendung 120 empfängt die Ausgabe der CGI-BIN-Anwendung 160 und den Ende-Status des CGI-BIN-Anwendungsprogrammprozesses 160 und sendet die Ausgabe über ein Netzwerk zu dem Klientbrowser-Programm 100 zurück. Das Browser-Programm 100 sendet dann die Ausgabe zu dem Anwendungsprogramm zurück, das den Dienst in dem Klient-System 12 angefordert hat. Dieser Prozess wird hierin nachfolgend mit Bezugnahme auf 59 näher erklärt.
  • Der Prozess, der durch das Browser-Programm 100 in dem Klient-System 12 implementiert wird, ist in 5 dargestellt. Der erste Schritt des Browser-Programms 100 ist es, das Klientbrowser-Programm 100 bei Schritt 101 zu initialisieren. Das Browser-Programm 100 akzeptiert dann das Login des Benutzernamens und Passworts von dem Benutzer und erzeugt eine Verbindung zu dem Sicherheitsserver 140 bei Schritt 102. Das Browser-Programm 100 empfängt die Dienstanforderung von dem Benutzer bei Schritt 103.
  • Das Browser-Programm 100 erzeugt bei Schritt 104 ein Token. Bei dem bevorzugten Ausführungsbeispiel ist das Token eine Zufallszahl, die von einer Zufallszahlerzeugungsfunktion erzeugt wird. Es ist jedoch in der Technik bekannt, dass es andere Verfahren zum Erzeugen eines einmaligen Tokens gibt, die verwendet werden können.
  • Das Benutzer-Browser-Programm 100 sendet dann das Token, das in Schritt 104 erzeugt wurde, bei Schritt 105 an den Sicherheitsserver 140. Das Browser-Programm 100 empfängt die Dienstanforderung von dem Benutzer bei Schritt 103. Das Browser-Programm 100 verbindet mit der Serveranwendung 120 bei Schritt 106. Das Browser-Programm 100 macht einen Aufruf zu der Serveranwendung 120 und sendet das Token als Argumentdaten bei Schritt 107 an die Serveranwendung 120. Das Benutzer-Browser-Programm 100 wird dann ausgesetzt, bis zu dem Zurücksenden der Daten bei Schritt 108.
  • Wenn Daten zu der Klient-Benutzer-Schnittstelle zurückgesendet werden, ist das Browser-Programm 100 bei Schritt 88 nicht ausgesetzt, und das Browser-Programm 100 zeigt die Daten, die von der Serveranwendung 120 empfangen wurden, dem Benutzer bei Schritt 109 an. Der Klient-Benutzer-Schnittstellen-Browser 100 kehrt dann zu Schritt 103 zurück und wartet auf die nächste Dienstanforderung von dem Benutzer.
  • In 6 ist das Flussdiagramm der Architektur und des Prozesses dargestellt, der durch die Serveranwendung 120 implementiert ist. Die Serveranwendung 120 wird bei Schritt 121 initialisiert. Die Serveranwendung 120 wartet, um bei Schritt 122 eine Klient-Dienstanforderung zu empfangen.
  • Wenn eine Klient-Anforderung bei Schritt 122 empfangen wird, bestimmt die Serveranwendung 120, welches Anwendungsprogramm 100 den Dienst liefern wird, der durch das Klient-System angefordert wird, und die Serveranwendung 120 verbindet mit der spezifizierten CGI-BIN-Anwendung 160 bei Schritt 123. Die Serveranwendung 120 ruft die spezifizierte CGI-BIN-Anwendung 160 mit den spezifizierten Argumenten auf, wovon eine das Token ist, und sendet die notwendigen Daten bei Schritt 124. Der Prozess der Serveranwendung 120 wird bei Schritt 125 ausgesetzt, bis Daten von der spezifizierten CGI-BIN-Anwendung 160 empfangen werden.
  • Wenn die Ausgabe von der spezifizierten CGI-BIN-Anwendung 160 empfangen wird, empfängt die Serveranwendung 120 die Ausgabe bei Schritt 126. Die Serveranwendung 120 schreibt dann die Ausgabe, die von der CGI-BIN-Anwendung 160 empfangen wird, und sendet diese Ausgabe zurück zu dem Klientanforderungsdienst bei Schritt 127. Die Serveranwendung 120 verlässt dann diese Sitzung, kehrt in einer Schleife zurück zu Schritt 122 und setzt sich selber aus, bis eine neue Anforderung empfangen wird.
  • Mit Bezug auf 7 ist der Prozess des Sicherheitsservers 140 gezeigt. Zunächst wird der Sicherheitsserver 140 bei Schritt 141 initialisiert. Als Nächstes nimmt der Sicherheitsserver 140 eine Verbindung von einem Benutzer-Browser 100 an, durch Erhalten des Benutzer-Login-Namens und Pass worts bei Schritt 142. Der Sicherheitsserver 140 authentifiziert dann den Benutzernamen und das Passwort. Sobald die Authentifizierung des Login-Benutzernamens und Passworts abgeschlossen ist, setzt der Sicherheitsserver 140 aus, bis er ein Token von einer Klient-Benutzer-Schnittstelle auf der Socket-Verbindung bei Schritt 143 empfängt.
  • Der Sicherheitsserver 140 nimmt das Verbindungs-Socket von dem CGI-BIN-Programm 160 bei Schritt 144 an. Als Nächstes empfängt der Sicherheitsserver 140 eine Token-Verifizierungsanforderung von dem CGI-BIN-Programm 160 auf der CGI-BIN-Socket bei Schritt 145. Der Sicherheitsserver 140 verifiziert das Token, das von dem CGI-BIN-Programm auf der CGI-BIN-Socket empfangen wurde, mit dem Token, das von der Klient-Benutzer-Schnittstelle auf einem Socket bei Schritt 143 empfangen wurde.
  • Falls das Token, das bei Schritt 143 empfangen wurde, übereinstimmt mit dem Token, das bei Schritt 145 empfangen wurde, ist die Token-Verifizierung erfolgreich. Falls das Token, das von der Klient-Benutzer-Schnittstelle auf einem Socket bei Schritt 143 empfangen wurde, nicht mit dem Token übereinstimmt, das bei Schritt 145 von dem CGI-BIN-Programm 160 empfangen wurde, dann versagt die Token-Verifizierung. Der Sicherheitsserver 140 wartet eine vorbestimmte Zeitperiode, dass die Token-Verifizierungsanforderung von dem CGI-BIN-Programm 160 ankommt, vor der Zeitüberschreitung. Jede nachfolgende Token-Verifizierungsanforderung von dem CGI-BIN-Programm 160 auf einem Token, das die Zeit überschritten hat, führt zu einem Token-Verifizierungsausfall.
  • Das Ergebnis der Token-Verifizierungsaufgabe wird bei Schritt 147 an das CGI-BIN-Programm 160 gesendet, und der Sicherheitsserver 140 schließt das bei Schritt 144 erzeugte CGI-BIN-Socket. Der Sicherheitsserver kehrt dann zu Schritt 143 zurück, um zu warten, bis derselbe ein weiteres Token von einer Benutzer-Klient-Schnittstelle empfängt.
  • In 8 ist das Flussdiagramm für die CGI-BIN-Anwendung 160 dargestellt. Zunächst wird die CGI-BIN-Anwendung 160 bei Schritt 161 initialisiert. Die CGI-BIN-Anwendung 160 empfängt die Anforderung für den angeforderten Dienst mit dem Programmnamen und -argumenten, einschließlich des Tokens bei Schritt 163. Die CGI-BIN-Anwendung 160 richtet bei Schritt 163 ein Socket zu dem Sicherheitsserver 140 ein. Bei dem bevorzugten Ausführungsbeispiel ist ein TCP/IP-Socket eingerichtet.
  • Die CGI-BIN-Anwendung 160 sendet das Token, das von der Serveranwendung 120 empfangen wird, an den Sicherheitsserver 140 für eine Verifizierung bei Schritt 164. Das CGI-BIN-Programm 160 setzt das Verarbeiten aus, bis zur Rückkehr der Token-Verifizierungsmitteilung von dem Sicherheitsserver bei Schritt 165.
  • Sobald die Token-Verifizierungsmitteilung von dem Sicherheitsserver 140 empfangen wurde, wird bei Schritt 166 ein Test an der Token-Verifizierung durchgeführt. Falls das Token durch den Sicherheitsserver 140 verifiziert wurde, dann fließt der Prozess zu Schritt 167, bei dem das CGI-BIN-Programm 160 das angeforderte Dienstprogramm ausführt. Nachdem das angeforderte Dienstprogramm bei Schritt 167 ausgeführt wurde, empfängt das CGI-BIN-Programm 160 die stdout- und Standardfehler-Mitteilungen von dem angeforderten Dienstprogramm bei Schritt 168. Das CGI-BIN-Programm 160 sendet die stdout- und Standardfehler-Daten an die Serveranwendung 120 bei Schritt 169 und endet dann bei Schritt 172.
  • Falls die Token-Verifizierungsprüfung bei Schritt 166 dazu führt, dass das Token nicht verifiziert wird, dann sendet das CGI-BIN-Programm 160 eine Fehlermitteilung an die Serveranwendung 120, die anzeigt, dass die Token-Verifizierung mit dem Sicherheitsserver 140 ausgefallen ist. Die CGI-BIN-Anwendung 160 endet dann ihre Ausführung bei Schritt 172.
  • Bei einem alternativen Ausführungsbeispiel sendet das CGI-BIN-Programm 160 den Sicherheitspegel des Befehls, der ausgeführt wird, an den Sicherheitsserver 140, zusammen mit dem Token. Der Sicherheitsserver 160 verifiziert das Token und prüft auch den Sicherheitspegel des Klient-Benutzers 100. Um sicherzustellen, dass der Sicherheitsserver 140 den richtigen Klient-Benutzer 100 prüft, würde das Token aus der Zufallszahl + Torzahl der Verbindung der Benutzerschnittstelle mit dem Sicherheitsserver 140 bestehen. Der Sicherheitspegel des Klient-Benutzers 100 wird zu dem Zeitpunkt bestimmt, wenn der Sicherheitsserver 140 den Klient-Benutzer 100 auf der anfänglichen Verbindung zu dem Sicherheitsserver 140 authentifiziert.
  • Die vorhergehende Beschreibung wurde zu Darstellungs- und Beschreibungszwecken präsentiert. Dieselbe soll nicht erschöpfend sein oder die Erfindung auf die genau offenbarte Form begrenzen. Offensichtliche Modifikationen oder Variationen hinsichtlich der obigen Lehren sind möglich. Das hier diskutierte Ausführungsbeispiel oder die Ausführungsbeispiele wurden gewählt und beschrieben, um die beste Darstellung der Prinzipien der Erfindung und deren praktische Anwendung zu liefern, um es dadurch einem Durchschnittsfachmann auf diesem Gebiet zu ermöglichen, die Erfindung in verschiedenen Ausführungsbeispielen und mit verschiedenen Modifikationen zu verwenden, wie sie für die bestimmte in Betracht gezogene Verwendung geeignet sind. Alle solchen Modifikationen und Variationen liegen innerhalb des Schutzbereichs der Erfindung, wie er durch die angehängten Ansprüche bestimmt ist, wenn dieselben gemäß der Breite interpretiert werden, die ihnen tatsächlich und rechtlich zusteht.

Claims (8)

  1. Ein Verfahren zum Sichern von Web-Ressourcen in einem Netzwerksystem, wobei das Verfahren folgende Schritte umfasst: Erzeugen eines einmaligen Tokens, jedes Mal, wenn ein Klientbrowser (100) eine Dienstanforderung empfängt; Senden des einmaligen Tokens an einen Sicherheitsserver (140), jedes Mal, wenn der Klientbrowser auf die Dienstanforderung anspricht; Senden der Dienstanforderung und des einmaligen Tokens an einen Anwendungsserver (160) zum Erfüllen der Dienstanforderung, wobei der Anwendungsserver das einmalige Token an den Sicherheitsserver weiterleitet, um das einmalige Token zu verifizieren; Empfangen eines angeforderten Dienstes von dem Anwendungsserver, wenn eine Übereinstimmungsmitteilung von dem Sicherheitsserver dem Anwendungsserver anzeigt, dass das einmalige Token von dem Klientbrowser und das einmalige Token von dem Anwendungsserver übereinstimmt; und Empfangen einer Fehlermitteilung von dem Anwendungsserver, wenn eine vorbestimmte Auszeitperiode abläuft, zwischen dem Zeitpunkt, wenn das einmalige Token von dem Klientbrowser empfangen wird, und wenn das zweite einmalige Token von dem Anwendungsserver empfangen wird.
  2. Das Verfahren gemäß Anspruch 1, bei dem der Schritt des Erzeugens eines einmaligen Tokens ferner folgenden Schritt umfasst: Verwenden eines Zufallszahlengenerators zum Erzeugen des einmaligen Tokens.
  3. Das Verfahren gemäß Anspruch 2, bei dem der Schritt des Erzeugens des einmaligen Tokens ferner folgende Schritte umfasst: Bestimmen einer Tornummer für die Sicherheitsserververbindung mit dem Klientbrowser; und Hinzufügen der Tornummer zu dem einmaligen Token.
  4. Das Verfahren gemäß Anspruch 1, das ferner folgenden Schritt umfasst: Registrieren des Klientbrowsers mit dem Sicherheitsserver.
  5. Ein System zum Liefern von Sicherheit von Web-Ressourcen an eine Klientvorrichtung (12), das jedes Mal ein einmaliges Token erzeugt, wenn das Klientgerät eine Dienstanforderung erzeugt, und ein Anwendungsgerät (160) zum Liefern eines angeforderten Dienstes, wobei das Computersystem folgende Merkmale umfasst: eine Sicherheitsvorrichtung (140) zum Verifizieren des einmaligen Tokens, das durch die Klientvorrichtung mit der Dienstanforderung erzeugt wurde, wobei die Sicherheitsvorrichtung ferner folgende Merkmale umfasst: einen ersten Sicherheitsmechanismus, der das einmalige Token, das von der Klientvorrichtung empfangen wurde, und ein zweites einmaliges Token, das von der Anwendungsvorrichtung empfangen wurde, vergleicht; einen zweiten Sicherheitsmechanismus, der eine Übereinstimmungsmitteilung erzeugt, wenn das einmalige Token, das von der Klientvorrichtung empfangen wurde, und das zweite einmalige Token, das von der Anwendungsvorrichtung empfangen wurde, übereinstimmen, wobei die Übereinstimmungsmitteilung die Anwendungsvorrichtung autorisiert, den angeforderten Dienst an die Klientvorrichtung zu liefern, wenn die Übereinstimmungsnotiz empfangen wird; und einen dritten Sicherheitsmechanismus, der eine Nicht-Übereinstimmungsmitteilung erzeugt, wenn eine vorbestimmte Auszeitperiode abläuft, zwischen dem Zeitpunkt, wenn das einmalige Token von der Klientvorrichtung empfangen wird, und wenn das zweite einmalige Token von der Anwendungsvorrichtung empfangen wird, wobei die Nicht-Übereinstimmungsmitteilung die Anwendungsvorrichtung daran hindert, den angeforderten Dienst an die Klientvorrichtung zu liefern, wenn die Nicht-Übereinstimmungsmitteilung empfangen wird.
  6. Das System gemäß Anspruch 5, bei dem der dritte Sicherheitsmechanismus die Nicht-Übereinstimmungsmitteilung erzeugt, wenn das einmaligen Token, das von dem Klientbrowser empfangen wurde, und das zweite einmalige Token, das von dem Anwendungsserver empfangen wurde, nicht übereinstimmen.
  7. Das System gemäß Anspruch 5, das ferner folgende Merkmale umfasst: einen vierten Sicherheitsmechanismus zum Empfangen des einmaligen Tokens von der Klientbrowservorrichtung; und einen fünften Sicherheitsmechanismus zum Empfangen des zweiten einmaligen Tokens von der Anwendungsvorrichtung.
  8. Das Sicherheitssystem gemäß Anspruch 5, das ferner folgendes Merkmal umfasst: einen vierten Sicherheitsmechanismus zum Senden der Mitteilung, die erzeugt wurde, an den Anwendungsserver, um anzuzeigen, ob die Dienstanforderung verifiziert ist.
DE69933329T 1998-04-15 1999-04-06 Vorrichtung und Verfahren für sichere übertragung von Dokumenten die von einem Webmittel gesendet werden Expired - Lifetime DE69933329T2 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60875 1998-04-15
US09/060,875 US6253325B1 (en) 1998-04-15 1998-04-15 Apparatus and method for securing documents posted from a web resource

Publications (2)

Publication Number Publication Date
DE69933329D1 DE69933329D1 (de) 2006-11-09
DE69933329T2 true DE69933329T2 (de) 2007-05-24

Family

ID=22032291

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69933329T Expired - Lifetime DE69933329T2 (de) 1998-04-15 1999-04-06 Vorrichtung und Verfahren für sichere übertragung von Dokumenten die von einem Webmittel gesendet werden

Country Status (4)

Country Link
US (1) US6253325B1 (de)
EP (1) EP0952717B1 (de)
JP (1) JP3754230B2 (de)
DE (1) DE69933329T2 (de)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529952B1 (en) * 1999-04-02 2003-03-04 Nielsen Media Research, Inc. Method and system for the collection of cookies and other information from a panel
US7024394B1 (en) * 2000-07-07 2006-04-04 International Business Machines Corporation System and method for protecting user logoff from web business transactions
US7024552B1 (en) 2000-08-04 2006-04-04 Hewlett-Packard Development Company, L.P. Location authentication of requests to a web server system linked to a physical entity
US6912582B2 (en) * 2001-03-30 2005-06-28 Microsoft Corporation Service routing and web integration in a distributed multi-site user authentication system
US20020184369A1 (en) * 2001-05-31 2002-12-05 Parkinson Steven William Appointment scheme for redistributing service access
US20030174841A1 (en) * 2002-03-15 2003-09-18 Novell Inc. Methods, systems, and data structures for secure data content presentation
CA2379090A1 (en) * 2002-03-27 2003-09-27 Ibm Canada Limited-Ibm Canada Limitee Efficient server handling of multiple requests from a web browser
US7234158B1 (en) 2002-04-01 2007-06-19 Microsoft Corporation Separate client state object and user interface domains
KR100450402B1 (ko) * 2002-04-17 2004-09-30 한국전자통신연구원 컴퓨터 시스템에 있어서 보안속성을 갖는 토큰을 이용한접근 제어방법
US7356711B1 (en) 2002-05-30 2008-04-08 Microsoft Corporation Secure registration
US20040073629A1 (en) * 2002-10-10 2004-04-15 International Business Machines Corporation Method of accessing internet resources through a proxy with improved security
US7685631B1 (en) 2003-02-05 2010-03-23 Microsoft Corporation Authentication of a server by a client to prevent fraudulent user interfaces
US7636941B2 (en) * 2004-03-10 2009-12-22 Microsoft Corporation Cross-domain authentication
US7437551B2 (en) * 2004-04-02 2008-10-14 Microsoft Corporation Public key infrastructure scalability certificate revocation status validation
US7552476B2 (en) * 2004-06-25 2009-06-23 Canon Kabushiki Kaisha Security against replay attacks of messages
US7631302B2 (en) * 2004-11-30 2009-12-08 Microsoft Corporation System and method for validation of arguments provided to an application
US7908286B2 (en) * 2004-12-08 2011-03-15 Oracle International Corporation Techniques for providing XQuery access using web services
US8621201B2 (en) * 2005-06-29 2013-12-31 Telecom Italia S.P.A. Short authentication procedure in wireless data communications networks
US8028325B2 (en) * 2005-08-08 2011-09-27 AOL, Inc. Invocation of a third party's service
US7529795B2 (en) * 2006-03-20 2009-05-05 Stragent, Llc Message board aggregator
US7647351B2 (en) 2006-09-14 2010-01-12 Stragent, Llc Web scrape template generation
US8224298B2 (en) * 2007-02-05 2012-07-17 Boadin Technology, LLC Systems and methods for mobile media services utilizing a short form command structure
FR2918529A1 (fr) * 2007-07-02 2009-01-09 France Telecom Procede de communication d'un terminal avec un serveur
US8117242B1 (en) 2008-01-18 2012-02-14 Boadin Technology, LLC System, method, and computer program product for performing a search in conjunction with use of an online application
US8117225B1 (en) 2008-01-18 2012-02-14 Boadin Technology, LLC Drill-down system, method, and computer program product for focusing a search
US8078397B1 (en) 2008-08-22 2011-12-13 Boadin Technology, LLC System, method, and computer program product for social networking utilizing a vehicular assembly
US8265862B1 (en) 2008-08-22 2012-09-11 Boadin Technology, LLC System, method, and computer program product for communicating location-related information
US8131458B1 (en) 2008-08-22 2012-03-06 Boadin Technology, LLC System, method, and computer program product for instant messaging utilizing a vehicular assembly
US8073590B1 (en) 2008-08-22 2011-12-06 Boadin Technology, LLC System, method, and computer program product for utilizing a communication channel of a mobile device by a vehicular assembly
US8190692B1 (en) 2008-08-22 2012-05-29 Boadin Technology, LLC Location-based messaging system, method, and computer program product
US9182964B2 (en) 2009-07-31 2015-11-10 Hewlett-Packard Development Company, L.P. System and method for deploying software into a computing environment
US20130080635A1 (en) * 2011-09-23 2013-03-28 Loyal3 Holdings, Inc. Massively Scalable Electronic Gating System
US9407626B2 (en) * 2011-09-29 2016-08-02 Red Hat, Inc. Security token management service hosting in application server
US8996573B2 (en) 2011-10-10 2015-03-31 George Peter Kelesis Journaling system with segregated data access
CN112910857B (zh) * 2014-09-15 2023-07-11 佩里梅特雷克斯公司 用于验证安全的方法
US10659466B2 (en) 2016-03-22 2020-05-19 Microsoft Technology Licensing, Llc Secure resource-based policy
US10796015B2 (en) 2017-03-29 2020-10-06 Mybitchbook, Inc. Method and system for anonymous user data storage and controlled data access
CN115102744B (zh) * 2022-06-16 2024-06-14 京东科技信息技术有限公司 数据访问方法和装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5657388A (en) * 1993-05-25 1997-08-12 Security Dynamics Technologies, Inc. Method and apparatus for utilizing a token for resource access
US5706349A (en) * 1995-03-06 1998-01-06 International Business Machines Corporation Authenticating remote users in a distributed environment
JPH0981520A (ja) * 1995-09-08 1997-03-28 Kiyadeitsukusu:Kk ネットワーク上の認証に用いられる照合サーバ
AR003524A1 (es) * 1995-09-08 1998-08-05 Cyber Sign Japan Inc Un servidor de verificacion para ser utilizado en la autenticacion de redes de computadoras.
US5787175A (en) * 1995-10-23 1998-07-28 Novell, Inc. Method and apparatus for collaborative document control
JPH09146824A (ja) * 1995-11-27 1997-06-06 Nippon Telegr & Teleph Corp <Ntt> 対話管理型情報提供方法及び装置
US5850442A (en) * 1996-03-26 1998-12-15 Entegrity Solutions Corporation Secure world wide electronic commerce over an open network
US5740361A (en) * 1996-06-03 1998-04-14 Compuserve Incorporated System for remote pass-phrase authentication
IL128099A (en) * 1996-07-22 2004-05-12 Cyva Res Corp A tool for the security of personal information and its exchange
US5805803A (en) * 1997-05-13 1998-09-08 Digital Equipment Corporation Secure web tunnel
US6049877A (en) * 1997-07-16 2000-04-11 International Business Machines Corporation Systems, methods and computer program products for authorizing common gateway interface application requests
US5903878A (en) * 1997-08-20 1999-05-11 Talati; Kirit K. Method and apparatus for electronic commerce

Also Published As

Publication number Publication date
JP3754230B2 (ja) 2006-03-08
EP0952717B1 (de) 2006-09-27
JPH11338824A (ja) 1999-12-10
EP0952717A2 (de) 1999-10-27
EP0952717A3 (de) 2002-03-13
DE69933329D1 (de) 2006-11-09
US6253325B1 (en) 2001-06-26

Similar Documents

Publication Publication Date Title
DE69933329T2 (de) Vorrichtung und Verfahren für sichere übertragung von Dokumenten die von einem Webmittel gesendet werden
DE69619136T2 (de) Sichere durchgangsystemschnittstelle
DE102007033615B4 (de) Verfahren und Vorrichtung zum Umwandeln von Authentisierungs-Token zur Ermöglichung von Interaktionen zwischen Anwendungen
DE60027971T2 (de) Einmalige Anmeldung in einem Netzwerksystem, das mehrere gesondert steuerbare Ressourcen mit begrenztem Zugang enthält
DE60218069T2 (de) Bereitstellung von gekoppelten diensten in einer verteilten rechnerumgebung
DE69613948T2 (de) System und Verfahren zur Unterstützung verteilter Rechnermechanismen in einer Lokalbereichsnetz-Serverumgebung
DE60031340T2 (de) Geschützter Zugang durch Netzwerk-Firewalls
DE69832786T2 (de) Vorrichtung und verfahren zur identifizierung von klienten die an netzwer-sites zugreifen
DE69912317T2 (de) Vorrichtung und verfahren zur bestimmung einer programmnachbarschaft für einen kundenknoten in einem kundenbedienernetzwerk
DE602004012870T2 (de) Verfahren und system zur benutzerauthentifizierung in einer benutzer-anbieterumgebung
DE69801816T2 (de) Vorrichtung und verfahren zur aktualisierung und zur synchronisierung von informationen zwischen einem klient und einem server
DE60308692T2 (de) Verfahren und system für benutzerbestimmte authentifizierung und einmalige anmeldung in einer föderalisierten umgebung
DE69936384T2 (de) System und verfahren für die sicherheit eines kodes
DE60017319T2 (de) Verfahren und Vorrichtung zur Bereitstellung adaptierbarer Sicherheits- und Aufzeichnungsprotokolle in einer Servleteinrichtung
DE602005001613T2 (de) Einrichten eines sicheren kontexts zur übermittlung von nachrichten zwischen computersystemen
DE69905705T2 (de) Intelligentes sicherheitsverwaltungsverfahren und -system
DE60308489T2 (de) Anwendungsfensterschließung als Reaktion auf ein Ereignis in einem Parent-Fenster
DE102012213795A1 (de) Durch einen Computer implementiertes Verfahren, das es einer Web-Anwendung ermöglicht, mindestens eine native Funktion einer mobilen Einheit aufzurufen
DE112011102224B4 (de) Identitätsvermittlung zwischen Client- und Server-Anwendungen
DE19953055C2 (de) Vorrichtung und Verfahren zur geschützten Ausgabe eines elektronischen Dokuments über ein Datenübertragungsnetz
DE102008062984A1 (de) Prozess zur Authentifizierung eines Nutzers durch ein Zertifikat unter Verwendung eines Ausserband-Nachrichtenaustausches
DE69733351T2 (de) Verbesserung von internet-kommunikationssystemen
DE60303526T2 (de) Verfahren zur Softwareaufrüstung einer Vermittlungsanlage in einer zweischichtigen Netzumgebung
DE10352400A1 (de) Netzwerkdienst-Abfangvorrichtung
WO2004055744A1 (de) Kommunikation zwischen einem bediengerät, einem anbietermodul und einem kundenmodul

Legal Events

Date Code Title Description
8327 Change in the person/name/address of the patent owner

Owner name: HEWLETT-PACKARD DEVELOPMENT CO., L.P., HOUSTON, US

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

Representative=s name: SCHOPPE, ZIMMERMANN, STOECKELER & ZINKLER, 82049 PU

8364 No opposition during term of opposition