From dd45e938564249a5e6897bd92dd29808d8990868 Mon Sep 17 00:00:00 2001 From: rudolf Date: Fri, 24 Oct 2003 08:34:56 +0000 Subject: MOA-ID version 1.1 (initial) git-svn-id: https://joinup.ec.europa.eu/svn/moa-idspss/trunk@19 d688527b-c9ab-4aba-bd8d-4036d912da1d --- id.server/doc/moa_id/id-admin_2.htm | 623 ++++++++++++++++++++++++++++++++++++ 1 file changed, 623 insertions(+) create mode 100644 id.server/doc/moa_id/id-admin_2.htm (limited to 'id.server/doc/moa_id/id-admin_2.htm') diff --git a/id.server/doc/moa_id/id-admin_2.htm b/id.server/doc/moa_id/id-admin_2.htm new file mode 100644 index 000000000..b4e22a36b --- /dev/null +++ b/id.server/doc/moa_id/id-admin_2.htm @@ -0,0 +1,623 @@ + + + MOA ID-Administration + + + + + + + + + +
+ + +
+ Module für Online-Applikationen +
+
+  +
+
+Projekt moa  +
+
+ + + + + + +
+
MOA-ID

+ + +
+ Konfiguration
+ +
+ +

+ + +
+
Konfiguration von MOA ID v.1.1
+ +
+

Konfiguration von MOA ID v.1.1

+

+Die Konfiguration von MOA ID wird mittels einer XML-basierten Konfigurationsdatei, die dem Schema +MOA-ID-Configuration-1.1.xsd entspricht, durchgeführt. +

+Der Ort der Konfigurationsdatei wird im Abschnitt Deployment der Web-Applikation +in Tomcat beschrieben. +

+Die folgenden Abschnitte erläutern das Format der Konfigurationsdatei. +MOA-ID-Configuration.xml zeigt ein Beispiel +für eine umfassende Konfigurationsdatei. +

+Enthält die Konfigurationsdatei relative Pfadangaben, werden diese relativ zum Verzeichnis, in dem Tomcat gestartet wurde, interpretiert. + +
+

+ConnectionParameter
+Das Element ConnectionParameter enthält Parameter, die MOA-ID für den Aufbau von Verbindungen zu anderen Komponenten +benötigt. Dieses Element tritt mehrfach in der Konfigurationsdatei auf und wird daher vorab detailliert beschrieben. +

+Das Attribut URL enthält die URL der Komponente zu der die Verbindung aufgebaut werden soll. +Wird das Schema https verwendet, können die Kind-Elemente AcceptedServerCertificates +und ClientKeyStore angegeben werden. Wird das Schema http verwendet müssen keine Kind-Elemente +angegeben werden bzw. werden diese nicht ausgewertet. Andere Schemas werden nicht unterstützt. +

+Wird die Verbindung über TLS aufgebaut und erfordert der TLS-Server eine Client-Authentisierung +mittels Zertifikate, dann muss das Kind-Element ClientKeyStore spezifiziert werden, und es muss +eine URL enthalten, die einen PKCS#12-Keystore mittels URL-Schema 'file:' referenziert. +Diesem Keystore wird der private Schlüssel für die TLS-Client-Authentisierung entnommen. +Das Passwort zum Lesen des privaten Schlüssels wird im Attribut ClientKeyStore/@password konfiguriert.
+Aufgrund der Tatsache, dass starke Verschlüsselung eine Voraussetzung für MOA-ID darstellt, werden clientseitig nur die folgenden Cipher Suites unterstützt:
+

    +
  • SSL_RSA_WITH_RC4_128_SHA
  • +
  • SSL_RSA_WITH_RC4_128_MD5
  • +
  • SSL_RSA_WITH_3DES_EDE_CBC_SHA
  • +
+Im Kind-Element AcceptedServerCertificates kann ein Verzeichnisname angegeben werden, in dem die +akzeptierten Zertifikate der TLS-Verbindung hinterlegt sind. Dieses Verzeichnis wird mittels URL-Schema 'file:' referenziert. In diesem Verzeichnis werden nur Serverzertifikate +abgelegt. Fehlt dieser Parameter wird lediglich überprüft ob ein Zertifikatspfad zu den im Element <TrustedCACertificates> angegebenen Zertifikaten erstellt werden kann. Falls dies nicht möglich ist, kommt es zu einem Fehlerfall. +

+ + +
+

+AuthComponent
+AuthComponent enthält Parameter, die nur die MOA-ID Authentisierungskomponente betreffen. +Das Element ist optional und muss nicht verwendet werden, wenn auf dem Server keine MOA-ID Authentisierungskomponente +installiert wird. +

+Das Element AuthComponent hat vier Kind-Element: +

    +
  • BKUSelection (optional)
  • +
  • SecurityLayer
  • +
  • MOA-SP
  • +
  • IdentityLinkSigners
  • +
+

+ +
+

+AuthComponent/BKUSelection
+Das optionale Element BKUSelection enthält Parameter zur Nutzung eines Auswahldienstes für eine +Bürgerkartenumgebung (BKU). Wird das Element nicht angegeben, dann wird die lokale Bürgerkartenumgebung +auf http://localhost:3495/http-security-layer-request verwendet. +

+Das Attribut BKUSelectionAlternative gibt an welche Alternative zur BKU-Auswahl verwendet werden soll. MOA-ID +unterstützt die Werte HTMLComplete (vollständige HTML-Auswahl) und HTMLSelect (HTML-Code für Auswahl) +["Auswahl von Bürgerkartenumge-bungen", Arno Hollosi]. +

+Das Kind-Element ConnectionParameter spezifiziert die Verbindung zum Auswahldienst (siehe +ConnectionParameter), jedoch kann das Kind-Element ClientKeyStore +nicht angegeben werden. +

+ +
+

+AuthComponent/SecurityLayer
+Das Element SecurityLayer enthält Parameter zur Nutzung des Security-Layers. +

+Das Kind-Element TransformsInfo spezifiziert eine Transformation, die für die Erstellung der Signatur +des AUTH-Blocks als Parameter in den CreateXMLSignatureRequest des Security-Layers integriert werden muss. +Mehrere unterschiedliche Implementierungen des Security-Layer können durch die Angabe mehrerer TransformsInfo-Elemente unterstützt werden. +

+Das Attribut TransformsInfo/@filename verweist auf eine Datei, die das globale Element TransformsInfo vom Typ +TransformsInfo enthält. Das Encoding dieser Datei muss (anders als im Beispiel) UTF-8 sein. +

+Beispiel für eine TransformsInfo-Datei +

+ +
+

+AuthComponent/MOA-SP
+Das Element MOA-SP enthält Parameter zur Nutzung von MOA-SP. MOA-SP wird für die überprüfung der Signatur +der Personenbindung und des AUTH-Blocks verwendet. +

+Wird das Kind-Element ConnectionParameter angegeben, dann wird MOA-SP über das Webservice angesprochen, andernfalls +wird MOA-SP über das API angesprochen. +

+Das Kind-Element VerifyIdentityLink/TrustProfileID spezifiziert eine TrustProfileID, die für den +VerifyXMLSignatureRequest zur überprüfung der Signatur der Personenbindung verwendet werden muss. +

+Die Kind-Elemente VerifyAuthBlock/TrustProfileID und VerifyAuthBlock/VerifyTransformsInfoProfileID +spezifizieren eine TrustProfileID und eine ID für ein Transformationsprofil, die für den +VerifyXMLSignatureRequest zur überprüfung der Signatur des Auth-Blocks verwendet werden müssen. +

+ +
+

+AuthComponent/IdentityLinkSigners
+Dieses Element gibt an von welchen Signatoren die Signatur des IdentityLink erstellt werden musste +damit der IdentityLink akzeptiert wird. Für jeden Signator muss der X509SubjectName nach RFC 2253 +spezifiziert werden. +

+Beispiel +

+

+ +
+

+ProxyComponent
+ProxyComponent enthält Parameter, die nur die MOA-ID Proxykomponente betreffen. +Das Element ist optional und muss nicht verwendet werden, wenn auf dem Server keine MOA-ID Proxykomponente +installiert wird. +

+Das Element ProxyComponent hat nur das Kind-Element AuthComponent, das die Verbindung zur +Authentisierungs-komponente beschreibt. +

+Baut die Proxykomponente die Verbindung zur Authentisierungs-komponente +über ein Webservice auf, dann muss das Element ConnectionParameter spezifiziert werden. +

+Baut die Proxykomponente die Verbindung zur Authentisierungs-komponente +über das API auf, dann wird das Element ConnectionParameter nicht spezifiziert. +

+ +
+

+OnlineApplication
+Für jede Online-Applikation, die über MOA-ID authentisiert wird, gibt es ein Element OnlineApplication. +Die Parameter betreffen teils die MOA-ID Authentisierungskomponente, teils die MOA-ID Proxykomponente, teils beide. +

+Das Attribut OnlineApplication/@publicURLPrefix entspricht dem URL-Präfix der nach außen sichtbaren +Domäne der Online-Applikation, welcher von der MOA-ID Proxykomponente durch den URL-Präfix der wirklichen +Domäne (Attribut OnlineApplication/ProxyComponent/ConnectionParameter/@URL) ersetzt wird. +Es dient als Schlüssel zum Auffinden der Konfigurationsparameter zur Online-Applikation. +

+Das Element OnlineApplication hat optional zwei Kind-Elemente: AuthComponent und ProxyComponent. +

+ +
+

+OnlineApplication/AuthComponent
+Das Element OnlineApplication/AuthComponent muss verwendet werden wenn auf dem Server die Authentisierungskomponente +installiert wird. Es enthält Parameter, die das Verhalten der Authentisierungskomponente bezüglich der Online-Applikation +konfiguriert. +

+Das Attribut provideZMRZahl bestimmt, ob die ZMR-Zahl in den Anmeldedaten aufscheint. +Analog steuern die Attribute provideAUTHBlock und provideIdentityLink, ob die Anmeldedaten +den Auth-Block bzw. die Personenbindung enthalten. Alle Attribute sind optional und haben den Default-Wert false. +

+

+ +
+

+OnlineApplication/ProxyComponent
+Das Element OnlineApplication/ProxyComponent muss verwendet werden wenn auf dem Server die Proxykomponente +installiert wird. +

+Das optionale Attribut configFileURL verweist auf eine Konfigurationsdatei die dem Schema +MOA-ID-Configuration-1.1.xsd entspricht mit Dokument-Element +Configuration.
+Default-Wert: http://<realURLPrefix>/MOAConfig.xml +
(<realURLPrefix> entspricht dem Wert von OnlineApplication/ProxyComponent/ConnectionParameter/@URL) +

+Das optionale Attribut sessionTimeOut legt das Timeout einer Benutzersession in der +Proxykomponente in Sekunden fest.
+Default-Wert: 3600 +

+Im optionalen Attribut loginParameterResolverImpl kann der Klassenname eines +zu verwendenden LoginParameterResolver angegeben werden, welcher die Defaultimplementierung ersetzt. +

+Im optionalen Attribut connectionBuilderImpl kann der Klassenname eines zu verwendenden +ConnectionBuilder angegeben werden, welcher die Defaultimplementierung ersetzt. +

+Im Kind-Element ConnectionParameter ist konfiguriert, wie MOA-ID-PROXY zur Online-Applikation verbindet. +

+ +
+

+ChainingModes
+Das Element ChainingModes definiert, ob bei der Zertifikatspfad-überprüfung das Kettenmodell +("chaining") oder das Modell nach PKIX RFC 3280 ("pkix") verwendet werden soll. +

+Das Attribut systemDefaultMode spezifiziert das Modell, das im Standardfall verwendet werden soll. +

+Mit dem Kind-Element TrustAnchor kann für jeden Trust Anchor ein abweichendes Modell spezifiziert werden. +Ein Trust Anchor ist ein Zertifikat, das in TrustedCACertificates spezifiziert ist. +Ein Trust Anchor wird durch den Typ <dsig:X509IssuerSerialType> spezifiziert. +Das für diesen Trust Anchor gültige Modell wird durch das Attribut mode spezifiziert. +

+Gültige Werte für die Attribute systemDefaultMode und mode sind "chaining" und "pkix". +

+Beispiel +

+ +
+

+TrustedCACertificates
+Das Element TrustedCACertificates enthält eine URL, die auf ein Verzeichnis verweist, das jene Zertifikate +enthält, die als vertrauenswürdig betrachtet werden. Diese URL muss mittels URL-Schema 'file:' referenziert werden. Im Zuge der Überprüfung der TLS-Serverzertifikate wird die +Zertifikatspfaderstellung an einem dieser Zertifikate beendet. +

+ +
+

+GenericConfiguration
+Das Element GenericConfiguration ermöglicht das Setzen von Namen-Werte Paaren mittels der Attribute +name und value. Die folgende Liste spezifiziert +

    +
  • gültige Werte für das name-Attribut,
  • +
  • eine Beschreibung
  • +
  • gültige Werte für das value-Attribut und (falls vorhanden)
  • +
  • den Default-Wert für das value-Attribut.
  • +
+ + + + +
name: DirectoryCertStoreParameters.RootDir
+Gibt den Pfadnamen zu einem Verzeichnis an, das als Zertifikatsspeicher im Zuge der TLS-Server-Zertifikatsüberprüfung +verwendet wird.
+
+value:
+Gültige Werte: Name eines gültigen Verzeichnisses
+Dieser Parameter muss angegeben werden. +
+ + + + +
name: AuthenticationSession.TimeOut
+Gibt die Zeitspanne in Sekunden vom Beginn der Authentisierung bis zum Anlegen der Anmeldedaten an. +Wird die Angegebene Zeitspanne überschritten wird der Anmeldevorgang abgebrochen. +
+
+value:
+Gültige Werte: positive Ganzzahlen
+Default-Wert: 120 +
+ + + + +
name: AuthenticationData.TimeOut
+Gibt die Zeitspanne in Sekunden an, für die die Anmeldedaten in der Authentisierungskomponente zum Abholen +durch die Proxykomponente oder eine nachfolgende Applikation bereitstehen. Nach Ablauf dieser Zeitspanne werden die Anmeldedaten gelöscht.
+
+value:
+Gültige Werte: positive Ganzzahlen
+Default-Wert: 600 +
+ + + + +
name: TrustManager.RevocationChecking
+Für die TLS-Server-Authentisierung dürfen nur Server-Zertifikate verwendet werden, die eine CRLDP-Extension enthalten (andernfalls kann von MOA-ID keine CRL-überprüfung durchgeführt werden). +
Soll das RevocationChecking generell ausgeschaltet werden, ist dieses Attribut anzugeben und auf "false" zu setzen. +
+
+value:
+Gültige Werte: true, false
+Default-Wert: true +
+ + +
+ + +

+
+ + + +
+

 

+
+

+
+
+

Konfiguration der Online-Applikation

+
+Die Konfiguration der OA beschreibt die Art und Weise, wie die Proxykomponente die Anmeldung an der Online-Applikation +durchführt. +

+Der Name der Konfigurationsdatei wird in der Konfiguration von MOA-ID als Wert des Attributs +configFileURL des Elements MOA-IDConfiguration/OnlineApplication/ProxyComponent hinterlegt. +
Ist dieses Attribut nicht gesetzt, dann wird die Datei von http://<realURLPrefix>/MOAConfig.xml geladen, +wobei <realURLPrefix> dem Konfigurationswert OnlineApplication/ProxyComponent/ConnectionParameter/@URL entspricht. +

+Die Konfigurationsdatei ist eine XML-Datei, die dem Schema +MOA-ID-Configuration-1.1.xsd mit dem Wurzelelement +Configuration entspricht. +
+ +
+

+LoginType
+Das Element LoginType gibt an, ob die Online-Applikation ein einmaliges Login erwartet (stateful), +oder ob die Login-Parameter bei jedem Request mitgegeben werden müssen (stateless). Im Fall einer stateful +Online-Applikation werden die in der HTTP-Session der Proxykomponente gespeicherten Anmeldedaten nur für den Aufruf +des Login-Scripts verwendet. Unmittelbar nach dem Aufruf werden sie gelöscht. +
+Default-Wert: stateful +

+
+ +
+

+ParamAuth
+Konfiguriert die übergabe der Authentisierungs-Parameter an die Online-Applikation mittels URL-Parametern. Das Element +kann ein oder mehrere Kind-Elemente <Parameter> beinhalten. +

+
+ +
+

+ParamAuth/Parameter
+Das Element <Paramter> enthält die Attribute Name und Value. +

+Das Attribut Name beschreibt den Namen des Parameters und ist ein frei zu wählender String. +

+Das Attribut Value beschreibt den Inhalt des Parameters und kann einen der durch MOAAuthDataType beschriebenen +Werte annehmen. Gültige Werte von MOAAuthDataType sind: +

    +
  • MOAGivenName - der Vorname des Benutzers, wie in der Personenbindung enthalten +
  • MOAFamilyName - der Nachname des Benutzers, wie in der Personenbindung enthalten +
  • MOADateOfBirth - das Geburtsdatum des Benutzers, wie in der Personenbindung enthalten +
  • MOAVPK - die verfahrensspezifische Personenkennzeichnung des Benutzers, wie von der +Authentisierungskomponente berechnet +
  • MOAPublicAuthority - wird durch true ersetzt, falls der Benutzer mit einem Zertifikat signierte, +welches eine Behördenerweiterung beinhaltet. Andernfalls wird false gesetzt +
  • MOABKZ - das Behördenkennzeichen (nur sinnvoll, wenn MOAPublicAuthority den Wert true +ergibt) +
  • MOAQualifiedCertificate - wird durch true ersetzt, falls das Zertifikat des Benutzers +qualifiziert ist, andernfalls wird false gesetzt +
  • MOAZMRZahl - die ZMR-Zahl des Benutzers; diese ist nur dann verfügbar, wenn die Online-Applikation +die ZMR-Zahl bekommen darf (und daher in der Personenbindung enthalten ist) +
  • MOAIPAddress - IP-Adresse des Client des Benutzers. +
+ +Anhand der <Parameter>-Elemente wird der Request für den Login-Vorgang (für stateful Online-Applikationen) +folgendermaßen zusammenge-stellt:
+
+GET https://<login-url>?
+  <p1.name=p1.resolvedValue>&
+  <p2.name=p2.resolvedValue>...
+
+

+Die <login-url> ergibt sich aus dem Parameter OA des Aufrufs von MOA-ID-AUTH, +zusammen mit der Konfiguration von OnlineApplication/@publicURLPrefix und von OnlineApplication/ProxyComponent/ConnectionParameter/@URL. +
Der Wert resolvedValue wird in MOA-ID-PROXY je nach Wert des Platzhalters eingesetzt. +

+
+
+

+BasicAuth
+Das Element BasicAuth konfiguriert die übergabe der Authentisierungs-Parameter an die Online-Appliktion +mittels HTTP Basic Authentication. Es enthält zwei Kind-Elemente. +

+Das Element UserID gibt die UserId des zu authentisierenden Benutzers an und kann einen der durch +MOAAuthDataType beschriebenen Werte annehmen. +

+Das Element Password gibt das Passwort des zu authentisierenden Benutzers an und kann einen der durch +MOAAuthDataType beschriebenen Werte annehmen. +

+
+ +
+

+HeaderAuth
+Das Element HeaderAuth konfiguriert die übergabe der Authentisierungs-Parameter an die Online-Applikation +in HTTP Request Headern. Das Element kann ein oder mehrere Kind-Elemente <Header> beinhalten. +

+
+ + +
+ + +
+ + + +
+

 

+
+

+
+
+

Konfiguration von MOA-SP

+
+ +

+MOA-ID überprüft die Signaturen der Personenbindung und des AUTH-Blocks mit dem VerifyXMLSignatureRequest +von MOA-SP. Dazu muss MOA-SP wie unten beschreiben konfiguriert werden. +

+Ein Auszug einer beispielhaften MOA-SP Konfigurationsdatei, die diese Konfigurationsparameter enthält ist in +$MOA_ID_INST_AUTH/conf/moa-spss/ SampleMOASPSSConfiguration.xml enthalten. + +

+ +
+

+VerifyTransformsInfoProfile
+Der Request zum überprüfen der Signatur des AUTH-Blocks verwendet ein vordefiniertes VerifyTransformsInfoProfile. +Die im Request verwendete Profil-ID wird in der MOA-ID Konfigurationsdatei +im Element /MOA-IDConfiguration/ AuthComponent/MOA-SP/VerifyAuthBlock/ VerifyTransformsInfoProfileID definiert. +Entsprechend muss am MOA-SP Server ein VerifyTransformsInfoProfile mit gleichlautender ID definiert werden. Die +Profiledefinition selbst ist in der Auslieferung von MOA-ID in $MOA_ID_INST_AUTH/conf/moa-spss/profiles/MOAIDTransformAuthBlock.xml +enthalten. Diese Profildefinition muss unverändert übernommen werden. +

+
+ +
+

+TrustProfile
+Die Requests zur überprüfung der Signatur verwenden vordefinierte TrustProfile. +Die im Request verwendete Profil-IDs werden in der MOA-ID Konfigurationsdatei +in den Elementen /MOA-IDConfiguration/AuthComponent/MOA-SP/VerifyIdentityLink/ TrustProfileID und +/MOA-IDConfiguration/AuthComponent/MOA-SP/VerifyAuthBlock/TrustProfileID definiert. Diese beiden Elemente +können unterschiedliche oder identische TrustProfileIDs enthalten. +Am MOA-SP Server müssen TrustProfile mit gleichlautender ID definiert werden. +Die Auslieferung von MOA-ID enthält das Verzeichnis $MOA_ID_INST_AUTH/conf/moa-spss/trustprofiles/MOAIDBuergerkarteRoot, +das als TrustProfile verwendet werden kann. Weitere Zertifikate können als vertrauenswürdig hinzugefügt werden. +

+
+ +
+

+Certstore
+Zum Aufbau eines Zertifikatspfades können benötigte Zertifikate aus einem Zertifikatsspeicher verwendet werden. +Die Auslieferung von MOA-ID enthält das Verzeichnis $MOA_ID_INST_AUTH/conf/moa-spss/certstore, das als initialer +Zertifikatsspeicher verwendet werden kann. +

+
+ +
+
+ + +
+ + + +
+

 

+
+

+
+
+

Änderung der Konfiguration während des Betriebs

+
+Der Inhalt dieser Konfiguration, bzw. jene Teile, auf die indirekt verwiesen wird, können während des laufenden +Betriebes des MOA-Servers geändert werden. Der Server selbst wird durch den Aufruf einer URL +(im Applikationskontext von MOA ID) dazu veranlasst, die geänderte Konfiguration neu einzulesen. +Im Falle einer fehlerhaften neuen Konfiguration wird die ursprüngliche Konfiguration beibehalten. +
+ + +
+

+ + + + + + +

+
+
© 2003
+
+
+ + +
+ + \ No newline at end of file -- cgit v1.2.3