diff options
-rw-r--r-- | id/server/doc/handbook/application/application.html | 33 | ||||
-rw-r--r-- | id/server/doc/handbook/intro/anmeldeablauf.png | bin | 51570 -> 51580 bytes |
2 files changed, 16 insertions, 17 deletions
diff --git a/id/server/doc/handbook/application/application.html b/id/server/doc/handbook/application/application.html index 0b39077f7..83e301089 100644 --- a/id/server/doc/handbook/application/application.html +++ b/id/server/doc/handbook/application/application.html @@ -46,43 +46,42 @@ </ol> <hr/> <h1><a name="allgemeines"></a>1 Allgemeines</h1> - <p>Dieses Kapitel behandelt jene Authentifizierungsprotokolle die vom Modul MOA-ID-Auth unterstützt werden. - Wobei die Verwendung der Protokolle PVP 2.1 oder OpenID Connect empfohlen wird. Das Protokoll SAML 1, welches bis zur MOA-ID Version 1.5.1 - verwendet wurde, wird jedoch ab der Version 2.0 nur mehr aus Kompatibilitätsgründen angeboten und nicht mehr aktiv weiterentwickelt.</p> - <h1><a name="bkuselection" id="allgemeines_zugangspunkte2"></a>2 Integration in bestehende Online-Applikationen</h1> + <p>Das erste Kapitel behandelt die Integration der von MOA-ID-Auth generierten Bürgerkartenauswahl in bestehende Online-Applikationen. Zusätzlich zur Beschreibung ist MOA-ID auch eine PVP 2.1 Demo Applikation beigelegt. Die Konfiguration und Verwendung dieser Demo Applikation ist Inhalt des letzten Kapitels.</p> +<h1><a name="bkuselection" id="allgemeines_zugangspunkte2"></a>2 Integration in bestehende Online-Applikationen</h1> <p>Ab MOA-ID 2.0 wird die Bürgerkartenauswahl und die Single Sign-On Anmeldeabfrage standardmäßig vom Modul MOA-ID-Auth bereitgestellt und muss nicht mehr durch den Service Provider implementiert werden.</p> - <p>Die im Modul MOA-ID-Auth hinterlegten Standard Templates (<a href="./../config/config.html#import_template_bku">Bürgerkartenauswahl</a>, <a href="./../config/config.html#import_template_sso">Single Sign-On Anmeldeabfrage</a>) unterstützt Responsive Design und passen sich somit in einem weiten Bereich an die aktuelle Fenstergröße an, wodurch eine individuelle Integration der von MOA-ID-Auth erzeugten Formulare möglich ist. Zusätzlich bietet das Konfigurationstool die Möglichkeit der <a href="./../config/config.html#konfigurationsparameter_oa_additional_formular">online-applikationsspezifischen Anpassung der Standard Templates</a>. Mit dieser Funktion können einzelne Parameter der Standard Templates an die Online-Applikation angepasst werden um die Integration weiter zu verfeinern.</p> - <p><strong>Hinweis:</strong> Es besteht jedoch auch die Möglichkeit der Hinterlegung von vollständig benutzerdefinierten online-applikationsspezifischen Templates für die Bürgerkartenauswahl und die Single Sign-On Anmeldeabfrage, wobei die Verwendung der Standard Templates empfohlen wird (siehe <a href="./../config/config.html#konfigurationsparameter_oa_bku">hier</a>).</p> + <p>Die im Modul MOA-ID-Auth hinterlegten Standard Templates (<a href="./../config/config.html#import_template_bku">Bürgerkartenauswahl</a>, <a href="./../config/config.html#import_template_sso">Single Sign-On Anmeldeabfrage</a>) unterstützt Responsive Design und passen sich somit in einem weiten Bereich an die aktuelle Fenstergröße an, wodurch eine individuelle Integration der von MOA-ID-Auth erzeugten Formulare möglich ist. Zusätzlich bietet das Konfigurationstool die Möglichkeit der <a href="./../config/config.html#konfigurationsparameter_oa_additional_formular">online-applikationsspezifischen Anpassung der Standard Templates</a>. Mit dieser Funktion können einzelne Parameter der Standard Templates an die Online-Applikation individualisiert werden um die Integration weiter zu verfeinern.</p> + <p><strong>Hinweis:</strong> Es besteht jedoch auch die Möglichkeit der Hinterlegung von vollständig benutzerdefinierten online-applikationsspezifischen Templates für die Bürgerkartenauswahl und die Single Sign-On Anmeldeabfrage (siehe <a href="./../config/config.html#konfigurationsparameter_oa_bku">hier</a>).</p> <h2><a name="bkuselection" id="allgemeines_zugangspunkte6"></a>2.1 Bürgerkartenauswahl</h2> -<p>Die Bürgerkartenauswahl wird ab MOA-ID 2.0 standardmäßig von MOA-ID-Auth bereitgestellt. Dem zu Folge müssen die aus MOA-ID 1.5.1 bekannten Parameter (target, bkuURL, template, usemandate) nicht mehr im Authentifizierungsrequest an MOA-ID-Auth übergeben werden und es kann ein standardkonformer Protokollrequest verwendet werden. Die aus MOA-ID 1.5.1 bekannte Variante der Bürgerkartenauswahl steht jedoch weiterhin als Legacy Variante zur Verfügung. Detail hierzu finden Sie <a href="./../protocol/protocol.html#allgemeines_legacy">hier</a>. </p> -<p>Die Integration der von MOA-ID-Auth bereitgestellten Bürgerkartenauswahl in einer bestehende Online-Applikation kann auf zwei Arten erfolgen, wobei bei beiden Varianten der Login Vorgang (senden des Authentifizierungsrequests an MOA-ID-Auth) durch den Klick auf einen Login Button ausgelöst wird. Das Sequenzdiagramm eines solchen Anmeldevorgangs finden Sie <a href="./../intro/intro.html#ablauf">hier</a> und die nachfolgende Grafik zeigt ein Beispiel zur Integration eines Login Buttons.</p> +<p>Die Bürgerkartenauswahl wird ab MOA-ID 2.0 standardmäßig von MOA-ID-Auth, als Antwort auf einen eingehenden Authentifizierungsrequest, bereitgestellt. Dem zu Folge müssen die aus MOA-ID 1.5.1 bekannten Parameter (target, bkuURL, template, usemandate) nicht mehr im Authentifizierungsrequest an MOA-ID-Auth übergeben werden und es kann ein standardkonformer Protokollrequest verwendet werden. Die aus MOA-ID 1.5.1 bekannte Variante der Bürgerkartenauswahl in der Online-Applikation des Service Providers steht jedoch weiterhin als <a href="./../protocol/protocol.html#allgemeines_legacy">Legacy Variante</a> zur Verfügung.</p> +<p>Die Integration der von MOA-ID-Auth bereitgestellten Bürgerkartenauswahl in eine bestehende Online-Applikation kann auf zwei Arten erfolgen. Bei beiden Varianten erfolgt der Login Vorgang (senden des Authentifizierungsrequests an MOA-ID-Auth) durch den Klick auf einen Login Button. Die Auswahl der Bürgerkartenumgebung erfolgt somit erst im zweiten Schritt. Das Sequenzdiagramm eines solchen Anmeldevorgangs finden Sie <a href="./../intro/intro.html#ablauf">hier</a> und die nachfolgende Grafik zeigt ein Beispiel zur Integration eines Login Buttons.</p> <p><img src="login_button.PNG" width="853" height="683" alt="Integration Login Button"></p> <h3><a name="bkuselection_iframe" id="allgemeines_zugangspunkte5"></a>2.1.1 Request aus einem iFrame</h3> -<p>Bei dieser Variante wird der Authentifizierungsrequests aus einem iFrame, welcher in die Online-Applikation eingebunden ist, abgesetzt. MOA-ID-Auth antwortet auf diesen Request mit der konfigurierten Bürgerkartenauswahl welche, durch Verwendung des iFrame, in die aktuelle Seite der Online-Applikation eingebunden werden kann. Die nachfolgende Grafik zeigt ein Beispiel für die von MOA-ID-Auth bereitgestellte Bürgerkartenauswahl, welche nach Betätigung des Login Buttons im iFrame dargestellt wird. </p> +<p>Bei dieser Variante wird der Authentifizierungsrequests aus einem iFrame, welcher in die Online-Applikation eingebunden ist, abgesetzt. MOA-ID-Auth antwortet auf diesen Request mit der konfigurierten Bürgerkartenauswahl welche durch Verwendung des iFrame in die Online-Applikation eingebunden werden kann. Die nachfolgende Grafik zeigt ein Beispiel für die von MOA-ID-Auth bereitgestellte Bürgerkartenauswahl, welche nach Betätigung des Login Buttons im iFrame dargestellt wird. </p> <p><img src="iframe.png" width="752" height="764" alt="Bürgerkartenauswahl im iFrame"></p> <p><strong>Hinweis:</strong> Bei dieser Variante wird die Assertion ebenfalls an den iFrame ausgeliefert wodurch der authentifizierte Bereich der Online-Applikation im iFrame dargestellt wird. Dieses Verhalten kann durch eine <a href="./../config/config.html#konfigurationsparameter_oa_additional_formular">online-applikationsspezifischen Anpassung der Standard Templates</a> und dem Parameter <em>Targetparameter</em> unterbunden werden.</p> <h3><a name="bkuselection_mainframe" id="allgemeines_zugangspunkte7"></a>2.1.2 Request aus dem Hauptframe</h3> -<p>Bei dieser Variante wird der Authentifizierungsrequests direkt aus dem aktuell offenen Browserfenster, an MOA-ID-Auth gesendet. In diesem Fall wird die Bürgerkartenauswahl fensterfüllend im Browser dargestellt und die BenutzerIn oder der Benutzer befindet sich nicht mehr in der Domain der Online-Applikation (des Service Providers). Nach erfolgreicher Authentifizierung wird die BenutzerIn oder der Benutzer an die Online-Applikation zurückgeleitet. Die nachfolgende Grafik zeigt die Bürgerkartenauswahl im seitenfüllenden Layout.</p> +<p>Bei dieser Variante wird der Authentifizierungsrequests direkt aus dem aktuell offenen Browserfenster an MOA-ID-Auth gesendet. In diesem Fall wird die Bürgerkartenauswahl fensterfüllend im Browser dargestellt und die BenutzerIn oder der Benutzer befindet sich nicht mehr in der Domain der Online-Applikation (Service Providera). Nach erfolgreicher Authentifizierung wird die BenutzerIn oder der Benutzer an die Online-Applikation zurückgeleitet. Die nachfolgende Grafik zeigt die Bürgerkartenauswahl im seitenfüllenden Layout.</p> <p><img src="mainframe.PNG" width="1330" height="822" alt="Bürgerkartenauswahl im seitenfüllenden Layout"></p> <h2><a name="ssoquestion" id="allgemeines_zugangspunkte3"></a> 2.2 Single Sign-On Anmeldeabfrage</h2> -<p>Wird für die Integration in die Online-Applikation die Variante mit dem Login Button und der von MOA-ID-Auth bereitgestellten Bürgerkartenauswahl verwendet (<a href="#bkuselection_iframe">iFrame</a> oder <a href="#bkuselection_mainframe">Hauptframe</a>), ergeben sich für die Single Sign-On Anmeldeabfrage keine zusätzlichen Anforderungen. Im Falle einer aktiven Single Sign-On Session, würde MOA-ID-Auth mit der Single Sign-On Anmeldeabfrage anstatt der Bürgerkartenauswahl antworten. Auch in diesem Fall stehen beide Möglichkeiten der Integration, identisch zur Bürgerkartenauswahl zur Verfügung. Die nachfolgende Grafik zeigt eine Single Sign-On Abfrage, welche je nach verwendeter Variante die Bürgerkartenauswahl, in den zuvor gezeigten Beispielen, ersetzen würde.</p> +<p>Wird für die Integration in die Online-Applikation die Variante mit dem Login Button und der von MOA-ID-Auth bereitgestellten Bürgerkartenauswahl verwendet (<a href="#bkuselection_iframe">iFrame</a> oder <a href="#bkuselection_mainframe">Hauptframe</a>), ergeben sich für die Single Sign-On Anmeldeabfrage keine zusätzlichen Anforderungen. Im Falle einer aktiven Single Sign-On Session, würde MOA-ID-Auth mit der Single Sign-On Anmeldeabfrage anstatt der Bürgerkartenauswahl antworten. Auch in diesem Fall stehen beide Möglichkeiten der Integration, identisch zum Kapitel Bürgerkartenauswahl, zur Verfügung. Die nachfolgende Grafik zeigt eine Single Sign-On Abfrage welche je nach verwendeter Variante die Bürgerkartenauswahl, in den zuvor gezeigten Beispielen, ersetzen würde.</p> <p><img src="sso_sendassertion.PNG" width="383" height="240" alt="Single Sign-On Anmeldeabfrage"></p> -<p><strong>Hinweis:</strong> Wird für die Integration der Bürgerkartenauswahl jedoch die <a href="./../protocol/protocol.html#allgemeines_legacy">Legacy Variante</a> verwendet (direkte Integration der Bürgerkartenauswahl in die Online-Applikation) kann es zu Inkompatibilitäten mit der Single Sign-On Anmeldeabfrage kommen, da diese Abfrage immer von MOA-ID-Auth generiert wird und eine direkte Integration in eine Online-Applikation nicht möglich ist. </p> +<p><strong>Hinweis:</strong> Wird für die Integration der Bürgerkartenauswahl jedoch die <a href="./../protocol/protocol.html#allgemeines_legacy">Legacy Variante</a> verwendet (direkte Integration der Bürgerkartenauswahl in die Online-Applikation) kann es zu Inkompatibilitäten mit der Single Sign-On Anmeldeabfrage kommen, da diese Abfrage von MOA-ID-Auth generiert werden muss und eine direkte Integration in eine Online-Applikation nicht möglich ist. </p> <h2><a name="DemoApp" id="allgemeines_zugangspunkte4"></a>3 Demo Applikationen</h2> <p>Diese Abschnitt behandelt die Konfiguration und Verwendung der bei MOA-ID beigelegten Demo Applikationen.</p> <h2><a name="DemoApp_pvp21" id="allgemeines_zugangspunkte"></a>3.1 PVP 2.1 Demo</h2> <p>Die PVP 2.1 Demo stellt das Minimalbeispiel einer Online-Applikation dar, welche zur Authentifizierung das Protokoll PVP 2.1 verwendet. Die nachfolgenden Abschnitte beschreiben die Installation, Konfiguration und Verwendung der PVP 2.1 Demo Applikation.</p> +<p><strong>Hinweis:</strong> Der Source Code der PVP 2.1 Demo Applikation ist im Order <code>$MOA_ID_AUTH_INST/source/moa-id-oa</code> verfügbar. Jedoch ist die Validierung der PVP 2.1 Assertion in dieser Version nicht vollständig implementiert und müsste bei Verwendung in einem Produktivsystem noch erweitert werden.</p> <h3><a name="DemoApp_pvp21_install" id="allgemeines_zugangspunkte9"></a>3.1.1 Installation</h3> <p>Für die Installation der Demo Applikation wird ein Apache Tomcat benötigt. Die Konfiguration dieser Tomcat Instanz ist identisch zur <a href="./../install/install.html#webservice_basisinstallation">Konfiguration der Tomcat Instanz</a> der Module MOA-ID-Auth und MOA-ID-Configuration.</p> <h5><a name="DemoApp_pvp21_install_demooa" id="allgemeines_zugangspunkte10"></a>3.1.1.1 Einsatz der Demo Applikation in Tomcat</h5> <ul> <li>Die Datei <code>$MOA_ID_AUTH_INST/moa-id_oa.war</code> enthält das einsatzfertige Webarchiv der Demo Applikation und muss ins Verzeichnis <code>$CATALINA_HOME/webapps</code> kopiert werden. Dort wird sie beim ersten Start von Tomcat automatisch ins Verzeichnis <code>$CATALINA_HOME/webapps/moa-id-oa</code> entpackt. </li> - <li>Die Konfigurationsdatei mit der Basiskonfiguration für die Demo Applikation und die zugehörigen Verzeichnisse müssen in ein beliebiges Verzeichnis im Dateisystem kopiert werden (z.B. <code>$CATALINA_HOME/conf/moa-id-oa</code>). Eine funktionsfähige Konfiguration, die als Ausgangspunkt für die Basiskonfiguration der Demo Applikation dienen kann, finden Sie <a href="../../conf/moa-id-oa/oa.properties">hier</a>. <br> + <li>Die Konfigurationsdatei mit der Basiskonfiguration für die Demo Applikation und die zugehörigen Verzeichnisse müssen in ein beliebiges Verzeichnis im Dateisystem kopiert werden (z.B. <code>$CATALINA_HOME/conf/moa-id-oa</code>). Eine funktionsfähige Konfiguration, die als Ausgangspunkt für die Basiskonfiguration der Demo Applikation dienen kann, finden Sie <a href="../../../conf/moa-id-oa/oa.properties">hier</a>. <br> </li> <li> Die Dateien <code>xalan.jar</code>, <code>xercesImpl.jar, serializer.jar </code> und <code>xml-apis.jar</code> aus dem Verzeichnis <code>$MOA_ID_AUTH_INST/endorsed</code> müssen in das Tomcat-Verzeichnis <code>$CATALINA_HOME/endorsed</code> (bzw. <code>$CATALINA_HOME/common/endorsed</code> bis Apache Tomcat Version 5.5) kopiert werden. Sind gleichnamige Dateien dort bereits vorhanden, müssen sie überschrieben werden. Die ggf. in diesem Verzeichnis vorhandene Datei <code>xmlParserAPIs.jar</code> muss gelöscht werden. Sollte das Verzeichnis <code>endorsed</code> nicht vorhanden sein, dann muss dieses zuerst erstellt werden.</li> <li>Folgende <span class="term">System Properties</span> können gesetzt werden (wird beim Starten von Tomcat der <span class="term">Java Virtual Machine</span> in der Umgebungsvariablen <code>CATALINA_OPTS</code> in der Form <code>-D<name>=<wert></code> übergeben): <ul> - <li><code>moa.id.demoOA</code>: Pfad und Name der Basiskonfigurationsdatei für die Demo Applikation. Eine beispielhafte Konfigurationsdatei fnden Sie <a href="../../conf/moa-id-oa/oa.properties">hier</a>. Wird ein relativer Pfad angegeben, wird dieser relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert.</li> + <li><code>moa.id.demoOA</code>: Pfad und Name der Basiskonfigurationsdatei für die Demo Applikation. Eine beispielhafte Konfigurationsdatei fnden Sie <a href="../../../conf/moa-id-oa/oa.properties">hier</a>. Wird ein relativer Pfad angegeben, wird dieser relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert.</li> <li><code>log4j.configuration</code>: URL der Log4j Konfigurationsdatei. Eine beispielhafte Log4j-Konfiguration finden Sie <a href="../../../conf/moa-spss/log4j.properties">hier</a>. Wird eine relative URL angegeben, wird diese als File-URL relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert. Ist diese <span class="term">System Property</span> nicht gesetzt, wird automatisch eine im Webarchiv unter <code>WEB-INF/classes</code> enthaltene Default-Konfiguration herangezogen.</li> <li><code>javax.net.ssl.trustStore</code>: Pfad und Dateiname des <span class="term">Truststores</span> für vertrauenswürdige SSL Client-Zertifikate (optional; nur, wenn SSL Client-Authentisierung durchgeführt werden soll). Ein relativer Pfad werden relativ zum Startverzeichnis der <span class="term">Java Virtual Machine</span> interpretiert.</li> <li><code>javax.net.ssl.trustStorePassword</code>: Passwort für den <span class="term">Truststore</span> (optional; nur, wenn SSL Client-Authentisierung durchgeführt werden soll). </li> @@ -204,9 +203,9 @@ https://<host>:<port>/moa-id-oa/servlet/metadata</pre> <pre> https://<host>:<port>/moa-id-oa/ </pre> -<p>Die Startseite der Demo Applikation beinhaltet einen kurzen Beschreibungstext und den Login Button zum Start des Anmeldevorgangs. Für die Integration der Bürgerkartenumgebung verwenden die Demo die im <a href="#bkuselection_iframe">Kapitel 2.1.1</a> beschriebenen iFrame Variante. Nach Betätigung des Login Buttons wird der Anmeldevorgang gestartet. Der Protokollablauf identisch zu dem im Kapitel Protokolle beschiebenen Ablauf für das <a href="./../protocol/protocol.html#pvp21_sequenz">PVP 2.1 Protokoll</a>.</p> -<p>Konnten die Metadaten und der Authentifizierungsrequest erfolgreich verifiziert werden, wird anschließend die Bürgerkartenauswahl in der Hauptseite der Demo Applikation dargestellt. Wählen Sie nur die gewünschte Authentifizierungsvariante. Nur erfolgt die Authentifizierung mittels der gewählten Variante. </p> -<p>Nach erfolgreicher Authentifizierung werden sie an die Demo Applikation zurückgeleite und die Demo Applikation stellt einige Basisdaten aus Authentifizierungsinformationen dar. Zusätzlich kann die gesamte übertragene PVP 2.1 Assertion dargestellt werden.</p> +<p>Die Startseite der Demo Applikation beinhaltet einen kurzen Beschreibungstext und den Login Button zum Start des Anmeldevorgangs. Für die Integration der Bürgerkartenumgebung verwendet die Demo die im <a href="#bkuselection_iframe">Kapitel 2.1.1</a> beschriebenen iFrame Variante. Nach Betätigung des Login Buttons wird der Anmeldevorgang gestartet. Der Protokollablauf ist identisch zu dem im Kapitel Protokolle beschiebenen Ablauf für das <a href="./../protocol/protocol.html#pvp21_sequenz">PVP 2.1 Protokoll</a>.</p> +<p>Konnten die Metadaten und der Authentifizierungsrequest erfolgreich verifiziert werden, wird anschließend die Bürgerkartenauswahl in der Hauptseite der Demo Applikation dargestellt. Wählen Sie nur die gewünschte Authentifizierungsvariante. Danach erfolgt die Authentifizierung mittels der gewählten Variante. </p> +<p>Nach erfolgreicher Authentifizierung werden Sie an die Demo Applikation zurückgeleite. Diese extrahiert einige Basisdaten aus der PVP 2.1 Assertion und stellt diese im Browser dar. Zusätzlich kann die gesamte übertragene PVP 2.1 Assertion angezeigt werden.</p> <p>Wurde der Anmeldevorgang durch einen Fehler abgebrochen werden Sie ebenfalls an die Demo Applikation zurückgeleitet. In diesem Fall wird eine kurze Fehlerbeschreibung dargestellt. Eine ausführliche Fehlerbeschreibung kann der PVP 2.1 Assertion entnommen werden.</p> <p> </p> </body> diff --git a/id/server/doc/handbook/intro/anmeldeablauf.png b/id/server/doc/handbook/intro/anmeldeablauf.png Binary files differindex e7d1ea042..a6af21c5f 100644 --- a/id/server/doc/handbook/intro/anmeldeablauf.png +++ b/id/server/doc/handbook/intro/anmeldeablauf.png |