Zum Inhalt
Zum Navigation

AG Netzbasierte Informationssysteme - Bereich SecurityBeschreibung des Bildes
Druckvorschau Icon

Demonstrator XML-Sicherheitsdienste für BioCASE

Ursprünglich zu Testzwecken wurde für die XML-Sicherheitsdienste ein Beispielszenario entwickelt, welches alle wesentlichen Funktionalitäten der Sicherheitskomponenten abdeckt. Dieses Beispielszenario wurde zusammen mit den Softwarekomponenten weiterentwickelt und steht nun in Form eines Demonstrators online zur Verfügung.
Der Demonstrator besteht aus einem BioCASE Provider, der Daten aus mitgelieferten Testdatenbanken anbietet (training und pontaurus), und der zentralen Komponente der XML-Sicherheitsdienste, dem Policy Enforcement Point (PEP). Der PEP kann sowohl mit einem Web-Browser als auch mit dem Client-API benutzt werden. Zum Vergleich beider Varianten, ist der Provider auch ohne vorgeschaltete PEP erreichbar.

Zugriffskontrollpolitiken

Die vom PEP verwendeten rollenbasierten XACML-Zugriffskontrollpolitiken entsprechen denen des in der Dokumentation beschriebenen Beispielszenarios. Hierbei wurden die folgenden Rollen und Benutzer festgelegt:
Benutzer Rolle(n)
Nobody, nicht authentisierter Benutzer Guest
Client Client, TrustedClient
Expert Expert

Die nachfolgend beschrieben Rollen wurden anhand des RoleManagers durch Ausführen des in der Softwaredistribution enthaltenen Skripts provider-setup

Rolle Guest

Die Rolle Guest beschreibt die die standardmäßig festgelegte Rolle mit minimalen Zugriffsrechten. Sie hat lediglich Zugriff auf die im XML-Schema der ABCD-Formate V1.20 bzw. V2.06 als obligatorisch gekennzeichneten Elemente des Content-Dokuments:

ABCD V1.20

ABCD V2.06 Desweiteren darf die Rolle Guest maximal fünf Treffer bei einer Suche anfordern.

Rolle Client

Die Rolle Client darf auf alle Elemente zugreifen, bis auf die folgenden und deren Subelemente der ABCD Formate V1.20 bzw. V2.06:
ABCD V1.20
ABCD V2.06
Hinter diesen Elemente verbirgt sich der Zugriff auf Bilder eines Belegobjekt bzw. die Geokoordinaten dessen Auftretens in der Natur.
Desweiteren darf die Rolle Guest maximal 100 Treffer bei einer Suche anfordern.

Rolle TrustedClient

Die Rolle TrustedClient ist die systemimmanente Rolle, die zum vertrauensvollen Durchreichen von Zertifikaten authentisierter Benutzer berechtigt. Diese Rolle kann mit dem Client-API dazu verwendet werden, eine Art Single-Sign-On (SSO) Authentisierung zu realisieren.

Rolle Expert

Die Rolle Expert unterliegt keinerlei Einschränkungen. Sie darf auf alle Elemente zugreifen. Zusätzlich signiert der Provider die im folgenden aufgelisteten Elemente und deren Subelemente in allen zurückgelieferten ABCD Content-Dokumenten:
ABCD V1.20
ABCD V2.06

Authentisierung

Die Benutzerauthentisierung anhand von X.509-Benutzerzertifikaten. Die zugehörigen Schlüsselpaare müssen hierzu entweder im Web-Browser installiert oder entsprechend der Softwaredokumentation für das Client-API konfiguriert werden. Die folgenden PKCS#12-Dateien enthalten sowohl den privaten Schlüssel, als auch das Zertifikat des jeweiligen Benutzers. Das Passwort zur Freischaltung der privaten Schlüssel entspricht dem Namen des Benutzers.
Schlüsseldatei Passwort
Nobody nobody
Client client
Expert expert

Zur Verifikation der Zertifikatskette des Providerzertifikats können die Zertifikate des Providers sowie das Wurzelzertifikat der ausstellenden, fiktiven Certification Authority (CA)  und dessen Server Registration Authority (Server CA) im Web-Browser oder im Trust Store des Client-API installiert werden.

Installation von Zertifikaten

Eine Installationsanleitung zur Installation von Schlüsseln und Zertifikaten gibt es für folgende Browser:
Firefox
Internet Explorer
Es können übrigens auch alle Schlüsseldateien im Browser installiert werden. Bei der Installation sollte man jedoch darauf achten, im entsprechenden Dialog eine Auswahlmöglichkeit des zur Authentisierung verwendeten Schlüssels zu konfigurieren. Man kann dann sämtliche definierte Rollen mit dem Browser ausprobieren.

Zum Demonstrator

Nachdem die Schlüssel- und Zertifikatesdateien erfolgreich installiert wurden, kann es mit dem Ausprobieren des Demonstrators losgehen. Der Demonstrator ist unter folgenden URLs zu erreichen:
Demonstrator mit XML-Sicherheitsdiensten
Provider ohne XML-Sicherheitsdienste

Am einfachsten und interessantesten ist sicher die Verwendung des Query-Tools. Wenn Sie hier die Datenbank training aus, und geben auf der folgenden Seite bei Country das Suchmuster ger* ein.  Sie können anschliessend unter drei Einträgen auswählen, die sowohl Lokalitätsinforamationen als auch Bilder enthalten.  Diese werden Ihnen in der Rolle expert angezeigt, während diese in der Rolle client nicht angezeigt werden.

Hinweis
:
Haben Sie noch kein Zertifikat installiert, oder sich als Benutzer nobody authentifiziert, so muss auf der Seite Start>QueryTool>QueryForm unter Group result by der Eintrag UnitID selektiert werden, um Treffer angezeigt zu bekommen. Dies ist erforderlich, da die minimalen Zugriffsrechte, die in der Zugriffskontrollpolitik für die Rolle guest definiert sind nur Zugriff auf die UnitID eines Eintrags erlaubt.

Für Fortgeschrittene bietet der Punkt  Utilities » PyWrapper QueryForms die Möglichkeit eigene BioCASE-Requests zu formulieren. Weiterhin ist dies, neben der Verwendung des Client-API's, auch die einzige Möglichkeit als "Expert" signierte Antworten des Providers zu sehen.

Zum guten Schluss

Bei Problemen, entdeckten Fehlern, Fragen, Diskussionen oder für immer dankbar entgegengenommenes Lob, Anregungen zur Ausgestaltung des Beispielszenarios oder der XML-Sicherheitsdienste, erreichen Sie mich unter  folgender Email: suhrbier@inf.fu-berlin.de

Viel Spaß beim Experimentieren,
Lutz Suhrbier

News

XML-Sicherheitsdienste" : Demonstrator online.

21.08.2006
© 2006 Freie Universität Berlin | Feedback |
Stand: 24.08.2006