-
Die
vorliegende Erfindung betrifft ein Verfahren und System zum Halten
von vertraulichen Informationen auf der mobilen Vorrichtung in einem
Kommunikationssystem.
-
Der
Einsatz von mobiler Elektronik steigt sprunghaft an. Mobile Vorrichtungen,
wie beispielsweise Mobiltelefone und Personal Digital Assistants,
wandeln sich von relativ einfachen Vorrichtungen mit Einzelfunktion zu
komplexen Vorrichtungen mit Telefon- und PDA-Fähigkeiten. Mit diesen Verbesserungen
entsteht ein größerer Bedarf
an Konfigurierbarkeit und Wartung. Oft müssen Konfigurationseinstellungen
geändert
werden, die auf der mobilen Vorrichtung gespeichert sind. Beispielsweise
kann es sein, dass ein Dienstanbieter die Konfigurationseinstellungen
eines Teilnehmers in Reaktion auf eine Änderung im Dienst ändern muss,
oder eine Einstellung, die sich auf eine E-Mail-Anwendung auf der
Vorrichtung bezieht, kann eine Modifizierung erfordern.
-
Kürzliche
Verbesserungen in der Technologie ermöglichten es Anbietersystemen,
Konfigurationsänderungen
an eine mobile Vorrichtung weiterzugeben. Diese Verbesserungen haben
jedoch neue Sicherheitsprobleme aufgeworfen. Beispielsweise sind
Benutzer von mobilen Vorrichtungen über das Risiko besorgt, dass eine
böswillige
Entität
entfernte Abfragen ausgeben und verschiedene schützwürdige Einstellungen herausfinden
könnte,
die auf ihren mobilen Vorrichtungen gespeichert sind, wie beispielsweise
Adressen von zuverlässigen
Proxy-Servern, Informationen zum Erstellen symmetrischer Verschlüsselungscodes
und Ähnliches. Oder
noch schlimmer, Hacker könnten
möglicherweise
persönliche
Informationen herausfinden, wie beispielsweise finanzielle oder
Kontaktinformationen, die auf der mobilen Vorrichtung gespeichert
sind. Bis jetzt hat sich dem Fachmann eine Lösung zu diesen Sicherheitsproblemen
entzogen.
-
WO
00/78085 betrifft drahtlose Einheiten, die in drahtlosen Kommunikationssystemen
verwendet werden, und betrifft insbesondere die Over-the-Air-Programmierung
dieser Arten von Einheiten durch einen Dienstanbieter.
-
Der
relevante Abschnitt von WO 00/78085 darüber, wie dies erreicht wird,
ist auf den Seiten 20 bis 28 zu finden.
-
Sobald
die drahtlose Einheit zum ersten Mal eingeschaltet wird, sendet
der Dienstanbieter einen Systembetreiber-Code (SOC) an ein numerisches
Zuweisungsmodul (NAM) der drahtlosen Einheit. Ab diesem Zeitpunkt
kann die drahtlose Einheit nur mit diesem bestimmten Dienstanbieter
kommunizieren.
-
In Übereinstimmung
mit WO 00/78085 können
die NAM-Parameter, und insbesondere die SOC-Parameter, später geändert werden,
um es der Mobileinheit zu gestatten, mit einem anderen Dienstanbieter
zu kommunizieren. Um eine nicht autorisierte Änderung zu verhindern, besitzt
die drahtlose Einheit einen Schlüssel,
der in der drahtlosen Einheit durch einen Identifikator (identifier)
generiert wird, vorzugsweise eine Seriennummer-Eingabe in einen Algorithmus. Diese
Prozedur wird in Verbindung mit 2 beschrieben.
-
Wenn
eine Änderung
des Dienstanbieters gewünscht
wird, generiert die drahtlose Einheit in Übereinstimmung mit 3 eine
Verifizierungsnummer mittels eines Algorithmus 34, in den
ein gespeicherter Schlüssel 28 und
andere Parameter 32 der drahtlosen Einheit eingegeben werden.
Die daraus resultierende Test-Verifizierungsnummer kann dann mit
einer Verifizierungsnummer verglichen werden, die von dem neuen Dienstanbieter
empfangen wird. Die von dem Dienstanbieter empfangene Verifizierungsnummer
wird auf die gleiche Weise durch den Dienstanbieter generiert.
-
Offensichtlich
besteht der Vorteil dieser Prozedur darin, dass der Dienstanbieter
keinerlei Informationen von dem Hersteller der drahtlosen Einheit
empfangen oder Tabellen, korrelative Informationen usw. speichern
muss, um die entsprechende Verifizierungsnummer zu bestimmen (siehe
Seite 25, letzter Abschnitt). Stattdessen kann der Dienstanbieter
die Verifizierungsnummer generieren, indem er den Identifikator
der drahtlosen Einheit, den er von der drahtlosen Einheit empfängt, den
K-Algorithmus, die NAM-Parameter, die in die drahtlose Einheit programmiert
werden müssen,
und den A-Algorithmus verwendet.
-
US-A-6
161 139 betrifft Verfahren zum Kontrollieren des Zugriffs auf geschützte Informationsressourcen
in einer Netzwerkumgebung. Benutzer des Systems können mit
bestimmten Rollen verknüpft
werden, die ein Privileg einschließen, das den Zugriff auf Ressourcen
genehmigt, die mit den bestimmten Rollen verknüpft sind (siehe Spalte 2, Zeilen
8 bis 19). Ein Zugriff durch den jeweiligen Benutzer wird nur gestattet,
wenn das Privileg und damit die Zugriffsberechtigung beim Benutzer
mit einer Rolle übereinstimmt,
die der jeweiligen Ressource zugewiesen ist (siehe Spalte 5, Zeilen
22 bis 32).
-
In Übereinstimmung
mit Spalte 14, Zeile 61 bis Spalte 15, Zeile 22 von US-A-6 161 139
sieht das vorgeschlagene System spezielle Arten von Rollen vor,
so genannte Admin-Rollen.
Admin-Rollen sind berechtigt, Server-Konfigurationsinformationen
zu modifizieren. Auf diese Weise weist die Admin-Rolle einem bestimmten Benutzer
ein Konfigurationsprivileg zu. Mittels eines Server-Konfigurationswerts
kann bestimmt werden, welche Verwaltungsfunktion von jeder Privileg-Ebene
ausgeführt
werden kann.
-
Es
ist die Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren
und System zum Halten von Konfigurationsinformationen auf der mobilen
Vorrichtung bereitzustellen.
-
Diese
Aufgabe wird gelöst
durch den Gegenstand der Ansprüche
1, 7 und 12. Bevorzugte Ausführungsformen
sind der Gegenstand der Nebenansprüche.
-
Kurz
beschrieben umfasst die vorliegende Erfindung Mechanismen zum Zuweisen
von Sicherheits-Berechtigungsnachweisen zu bestimmten Komponenten
in einer mobilen Vorrichtung und zum Sicherstellen, dass nur Konfigurationsnachrichten
mit ausreichendem Zugriffsprivileg für diese Komponenten der Zugriff
auf Basis der Sicherheits-Berechtigungsnachweise gestattet wird.
Die Sicherheits-Berechtigungsnachweise oder "Rollen" beschreiben, welche Einstellungen eine
bestimmte Konfigurationsnachricht zu modifizieren oder abzufragen
berechtigt ist. Der Zugriff ist nicht gestattet auf Einstellungen,
für die
eine Nachricht nicht über entsprechende
Sicherheits-Berechtigungsnachweise verfügt.
-
Unter
einem Gesichtspunkt ist ein Identifikator vorgesehen für jede von
einer Vielzahl von Nachrichtenquellen, die Konfigurationsnachrichten
an die mobile Vorrichtung senden können. Die Identifikatoren sind mit
bestimmten Sicherheitsrollen verknüpft, die bestimmte Einstellungen
oder Gruppen von Einstellungen definieren, die für die Übertragung zugänglich sind.
Beispielsweise kann einer SMS-Nachricht, die über eine SMS-Übertragung (SMS transport)
empfangen wird, eine Sicherheitsrolle zugewiesen wer den, die den
Zugriff auf SMS-bezogene Einstellungen gestattet, den Zugriff auf
Nicht-SMS-bezogene
Einstellungen aber nicht gestattet. Sobald eine Nachricht durch
eine bestimmte Übertragung
empfangen worden ist, (und eventuell nach einer Authentisierung,
sofern durchgeführt),
wird diese Nachricht mit der Sicherheitsrolle des bestimmten Absenders
markiert. Die Nachricht wird dann an ein Konfigurations-Bedienprogramm
zur Verarbeitung übergeben.
Während
der Verarbeitung bestimmt der Konfigurations-Manager, welche Einstellungen
durch die Nachricht beeinflusst werden und vergleicht die Sicherheitsrolle
der Nachricht mit einer Sicherheitsrolle, die mit den beeinflussten
Konfigurationseinstellungen verknüpft ist. Wenn die Sicherheitsrolle
der Nachricht den Zugriff auf die Konfigurationseinstellungen gestattet,
(wie durch die Sicherheitsrolle der Einstellungen beschrieben),
führt der
Konfigurations-Manager den angeforderten Vorgang an den Konfigurationseinstellungen
aus. Andernfalls, (z.B. wenn die Nachricht kein Sicherheitsprivileg
zum Zugreifen auf die Einstellungen besitzt), weist der Konfigurations-Manager
die Transaktion zurück.
Der Konfigurations-Manager kann die Transaktion auch zurücksetzen
(rollback), indem er alle geänderten
Einstellungen auf ihre vorherigen Werte zurückstellt.
-
Unter
einem anderen Gesichtspunkt sieht die Erfindung Sicherheits-Richtlinien
(security policies) vor, die gewisse Konfigurationseinstellungen
definieren, die nur durch eine Entität geändert werden können, die eine
ausreichende Zugriffsprivileg-Ebene besitzt. Die Sicherheits-Richtlinien
können
gewisse sicherheitsbezogene Einstellungen definieren, welche die
Art und Weise steuern, in der das Sicherheitssystem arbeitet. Eine Konfigurationsnachricht
mit der Absicht, diese Einstellungen abzufragen oder zu modifizieren,
muss einer gewissen Sicherheitsprivileg-Ebene entsprechen. Beispielsweise
können
Einstellungen, die einen Sicherheitsmodul-Abschnitt des untergeordneten
Sicherheitssystems beeinflussen können, es erfordern, dass eine
Konfigurationsnachricht Verwalter-Privilegien besitzen muss, bevor
der Zugriff gestattet wird.
-
Vorteilhafterweise
stellt die vorliegende Erfindung ein zusätzliches Maß an Sicherheit für die Informationen
bereit, die auf mobilen Vorrichtungen gespeichert sind, wobei nach
wie vor Träger
und Bereitstellungsdienste mit Zugriff auf die Vorrichtung bereitgestellt
werden. Dieser Vorteil bedeutet für die Benutzer größere Beruhigung
und stellt einen verbesserten Dienst für mobile Vorrichtungen bereit.
-
KURZE BESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist
ein funktionelles Blockschaltbild einer drahtlosen Umgebung, in
der die vorliegende Erfindung implementiert werden kann.
-
2 ist
ein funktionelles Blockschaltbild einer veranschaulichenden mobilen
Vorrichtung, die verwendet werden kann, um eine Ausführungsform
der vorliegenden Erfindung zu implementieren.
-
3 ist
ein funktionelles Blockschaltbild von veranschaulichenden Software-Komponenten,
die eine Ausführungsform
der vorliegenden Erfindung implementieren.
-
4 ist
ein funktionelles Blockschaltbild, das gewisse Software-Komponenten,
die in der Anwendungsschicht der in 3 veranschaulichten
Ausführungsform
der Erfindung arbeiten, detaillierter darstellt.
-
5 ist
eine grafische Darstellung von Informationen in einer Konfigurationsnachricht,
die von dem untergeordneten Sicherheitssystem verwendet werden,
das die vorliegende Erfindung implementiert.
-
6 ist
eine grafische Darstellung von Informationen, die in einer Metadatenbank
gespeichert sind, welche die Sicherheitsrollen für jede der mehreren Komponenten
in dem untergeordneten Sicherheitssystem beschreibt, das die vorliegende
Erfindung implementiert.
-
7 ist
ein logisches Ablaufdiagramm, das allgemein einen Prozess zum Anwenden
von Sicherheitsrollen auf Konfigurationsnachrichten zusammenfasst,
der in einer mobilen Vorrichtung verwendet wird.
-
DETAILLIERTE BESCHREIBUNG
VON AUSFÜHRUNGSFORMEN
DER ERFINDUNG
-
Veranschaulichung der
drahtlosen Umgebung
-
1 ist
ein funktionelles Blockschaltbild einer drahtlosen Umgebung 100,
in der die vorliegende Erfindung implementiert werden kann. Hauptsächlich umfasst
die drahtlose Umgebung 100 eine mobile Vorrichtung 120,
die sich über
eine drahtlose Verbindung 131 in Kommunikation mit einem
Bereitstellungs-Server 130 befindet.
-
Der
Bereitstellungs-Server 130 umfasst einen Datenspeicher
(Server-Daten 111), der Informationen über die mobile Vorrichtung 120,
wie beispielsweise den Typ und das Modell der mobilen Vorrichtung,
alle installierten Anwendungen und ihre Versionen, Serviceplan-Informationen
und Ähnliches
enthält.
Der Bereitstellungs-Server 130 kann der Hauptpunkt der
Konnektivität
für die
mobile Vorrichtung 120 sein, wie beispielsweise ein öffentlicher
Funkdienst-Anbieter (z.B. ein Mobilfunkträger) oder ein privates drahtloses
Kommunikationsnetzwerk (z.B. ein Firmen-Kommunikationsnetzwerk).
Alternativ kann der Bereitstellungs-Server 130 ein fest
zugeordneter Bereitstellungs-Server sein, der in Zusammenwirken
mit dem Konnektivitäts-Hauptpunkt
arbeitet.
-
Obwohl
in 1 nur ein Bereitstellungs-Server 130 dargestellt
ist, kann es in dem System 100 mehrere Server geben, die
jeweils Bereitstellungsfunktionen auf der mobilen Vorrichtung 120 durchführen. Beispielsweise
kann ein Server, (z.B. der Bereitstellungs-Server 130),
für das
Führen
von vorrichtungsspezifischen Informationen über die mobile Vorrichtung 120 zuständig sein,
wie beispielsweise die Identifizierung- oder Telefonnummer der Vorrichtung.
Ein anderer Server kann vorhanden sein, wie beispielsweise ein Wartungs-Server
eines Software-Anbieters, der für
das Führen
und die Aktualisierung von installierter Software auf der mobilen
Vorrichtung 120 zuständig
ist. Außerdem
kann ein weiterer Server vorhanden sein, wie beispielsweise ein
Firmennetzwerk-Server, der für
das Führen
von Konfigurationsinformationen zuständig ist, die von einem System
verwendet werden, um die mobile Vorrichtung in Synchronisation mit
dem Firmennetzwerk zu halten. Kurz gefasst, es kann viele Quellen
zum Bereitstellen von Informationen geben, die versuchen, auf die mobile
Vorrichtung 120 zuzugreifen. Es ist diese Zugänglichkeit,
welche die oben erwähnten
Sicherheitsprobleme verursacht.
-
Die
mobile Vorrichtung 120 wird in den 2 und 3 im
Detail dargestellt und im Folgenden beschrieben. Kurz beschrieben
ist die mobile Vorrichtung 120 eine tragbare Rechnervorrichtung,
welche die Funktionalität
eines Mobiltelefons sowie die Funktionalität eines typischen Personal
Digital Assistant (PDA) umfasst. Die mobile Vorrichtung 120 kann
ein Betriebssystem, mehrere installierte Anwendungen, Kommunikations-Software und Ähnliches
enthalten. Die mobile Vorrichtung 120 umfasst auch einen
Datenspeicher (Mobiltelefondaten 121), der Informationen
enthält,
die von der mobilen Vorrichtung 120 im Betrieb verwendet
werden. Konfigurationseinstellungen für viele dieser Komponenten
sind in den Mobiltelefondaten 121 gespeichert.
-
Der
Bereitstellungs-Server 130 und die mobile Vorrichtung 120 kommunizieren
miteinander über
eine drahtlose Verbindung 131, die jedes Mittel für drahtlose
Kommunikationen sein kann, wie beispielsweise eine Funkfrequenzverbindung
oder Ähnliches.
Der Bereitstellungs-Server 130 sendet Konfigurationsnachrichten (z.B.
die Konfigurationsnachricht 122) über die drahtlose Verbindung 131 zu
der mobilen Vorrichtung 120. Die Konfigurationsnachricht
wird im Detail in 5 dargestellt und im Folgenden
beschrieben. Kurz beschrieben ist die Konfigurationsnachricht 122 ein
Auszeichnungssprachen-Dokument, wie beispielsweise ein eXtensible Markup
Language- (XML) Dokument, das Anweisungen zum Abfragen oder Ändern von
Konfigurationseinstellungen enthält,
die auf der mobilen Vorrichtung 120 gespeichert sind.
-
Mobile Rechnervorrichtung,
welche die vorliegende Erfindung implementiert
-
2 ist
ein funktionelles Blockschaltbild, das funktionelle Komponenten
einer Muster-Mobilvorrichtung 120 darstellt, die für den Einsatz
in einer Implementierung der vorliegenden Erfindung angepasst wurde. Die
mobile Vorrichtung 120 weist einen Prozessor 260,
einen Speicher 262, eine Anzeigevorrichtung 228 und ein
Tastenfeld 232 auf. Der Speicher 262 umfasst im
Allgemeinen einen flüchtigen
Speicher, (z.B. RAM), und einen nicht-flüchtigen Speicher, (z.B. ROM,
Flash-Speicher oder Ähnliches).
Die mobile Vorrichtung 120 umfasst ein Betriebssystem 264,
wie beispielsweise das Betriebssystem Windows CE von Microsoft Corporation oder
ein anderes derartiges Betriebssystem, das in dem Speicher 262 resident
ist und auf dem Prozessor 260 ausgeführt wird. Das Tastenfeld 232 kann
ein numerisches Drucktasten-Wahleingabefeld, (wie beispielsweise auf
einem typischen Telefon), oder eine Mehrtasten-Tastatur sein, (wie
beispielsweise eine herkömmliche
Tastatur). Die Anzeigevorrichtung 228 kann eine Flüssigkristallanzeige
oder jede andere Art von Anzeigevorrichtung sein, wie sie üblicherweise
in mobilen Rechnervorrichtungen verwendet wird. Die Anzeigevorrichtung 228 kann
berührungsempfindlich
sein und würde
dann als eine Eingabevorrichtung arbeiten.
-
Ein
oder mehrere Anwendungsprogramme 266 werden in den Speicher 262 geladen
und auf dem Betriebssystem 264 ausgeführt. Zu Beispielen für Anwendungsprogramme
zählen
Telefonwählprogramme, E-Mail-Programme,
Zeitplanungsprogramme, PIM- (persönliche Informationsverwaltung)
Programme, Textverarbeitungsprogramme, Tabellenkalkulationsprogramme,
Internet-Browserprogramme und so weiter. Die mobile Vorrichtung 120 umfasst
auch einen nicht-flüchtigen
Speicher 268 in dem Speicher 262. Der nicht-flüchtige Speicher 268 kann
verwendet werden, um Dauerinformationen zu speichern, die nicht
verloren gehen sollen, wenn die mobile Vorrichtung 120 abgeschaltet
wird. Die Anwendungen 266 können Informationen in dem Speicher 268 verwenden
und speichern, wie beispielsweise E-Mail oder andere von einer E-Mail-Anwendung verwendete
Nachrichten, von einer PIM verwendete Kontaktinformationen, von
einem Zeitplanungsprogramm verwendete Termininformationen, von einem
Textverarbeitungsprogramm verwendete Dokumente und Ähnliches.
Eine Synchronisationsanwendung ist ebenfalls auf der mobilen Vorrichtung
resident und ist so programmiert, dass sie mit einer entsprechenden
Synchronisationsanwendung, die auf einem Host-Rechner resident ist,
zusammenwirkt, um die Informationen, die in dem Speicher 268 gespeichert
sind, mit entsprechenden Informationen, die auf dem Host-Rechner
gespeichert sind, in Synchronisation zu halten.
-
Die
mobile Vorrichtung 120 weist eine Energieversorgung 270 auf,
die als eine oder mehrere Batterien implementiert werden kann. Die
Energieversorgung 270 kann des Weiteren eine externe Energiequelle
umfassen, wie beispielsweise einen Wechselstromadapter oder eine
netzbetriebene Ablage-Ladestation, welche die Batterien ergänzt oder
wieder auflädt.
-
Die
mobile Vorrichtung 120 wird des Weiteren mit zwei Arten
von externen Benachrichtigungsmechanismen gezeigt: eine Leuchtdiode 240 und
eine Audio-Schnittstelle 274. Diese Vorrichtungen können direkt
an die Energieversorgung 270 gekoppelt sein, so dass sie,
wenn sie aktiviert sind, für
eine durch den Benachrichtigungsmechanismus vorgegebene Dauer eingeschaltet
bleiben, auch wenn sich der Prozessor 260 und andere Komponenten
abschalten können,
um Batteriestrom zu sparen. Die Leuchtdiode 240 kann so
programmiert werden, dass sie auf unbegrenzte Zeit eingeschaltet
bleibt, bis der Benutzer Maßnahmen
ergreift, um den eingeschalteten Status der Vorrichtung anzuzeigen.
Die Audio-Schnittstelle 274 wird verwendet, um hörbare Signale
für den
Benutzer bereitzustellen und vom diesem hörbare Signale zu empfangen.
Beispielsweise kann die Audio-Schnittstelle 274 an einen
Lautsprecher gekoppelt werden, um eine hörbare Ausgabe bereitzustellen,
und an ein Mikrofon, um eine hörbare
Eingabe zu empfangen, um so ein Telefongespräche zu unterstützen.
-
Die
mobile Vorrichtung 120 umfasst des Weiteren eine Funkvorrichtung 272,
welche die Funktion des Sendens und Empfangens von Funkfrequenzkommunikationen
ausführt.
Die Funkvorrichtung 272 unterstützt die drahtlose Konnektivität zwischen
der mobilen Vorrichtung 120 und der Außenwelt über einen Kommunikationsträger oder
Dienstanbieter. Übertragungen
zu und von der Funkvorrichtung 272 werden unter der Steuerung
des Betriebssystems 264 durchgeführt. Mit anderen Worten, von
der Funkvorrichtung 272 empfangene Kommunikationen können über das
Betriebssystem 264 an die Anwendungsprogramme 266 verbreitet
werden und umgekehrt.
-
Die
Funkvorrichtung 272 gestattet es der mobilen Vorrichtung 120,
mit anderen Rechnervorrichtungen zu kommunizieren, beispielsweise über ein
Netzwerk. Die Funkvorrichtung 272 ist ein Beispiel für Kommunikationsmedien.
Kommunikationsmedien können
typischerweise durch computerlesbare Anweisungen, Datenstrukturen,
Programm-Module oder andere Daten in einem modulierten Datensignal
verkörpert
werden, wie beispielsweise einer Trägerwelle oder einem anderen
Transportmechanismus, und umfassen alle Informationsübergabemedien.
Der Begriff "moduliertes
Datensignal" bedeutet
ein Signal, bei dem eines oder mehrere seiner Merkmale so eingestellt
oder geändert
worden sind, dass Informationen in dem Signal verschlüsselt werden.
Beispielsweise, und nicht einschränkend, umfassen die Kommunikationsmedien
drahtgebundene Medien, wie beispielweise ein verkabeltes Netzwerk
oder einen direkt-verkabelten Anschluss, und drahtlose Medien, wie
beispielsweise akustische, HF-, Infrarot- und andere drahtlose Medien.
Der Begriff computerlesbare Medien, wie er hier verwendet wird,
umfasst sowohl Speichermedien als auch Kommunikationsmedien.
-
3 ist
ein funktionelles Blockschaltbild von veranschaulichenden Software-Komponenten
auf der mobilen Vorrichtung 120, welche die vorliegende
Erfindung implementieren. Diese Implementierung der Erfindung wird
in dem allgemeinen Kontext von durch den Computer ausführbaren
Anweisungen oder von Komponenten, wie beispielsweise Software-Modulen,
beschrieben, die auf einer mobilen Rechnervorrichtung ausgeführt werden.
Im Allgemeinen umfassen Programm-Module Routinen, Programme, Objekte,
Komponenten, Datenstrukturen und Ähnliches, um bestimmte Ablaufsteuerungen
durchzuführen
oder bestimmte abstrakte Datentypen zu implementieren. Obwohl hier
in Form von durch den Computer ausführbaren Anweisungen oder Komponenten
beschrieben, kann die Erfindung ebenfalls unter Verwendung von anderen
programmatischen Mechanismen als Software implementiert werden,
wie beispielsweise Firmware oder Sonderzweck-Logikschaltungen.
-
3 zeigt
die Funkvorrichtung 272, die Anwendungen 266 und
in größerem Detail
Abschnitte des Betriebssystems 264. Man wird verstehen,
obwohl mehrere Komponenten als Abschnitte des Betriebssystems 264 dargestellt
sind, dass es möglich
ist, die Funktionalität
dieser Komponenten außerhalb
des Betriebssystems 264 zu implementieren, wie beispielsweise
in der Anwendungsschicht 266. Die mehreren dargestellten Komponenten
des Betriebssystems 264 umfassen einen Push-Router 301,
Push-Quellen 305, eine Übertragungsschicht 309 und
eine Funkschnittstellenschicht 313. Im Wesentlichen arbeiten
die Funkvorrichtung 272 und die Funkschnittstellenschicht 313 zusammen,
um Nachrichten zu senden und zu empfangen, einschließlich Konfigurationsnachrichten.
Die Funkschnittstellenschicht 313 ist eine Software-Komponente,
die mit der Funkvorrichtungs-Hardware (Funkvorrichtung 272)
eine Schnittstelle bildet und eine gemeinsame Gruppe von Software-Funktionen
für die
anderen Komponenten des Betriebssystems 264 bereitstellt.
Auf diese Weise können
Entwickler eine Software erstellen, die jeden Typ von Funkvorrichtungs-Hardware
durch Zusammenwirken mit den gemeinsamen Schnittstellen, die durch
die Funkschnittstellenschicht 313 bereitgestellt werden,
statt direkt mit der Funkvorrichtung 272 nutzen kann. Diese
Funktionalität
vereinfacht die Aufgabe der Software-Entwicklung für den Einsatz
mit praktisch jeder Funkvorrichtungs-Hardware.
-
Die Übertragungsschicht 309 umfasst
eine oder mehrere Übertragungen,
die so konfiguriert sind, dass sie Nachrichten in einem oder mehreren
Kommunikationsprotokollen an die Funkschnittstellenschicht 313 übergeben
und von dieser empfangen. Beispielsweise ist die SMS-Übertragung 310 so
programmiert, dass sie Nachrichten empfängt und sendet, die unter Verwendung
des Simple Messaging Service- (SMS) Protokolls formatiert sind.
In ähnlicher
Weise ist die IP-Übertragung 311 so
programmiert, dass sie Nachrich ten empfängt und sendet, die unter Verwendung
des Internet-Protokolls (IP) formatiert sind. Es können auch
andere Übertragungen
verwendet werden, wie für
den Fachmann verständlich
ist, und die gezeigten Übertragungen
dienen nur zu veranschaulichenden Zwecken.
-
Die
Push-Quellen 305 sind Software-Komponenten, die so konfiguriert
sind, dass sie Nachrichten von einer entsprechenden Übertragung
empfangen und die Nachricht für
den Push-Router 301 verfügbar machen. In dieser Implementierung
der Erfindung können
Konfigurationsnachrichten über
jede beliebige oder mehrere Übertragungen übertragen
werden, wie beispielsweise die SMS-Übertragung 310, und
dem Push-Router 310 unter Verwendung von einer beliebigen
oder mehreren Push-Quellen übergeben
werden, wie beispielsweise der WSP-Push-Quelle 306.
-
Der
Push-Router 301 ist eine Software-Komponente, die so konfiguriert
ist, dass sie eingehende Nachrichten von jeder der Push-Quellen 305 empfängt und
die eingehenden Nachrichten an die entsprechende Anwendung weiterleitet,
die registriert ist, sie zu empfangen. Beispielsweise kann eine
E-Mail-Anwendung in der Anwendungsschicht 266 registriert
sein, Nachrichten zu empfangen, die über die SMS-Übertragung 310 übertragen
werden. Wenn daher Nachrichten über
die SMS-Übertragung 310 empfangen
werden, macht die WSP-Push-Quelle 306 diese für den Push-Router 301 verfügbar, der
sie wiederum an die registrierte E-Mail-Anwendung übergibt.
Eingehende Nachrichten, die Bereitstellungsinformationen enthalten,
werden von dem Push-Router 301 empfangen. Der Push-Router 301 enthält Prozeduren
zum Zerlegen und Analysieren der empfangenen Nachrichten in Bestandteile,
um eine Zielanwendung zu identifizieren. Des Weiteren ist der Push-Router 301 so
konfiguriert, dass er Nachrichten über die Übertragungen in Reaktion auf
Anwendungsanforderungen sendet.
-
Der
Push-Router 301 umfasst ein Sicherheitsmodul 315,
das für
die Durchführung
gewisser Sicherheitsvalidierungsfunktionen an eingehenden Nachrichten
zuständig
ist. Beispielsweise führt
das Sicherheitsmodul 315 eine Authentisierung und Entschlüsselung
an eingehenden Nachrichten durch, um die Quelle der Nachricht zu
identifizieren. Die Authentisierung und Entschlüsselung der Nachricht kann
basierend auf bestehenden Authentisierungsmodellen, wie beispielsweise
dem Public Key Infrastructure- (PKI) Modell durchgeführt werden.
Durch den Einsatz des Sicherheitsmoduls 315 ist der Push-Router 301 in
der Lage, die Quelle jeder Nachricht, die von der mobilen Vorrichtung 120 empfangen
wurde, genau zu identifizieren. Beispielsweise kann eine Konfigurationsnachricht 122 von
dem Bereitstellungs-Server 130 (1) an die
mobile Vorrichtung 120 über
die SMS-Übertragung 310 (3)
gesendet werden. Die Konfigurationsnachricht 122 enthält Informationen,
(z.B. einen gemeinsamen Schlüssel),
der den Bereitstellungs-Server 130 exakt als die Quelle der
Konfigurationsnachricht 122 identifiziert.
-
Das
Sicherheitsmodul 315 ist ebenfalls so konfiguriert, dass
es jeder eingehenden Nachricht eine Sicherheitsrolle auf Basis der
Quelle der Nachricht zuweist und eventuell einen Verschlüsselungs-Code,
der zum Entschlüsseln
des Nachrichteninhalts verwendet wird. In diesem Kontext sind Sicherheitsrollen
im Wesentlichen Sicherheits-Berechtigungsnachweise, die den Umfang
der Vertrauenswürdigkeit
(trust) definieren, die den von einer bestimmten Quelle empfangenden
Nachrichten zugewiesen wird. Die Zuweisungen von Sicherheitsrollen
zur Nachrichtenquelle werden in einer Metadatenbank von Informationen
gespeichert, die dem Sicherheitsmodul zur Verfügung stehen. Wie im Folgenden
ausführlicher
beschrieben wird, werden die an jede Konfigurationsnachricht angehängten Sicherheitsrollen
mit entsprechenden Sicherheitsrollen verglichen, die den Zielressourcen
zugewiesen sind (z.B. Konfigurationseinstellungen), um zu bestimmen,
ob die Quelle der Konfigurationsnachricht vertrauenswürdig (trusted)
ist, um auf die Zielressourcen zuzugreifen.
-
Definierte
Sicherheitsrollen
-
In
einer gegenwärtigen
Implementierung werden Sicherheitsrollen zu Nachrichten in Übereinstimmung
mit den folgenden Beschreibungen zugewiesen.
-
Träger vertrauenswürdiger Bereitstellungs-Server
(Trusted Provisioning Server) (TPS)
-
Diese
Sicherheitsrolle gestattet es, Einstellungen zu ändern, die zu dem TPS gehören. Diese
Sicherheitsrolle wird zu einer Änderungsanforderung
oder einer Abfrage zugewiesen, die von einem TPS stammen, der durch
ein Urlade-Bereitstellungsdokument (bootstrap provisioning document)
vertrauenswürdig
gemacht wurde. Der Träger-TPS
ist tatsächlich
Träger,
bis ein dem Träger
mit einem anderen Server gemeinsamer geheimer Schlüssel hergestellt
worden ist. Wenn ein gemeinsamer Schlüssel mit einem anderen Träger-Server hergestellt
worden ist, wird der Mechanismus, durch den der Träger-TPS zugewiesen wird,
deaktiviert.
-
Träger
-
Diese
Sicherheitsrolle gestattet es, Einstellungen zu ändern, die dem Träger gehören. Diese
Sicherheitsrolle wird einer Änderungsanforderung
oder einer Abfrage zugewiesen, die von einem Träger-Server stammen, der unter
Verwendung eines vereinbarten gemeinsamen geheimen Schlüssels identifiziert
wurde.
-
Verwalter
-
Diese
Sicherheitsrolle gestattet es, Einstellungen an der Vorrichtung
zu ändern,
die zu dem Besitzer der Vorrichtung gehören. Eine Vorrichtung kann
einer Firma/Organisation oder einer Einzelperson gehören, (d.h.
wenn der Besitzer keine Firma ist, dann ist der Benutzer Verwalter).
Die Verwalterrolle wird einem Benutzer oder einer Firma zum Zeitpunkt
des Kaufs oder Leasings der mobilen Vorrichtung zugewiesen. Der
Verwalter sollte in der Lage sein, den Träger zuzuweisen und zu ändern. Nur
der Verwalter kann einen neuen Verwalter zuweisen und das Privileg
aufgeben. Die Zuweisung der Verwalterrolle kann jeweils nur von
einer Entität zur
gleichen Zeit gehalten werden.
-
Von Benutzer
authentisiert
-
Alle Änderungsanforderungen
von der Bedienkonsole werden mit dieser Sicherheitsrolle ausgeführt. Einstellungen
können
durch den Benutzer geändert
werden, der diese Sicherheitsrolle zuerst verwendet. Dies ist auch
eine "Bucket"-Rolle, die einer
Anforderung zugewiesen wird, die von einem Server kommt, der einen vereinbarten
gemeinsamen geheimen Schlüssel
hat, aber nicht in die vorgenannten Rollen passt, (d.h. der kein
Träger
ist und nicht von einem Firmen-Bereitstellungs-Server ist).
-
Von Benutzer nicht authentisiert
-
Diese
Sicherheitsrolle wird Konfigurationsnachrichten zugewiesen, die
von einem Server kommen, der mit dem Client keinen gemeinsamen geheimen
Schlüssel
hergestellt hat, und die nicht vorzeichenbehaftet (signed) und nicht
verschlüsselt
sind. Diese Sicherheitsrolle stellt die eingeschränktesten
Sicherheits-Berechtigungsnachweise dar.
-
Unter
erneuter Bezugnahme auf 3 lässt sich zusammenfassen, dass
eine durch die Übertragungen 309 empfangene
Nachricht durch die Push-Quellen 305 an den Push-Router 301 übergeben
wird. Über das
Sicherheitsmodul 315 authentisiert der Push-Router 301 die
Nachricht und weist ihr eine Sicherheitsrolle auf Basis der Quelle
der Nachricht zu. Sobald der Nachricht eine Sicherheitsrolle zugewiesen
worden ist, wird sie an eine Anwendung 266 übergeben,
die registriert ist, die Nachricht zu empfangen. In dieser Implementierung
untersteht es der Zuständigkeit
der Anwendung, den Sicherheitsrollen Geltung zu verschaffen.
-
4 ist
ein funktionelles Blockschaltbild, das gewisse Software-Komponenten,
die in der Anwendungsschicht 266 arbeiten, in größerem Detail
veranschaulicht. In dieser Ausführungsform
sind Systemeinstellungen 405 aus Gründen der Einfachheit in der
Anwendungsschicht 266 gezeigt. Man wird verstehen, dass
die Einstellungen an vielen Stellen resident sein können, wie
beispielsweise in der Anwendungsschicht 266 und dem Betriebssystem 264.
Die mehrfachen Einstellungen können
gruppiert oder mit einer oder mehreren Komponenten verknüpft werden.
In dieser Implementierung wird jeder Einstellung oder Gruppe von
Einstellungen eine Sicherheitsrolle zugewiesen, genau wie jeder
Nachrichtenquelle eine Sicherheitsrolle zugewiesen wird. In diesem
Kontext identifiziert die Sicherheitsrolle im Wesentlichen die Ebene
oder Qualität
von Privilegien, die erforderlich sind, um die Einstellungen zu
modifizieren. Einstellungen können
auch zu mehrfachen Sicherheitsrollen zugeordnet werden. Eine Standard-Sicherheitsrolle
kann zu jeder neuen Einstellung zugewiesen werden, die durch einen
Benutzer, Träger,
Bereitstellungs-Server oder Ähnliches
modifiziert werden kann. Beispielsweise kann die Standard-Sicherheitsrolle
die Sicherheitsebene Von Benutzer authentisiert sein, und kann später durch
eine vertrauenswürdige
Quelle geändert
werden. Die Sicherheitsrollen-Zuweisungen für die Einstellungen werden
in der Metadatenbank 406 gespeichert.
-
Die
mehrfachen Einstellungen 405 sind jeweils mit einem Konfigurations-Dienstanbieter
(Configuration Service Provider)(CSP) 411–413 verknüpft. Jeder
CSP 411–413 ist
im Wesentlichen ein Sonderzweck-Software-Modul, das dafür zuständig ist,
eine bestimmte Gruppe von Einstellungen zu führen. Die CSPs 411–413 sind
vertrauenswürdige
Komponenten, welche die Einstellungen, für die sie zuständig sind,
abfragen, ändern oder
löschen
können.
Beispielsweise kann eine Anwendung, wie beispielsweise eine E-Mail-Anwendung, einen
fest zugeordneten CSP (z.B. CSP 411) zum Führen von
Einstellungen aufweisen, die mit der E-Mail-Anwendung verknüpft sind.
In dieser Implementierung wird jedem CSP 411–413 auch
eine Sicherheitsrolle zugewiesen, genau wie die Nachrichtenquellen
und die Einstellungen zugewiesene Sicherheitsrollen aufweisen. Wie
bei den Einstellungen kann eine Standard-Sicherheitsrolle vorhanden
sein, die jedem neuen CSP zugewiesen wird, die dann modifiziert
werden kann. Die CSP-Sicherheitsrollen können ebenfalls in der Metadatenbank 406 gespeichert
werden.
-
Eine
Anwendung, ein Konfigurations-Manager 401, wird registriert,
um Konfigurationsnachrichten für die
mobile Vorrichtung 120 abzuarbeiten. Wie vorher erwähnt, übergibt
der Push-Router 301 empfangene Nachrichten an eine oder
mehrere Anwendungen 266, die registriert sind, um sie zu
empfangen. In diesem Fall ist der Konfigurations-Manager 401 die Anwendung,
die zum Abarbeiten von Konfigurationsnachrichten registriert ist.
Wenn daher der Push-Router 301 eine Konfigurationsnachricht
empfängt, übergibt
der Push-Router 301 nach dem Authentisieren der Nachricht
und Anhängen
der entsprechenden Sicherheitsrolle die Nachricht an den Konfigurations-Manager 401.
-
Der
Konfigurations-Manager 401 ist programmiert, die eingehenden
Konfigurationsnachrichten zu analysieren, um die betroffenen Konfigurationseinstellungen
zu identifizieren. Beispielsweise kann eine Konfigurationsnachricht Änderungen
an Einstellungen enthalten, die sich auf eine E-Mail-Anwendung beziehen, während eine
andere Konfigurationsnachricht Änderungen
an Einstellungen enthalten kann, die sich auf die Adressen von vertrauenswürdigen Proxy-Servern
beziehen. Des Weiteren kann eine einzelne Konfigurationsnachricht Änderungen
enthalten, die mehrere verschiedene Gruppen von Einstellungen beeinflussen.
Der Konfigurations-Manager 401 ist programmiert, um aus
Informationen in der Konfigurationsnachricht zu bestimmen, welcher
eine bzw. welche mehreren CSPs für
das Führen
der betroffenen Einstellungen zuständig sind. Die Konfigurationsnachricht
kann den zuständigen
CSP 411–413 direkt
identifizieren oder kann nur die betroffenen Einstellungen identifizieren
und dem Konfigurations-Manager 410 die Aufgabe überlassen,
zu bestimmen, welcher CSP zuständig
ist.
-
Der
Konfigurations-Manager 401 ist auch programmiert, zu bestimmen,
ob die für
die betroffenen Einstellungen zuständigen CSPs eine Sicherheitsrolle
aufweisen, die der Sicherheitsrolle entsprechen, die an die Konfigurationsnachricht
angehängt
ist. Der Konfigurations-Manager 401 kann die Metadatenbank 406 abfragen,
um diese Bestimmung vorzunehmen. Wenn daher eine Konfigurationsnachricht
aufzeigt, dass ein bestimmter CSP zum Abarbeiten von Änderungen
an Einstellungen aufgerufen werden soll, überprüft der Konfigurations-Manager 401,
bevor die Konfigurationsnachricht an den CSP übergeben wird, dass der bestimmte CSP
und die Konfigurationsnachricht entsprechende Sicherheitsrollen
aufweisen. Als ein zusätzliches
Sicherheitsmaß überprüft auch
der bestimmte CSP, dass die Konfigurationsnachricht eine Sicherheitsrolle
aufweist, die den Sicherheitsrollen der betroffenen Einstellungen
entspricht. Wie der Konfigurations-Manager 401 kann der
CSP die Metadatenbank 406 abfragen, um die Sicherheitsrolle
zu bestimmen, die den betroffenen Einstellungen zugewiesen ist,
und diese Sicherheitsrolle mit derjenigen vergleichen, die an die
Konfigurationsnachricht angehängt
ist. Nur wenn die beiden sich in Übereinstimmung befinden, modifiziert
der CSP die Einstellungen tatsächlich.
-
Gewisse
der Einstellungen 405 können
als "Richtlinien"-Einstellungen 409 identifiziert
werden. Die Richtlinien-Einstellungen 409 sind besondere
Einstellungen, die eine besondere Funktionalität der mobilen Vorrichtung beschreiben
können,
wie beispielsweise das Verhalten des Sicherheitssystems selbst,
und die nur von einer in hohem Maße vertrauenswürdigen Quelle
modifiziert werden können,
wie beispielsweise einem Administrator. Alternativ könnten die
Richtlinien-Einstellungen angeben, dass sie nur lokal modifiziert
werden können
und nicht durch eine Konfigurationsnachricht, die über eine
drahtlose Kommunikation empfangen wurde. Die Richtlinien unterstützen einen
drahtlosen Operator oder Manager dabei, die mobile Vorrichtung effizienter
zu verwalten. Die Richtlinien stellen beispielsweise eine zuverlässige Möglichkeit
zum Einschränken
der mobilen Vorrichtung 120 auf gewisse anfängliche
Durchsuchungspunkte bereit, aktivieren oder deaktivieren die Einrichtung
von Trust-Beziehungen mit neuen Bereitstellungs-Servern, und erzwingen
Einschränkungen, die
für nicht-vertrauenswürdige CSPs
gelten. In einer tatsächlichen
Implementierung werden Sicherheits-Richtlinien in Übereinstimmung
mit den folgenden Beschreibungen definiert.
-
Sicherheitsmodul-Richtlinien
-
Diese
Richtlinien definieren das sicherheitsrelevante Verhalten in dem
Sicherheitsmodul 315. Die Sicherheitsmodul-Richtlinien,
die sich auf das Zuweisen von Rollen auswirken, umfassen das Deaktivieren
der Zuweisung der Träger-TPS-Rolle.
Die Richtlinien für
Ende-Ende-Push-Framework umfassen: Deaktivieren des Empfangens von
irgendwelchen IBP-Nachrichten; Einrichten einer Liste vertrauenswürdiger Server
und einer Liste nicht-vertrauenswürdiger Server
(nur eine Liste ist jeweils aktiviert); der vertrauenswürdige Server bedeutet,
dass die Vorrichtung IBP-Nachrichten von diesem Server annehmen
kann. Zusätzliche
Sicherheitsmodul-Richtlinien umfassen: Einrichten der Liste mit
Sicherheits-Algorithmen, welche die Vorrichtung annehmen darf; und
Einrichten einer Mindest-Schlüssellänge. Benutzerschnittstellen-bezogene
Richtlinien, die sich auf das Sicherheitsmodul auswirken, umfassen:
Einrichten der Anzahl von Wiederholungen, die der Benutzer den Authentisierungs-Code
während
der Authentisierungsprozedur eingeben darf.
-
Push-Router-Richtlinien
-
Durch
die Verwendung der Push-Router-Richtlinien kann der Träger/Manager
die gesamte OTA-Konfiguration oder nur bestimmte Push-Quellen deaktivieren
und daher nur eine bestimmte Art von OTA-Konfiguration und -Bereitstellung
unterstützen.
Die Push-Router-Richtlinien
stellen auch die Fähigkeit
bereit, einen bestimmten Übergabeweg
in Push-Quellen zu deaktivieren, die in der Lage sind, mehr als
einen Übergabeweg zu
unterstützen.
Beispielsweise kann die gesamte WDP-Push-Quelle deaktiviert werden,
oder es kann nur die Weiterleitung von WDP-Benachrichtigungen, die
vom WAP-Stapel über
UDP empfangen wurden, deaktiviert werden – wodurch die WDP-Benachrichtigungen über SMS
offen bleiben.
-
Das
Folgende ist eine Liste von unterstützten Richtlinien in einem
Push-Router.
- – Gesamte OTA-Konfiguration
und -Bereitstellung deaktivieren (deaktiviert alle OTA-Push-Quellen.
Urladen und Bereitstellung können
nur an Dienstzugangspunkten und durch physikalischen Zugriff auf
die Vorrichtung erfolgen)
- – WDP-Push-Quelle
deaktivieren
- – Weiterleitung
von WDP-Benachrichtigungen von WAP-Stapel über SMS deaktivieren
- – Weiterleitung
von WDP-Benachrichtigungen von WAP-Stapel über UDP deaktivieren
- – WSP-Push-Quelle
deaktivieren
- – Annehmen
von WSP-Push-Benachrichtigungen deaktivieren
- – Weiterleiten
zu nicht-vertrauenswürdigen
Client-Anwendungen deaktivieren
- – HTTP-Push-Quelle
deaktivieren
- – Push-Pull-Quelle
deaktivieren
- – Push-Quelle
für SIM-Datei
(SIM file push source) deaktivieren
- – Push-Datenstation
für lokale
Datei (Local File Push source) deaktivieren
- – Antwort-Generierung
deaktivieren durch Nicht-Weiterleiten der Antwort-Kopfdaten
- – Antwortdokumente über SMS
senden deaktivieren
- – Antwortdokumente
unter Verwendung von HTTP POST senden deaktivieren
- – Weiterleiten
von nicht authentisierten Nachrichten deaktivieren
-
Konfigurations-Manager-Richtlinien
-
Die
folgenden Richtlinien werden in einer tatsächlichen Implementierung der
Erfindung zum Beeinflussen des Konfigurations-Managers verwendet:
Benachrichtigungs-Richtlinien zum Aktivieren oder Deaktivieren einer
erfolgreichen Aktualisierungs-Benachrichtigung, so dass Benutzer
eine Nachricht in ihrem Eingangsordner empfangen oder nicht. Antwort-Richtlinien
zum Aktivieren oder Deaktivieren einer langen Antwort, oder zum Aktivieren
oder Deaktivieren des Hinzufügens
von Metadaten zu langen Antworten. Außerdem können CSP-Richtlinien die Instantiierung
von nicht-vertrauenswürdigen
CSPs aktivieren oder deaktivieren. Diese Richtlinien können global
für das
ganze System gelten und würden
sich somit auch auf alle CSPs auswirken.
-
Vom System
verwendete Musterdokumente
-
5 ist
eine grafische Darstellung dessen, wie eine Konfigurationsnachricht
aussehen kann. Wie vorher erwähnt,
ist die typische Konfigurationsnachricht 122 ein XML-Dokument, das Tags
enthält,
die Änderungen
an Einstellungen auf der mobilen Vorrichtungen definieren. Die Konfigurationsnachricht 122 kann
Kopfdaten-Informationen 510 enthalten, die eine bestimmte
Version des verwendeten Systems identifizieren, wie beispielsweise
eine Konfigurationsmanagement-Systemversion. Des Weiteren können die
Kopfdaten-Informationen 510 die Quelle der Konfigurationsnachricht
und die bestimmte verwendete Übertragung
(den Bereitstellungs-Server und die SMS-Übertragung in diesem Beispiel)
identifizieren. Die Konfigurationsnachricht 122 identifiziert
auch die speziellen Konfigurationsänderungen, die durch die Nachricht
vorgenommen werden. Die Beispiel-Konfigurationsnachricht 122 umfasst
eine Änderung
an "Einstellung
Eins" 512 und
eine Änderung
an "Einstellung
Zwei" 514 auf
der mobilen Vorrichtung.
-
Nachdem
die Konfigurationsnachricht 122 durch das Sicherheitsmodul 315 (3)
authentisiert worden ist, kann die zugewiesene Sicherheitsrolle
in die Nachricht aufgenommen werden. Die Beispiel-Konfigurationsnachricht 122 umfasst
eine Sicherheitsrolle 516 von "X",
das eine Zahl sein kann, die einer bestimmten Sicherheitsrolle entspricht.
Jede definierte Sicherheitsrolle kann durch eine Zahl dargestellt
werden. Der Push-Router
kann die oben definierten Sicherheitsrollen unter Verwendung der
folgenden Definitionen zu eingehenden Konfigurationsnachrichten
zuweisen:
-
-
6 ist
eine grafische Darstellung dessen, wie in der Metadatenbank 406 gespeicherte
Informationen aussehen können.
In dieser Implementierung gibt es drei Zuordnungen von Sicherheitsrollen
zu Komponenten. Zunächst
gibt es eine Zuordnung 601 für Sicherheitsrollen, die zu
jeder bekannten Quelle von Konfigurationsnachrichten zugewiesen
sind, wie beispielsweise der Bereitstellungs-Server 130 (1).
Es gibt eine weitere Zuordnung 603 von Sicherheitsrollen
für jeden
CSP, der im System sein kann. Und es gibt eine weitere Zuordnung 605 von
Sicherheitsrollen für
jede Einstellung oder Gruppe von Einstellungen, die im System sein können.
-
Veranschaulichender
Prozess zur Anwendung von Sicherheitsrollen
-
7 ist
ein logisches Ablaufdiagramm, das allgemein einen Prozess zur Anwendung
von Sicherheitsrollen auf Konfigurationsnachrichten zusammenfasst,
die in einer mobilen Vorrichtung verwendet werden. Obwohl sie als
ein einziges Ablaufdiagramm dargestellt werden, können Vorgänge, die
auf verschiedenen Stufen des Prozesses durchgeführt werden, von verschiedenen
Komponenten im System durchgeführt
werden. Beispielsweise können
unter Bezugnahme auf 7 die Vorgänge, die in den Blöcken innerhalb
des Felds 701 mit gestrichelten Linien durchgeführt werden,
durch den oben beschriebenen Push-Router 301 durchgeführt werden.
In ähnlicher
Weise können
die Vorgänge,
die in den Blöcken
innerhalb des Felds 708 mit gestrichelten Linien durchgeführt werden,
durch den Konfigurations-Manager 401 durchgeführt werden.
Und die Vorgänge,
die in den Blöcken
in dem Feld 716 mit gestrichelten Linien durchgeführt werden,
können
durch einen CSP 411–413 durchgeführt werden.
-
Zunächst wird
am Block 703 eine Konfigurationsnachricht empfangen. Die
Konfigurationsnachricht identifiziert ihre Quelle und gewisse Konfigurationstransaktionen,
die durchzuführen
sind. Am Block 705 wird eine Sicherheitsrolle zu der Nachricht
zugewiesen, die auf der Quelle der Nachricht basiert. Die Quelle
der Nachricht kann durch herkömmliche
Authentisierungstechniken bestimmt werden. Die der Nachricht zugewiesene
Sicherheitsrolle entspricht Sicherheits-Berechtigungsnachweisen,
die für
die Quelle der Nachricht vorab ausgewählt worden sind. Am Block 707 wird
die Nachricht (einschließlich
Sicherheitsrolle) an eine Anwendung übergeben, die zum Abarbeiten
der Konfigurationstransaktion registriert ist.
-
Am
Block 709 wird die Nachricht analysiert, um einen CSP zu
identifizieren, der für
die Durchführung der
angeforderten Konfigurationstransaktion zuständig ist. Am Block 711 wird
eine Überprüfung durchgeführt, um
zu bestimmen, ob die Sicherheitsrolle der Nachricht ausreichend
ist, um den identifizierten CSP aufzurufen. Wie erwähnt, weist
jeder CSP seine eigene Sicherheitsrolle auf. Wenn die Sicherheitsrolle
der Nachricht nicht ausreichend ist, schlägt die Transaktion am Block 714 fehl,
und die Konfigurationstransaktion wird durch Rückstellen aller geänderten
Einstellungen auf ihre vorherigen Werte zurückgesetzt. Wenn die Sicherheitsrolle
der Nachricht ausreichend ist, wird der zuständige CSP aufgerufen, und die
Konfigurationsnachricht wird am Block 715 übergeben.
Zum Optimieren der Leistung erfolgen das Abfragen und Zuordnen der
CSP-Rollenzuweisungen und der Nachrichten-Rollenzuweisungen, bevor
irgendeine Verarbeitung durch irgendeinen der CSPs erfolgt. Wenn
eine falsche Zuordnung zwischen den Rollenzuweisungen gefunden wird,
schlägt
die Transaktion fehl.
-
Am
Block 717 wird eine Überprüfung durchgeführt, um
zu bestimmen, ob die Sicherheitsrolle der Nachricht ausreichend
ist, um auf die betroffenen Einstellungen zuzugreifen. Wie erwähnt, weist
jede Einstellung oder Gruppe von Einstellungen ihre eigene Sicherheitsrolle
auf. Wenn die Sicherheitsrolle der Nachricht nicht ausreichend ist,
schlägt
die Transaktion am Block 174 fehl, und die Transaktion
wird zurückgesetzt.
Wenn die Sicherheitsrolle der Nachricht jedoch ausreichend ist,
führt der
CSP die angeforderte Konfigurationstransaktion am Block 721 aus.
Der Prozess endet am Block 723.