<html>
<head>
	<title>MOA-ID Anwendung</title>
	<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
	<link rel="stylesheet" href="./common/MOA.css" type="text/css">
</head>

<body link="#990000"> 

<table class="logoTable" width="100%" border="0" cellspacing="0" cellpadding="10">
    <tr>
      <td align="center" class="logoTitle" width="267"><img src="common/LogoBKA.png" alt="Logo BKA" width="267" height="37" align="left"></td>
      <td align="center" class="logoTitle">Dokumentation</td>
      <td align="center" class="logoTitle" width="123"><img src="common/LogoEGIZ.png" alt="Logo EGIZ" width="230" height="81" align="right"></td>
    </tr>
</table>
  <hr/> 
  <p class="title"><a href="./moa.htm">MOA: Identifikation (ID)</a></p> 
  <p class="subtitle">Aufruf von MOA-ID AUTH</p> 
  <hr/>
MOA-ID-AUTH wird immer durch eine andere (verweisende) Webseite aufgerufen. Diese Webseite kann z.B. Teil eines Portals sein.
    Der Aufruf erfolgt durch einen Verweis der Form: 
  <pre>&lt;a href=&quot;https://&lt;moa-id-server-und-pfad&gt;/
StartAuthentication?Target=&lt;gesch&auml;ftsbereich&gt;
&OA=&lt;oa-url&gt;&Template=&lt;template-url&gt;&amp;useMandate=false&amp;sourceID=&lt;sourceID&gt;&quot;&gt;</pre>
<table border="1">
    <tbody valign="baseline">
      <tr>
        <td id="klein2">&lt;moa-id-server-und-pfad&gt;</td>
        <td id="klein2">Server und Pfad, wo MOA-ID-AUTH installiert ist</td>
      </tr>
      <tr>
        <td id="klein2">Target=&lt;gesch&auml;ftsbereich&gt;</td>
        <td id="klein2">Angabe, f&uuml;r welches Verfahren der Benutzer authentisiert werden soll</td>
      </tr>
      <tr>
        <td id="klein2">OA=&lt;oa-url&gt;</td>
        <td id="klein2">Webseite, auf die der Browser nach erfolgter Authentisierung weitergeleitet werden soll</td>
      </tr>
      <tr>
        <td id="klein2">Template=&lt;template-url&gt;</td>
        <td id="klein2">optional; HTML-Vorlage f&uuml;r der Anmeldeseite von MOA-ID-AUTH, &uuml;ber die der B&uuml;rger den Authentisierungsvorgang startet. &Uuml;ber diesen Parameter kann das Aussehen der Anmeldeseite an das Aussehen der Online-Applikation angepasst werden.</td>
      </tr>
      <tr>
        <td id="klein2">useMandate=&lt;true/false&gt;</td>
        <td id="klein2">optional; Gibt an ob eine Anmeldung im Online-Vollmachten-Modus durchgef&uuml;hrt werden soll (=true) oder nicht (=false);</td>
      </tr>
      <tr>
        <td id="klein3">sourceID=&lt;sourceID&gt;</td>
        <td id="klein3">optional; Gibt eine sourceID an, die (wenn sie gesetzt ist) zur Berechnung des SAML-Artifacts herangezogen wird.</td>
      </tr>
    </tbody>
  </table>
  <p><br/>
  <b>Template</b></p>
<p>    Ein <a href="examples/Template.html">Template</a> f&uuml;r die Anmeldeseite von MOA-ID-AUTH kann aus folgender Grundstruktur aufgebaut werden: 
  </p>
  <pre>&lt;html&gt;<br>&lt;head&gt;<br>&lt;title&gt;MOA ID - Identifizierter Zugang mit B&amp;uuml;rgerkarte&lt;/title&gt;
	&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot;&gt;<br>&lt;/head&gt;

&lt;body&gt;  <p>&lt;form name=&quot;CustomizedForm&quot; action=&quot;&lt;BKU&gt;&quot; method=&quot;post&quot;&gt;
  &lt;div align=&quot;center&quot;&gt;
  &lt;input type=&quot;hidden&quot;
    name=&quot;XMLRequest&quot;
    value=&quot;&lt;XMLRequest&gt;&quot;/&gt;<br>
  &lt;input type=&quot;hidden&quot;
    name=&quot;DataURL&quot;
    value=&quot;&lt;DataURL&gt;&quot;/&gt;<br>
  &lt;input type=&quot;hidden&quot;
    name=&quot;PushInfobox&quot
    value=&quot;&lt;PushInfobox&gt;&quot;/&gt;<br>
  &lt;input type=&quot;submit&quot; value=&quot;Anmeldung mit B&amp;uuml;rgerkarte&quot; name=&quot;submit&quot;/&gt;<br>
  &lt;/div&gt;
  &lt;/form&gt;<br>
  &lt;form name=&quot;CustomizedInfoForm&quot;
    action=&quot;&lt;BKU&gt;&quot;
    method=&quot;post&quot;&gt;<br>
  &lt;input type=&quot;hidden&quot;
    name=&quot;XMLRequest&quot;
    value=&quot;&lt;CertInfoXMLRequest&gt;&quot;/&gt;<br>
  &lt;input type=&quot;hidden&quot;<br>    name=&quot;DataURL&quot;
    value=&quot;&lt;CertInfoDataURL&gt;&quot;/&gt;<br>  </p><p> &lt;input type=&quot;hidden&quot; value=&quot;Weitere Info&quot;/&gt;<br>
  &lt;/form&gt;</p>&lt;/body&gt;<br>&lt;/html&gt;<br>
  </pre>
  Innerhalb dieser <tt>&lt;form&gt;</tt>-Elemente k&ouml;nnen Texte, Beschriftungen und Styles modifiziert werden,
und es k&ouml;nnen zus&auml;tzliche Elemente darin aufgenommen werden. <br />
<br />
Die vorgegebene Grundstruktur ist aber in jedem Fall einzuhalten, und es m&uuml;ssen die speziellen
Tags <tt>&lt;BKU&gt;</tt> (kommt 2x vor), <tt>&lt;XMLRequest&gt;</tt>, <tt>&lt;DataURL&gt;</tt>, <tt>&lt;CertInfoXMLRequest&gt;</tt> und <tt>&lt;CertInfoDataURL&gt;</tt> darin enthalten sein. Das Tag &lt;PushInfobox&gt; muss ab Version 1.4 vorhanden sein, wenn MOA-ID auch andere Infoboxen als die Personenbindung bearbeiten kann. <br />
<br />
<b>BKU-Auswahl</b><br />
  <br />
  MOA-ID-AUTH bietet die M&ouml;glichkeit, die B&uuml;rgerkartenumgebung (BKU) auszuw&auml;hlen, &uuml;ber die in weiterer Folge die B&uuml;rgerkarte ausgelesen wird. Der Aufruf erfolgt dann durch einen Verweis der Form: 
<pre>&lt;a href=&quot;https://&lt;moa-id-server-und-pfad&gt;/
SelectBKU?Target=&lt;gesch&auml;ftsbereich&gt;
&OA=&lt;oa-url&gt;&Template=&lt;template-url&gt;
&BKUSelectionTemplate=&lt;bku-template-url&gt;&quot;&gt;</pre>
<table border="1">
  <tbody valign="baseline">
    <tr>
      <td id="klein2">BKUSelectionTemplate= &lt;bku-template-url&gt;</td>
      <td id="klein2">optional; HTML-Vorlage f&uuml;r der BKU-Auswahlseite von MOA-ID-AUTH.
        &Uuml;ber diesen Parameter kann das Aussehen der BKU-Auswahlseite an das Aussehen der Online-Applikation angepasst werden.</td>
    </tr>
  </tbody>
</table>
<br/>
<b>BKUSelectionTemplate</b><br />
  <br />
  Ein <a href="examples/BKUSelectionTemplate.html">Template f&uuml;r die BKU-Auswahl</a> von MOA-ID-AUTH kann aus folgender Grundstruktur aufgebaut werden:
<pre>
&lt;html&gt;<br>&lt;head&gt;<br>&lt;title&gt;MOA ID - Auswahl der B&amp;uuuml;rgerkartenumgebung&lt;/title&gt;
	&lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot;&gt;<br>&lt;/head&gt;
&lt;body&gt;
<p>&lt;form name=&quot;CustomizedForm&quot; method=&quot;post&quot; action=&quot;&lt;StartAuth&gt;&quot;&gt;<br>  &lt;BKUSelect&gt; <br>  	&lt;input type=&quot;submit&quot; value=&quot;Ausw&amp;auml;hlen&quot;/&gt;<br>&lt;/form&gt;<br>&lt;br/&gt;<br>
 &lt;input type=&quot;hidden&quot; value=&quot;Weitere Info&quot;/&gt;<br>&lt;/form&gt;</p>
<p>&lt;/body&gt;<br>&lt;/html&gt;</pre>
</p>
<p> Innerhalb dieser <tt>&lt;form&gt;</tt>-Elemente k&ouml;nnen Texte, Beschriftungen und Styles modifiziert werden,
  und es k&ouml;nnen zus&auml;tzliche Elemente darin aufgenommen werden. <br />
  <br />
Auch dabei ist die vorgegebene Grundstruktur einzuhalten, die speziellen Tags <tt>&lt;StartAuth&gt;</tt> und <tt>&lt;BKUSelect&gt;</tt> sind verpflichtend.</p>
  <p><strong>Wichtiger Hinweis:</strong> wenn die Templates &uuml;ber HTTPS geladen werden sollten, so muss das SSL/TLS Zertifikat des Servers in einem Java Truststore gespeichert werden und dieser beim Start von Tomcat angegeben werden. </p>
<strong>Vorgeschlagene Vorgehensweise:<br>
</strong>
<ol>
<li>Webserver SSL/TLS Zertifikat speichern im .cer Format speichern (z.B. mittels Internet Explorer).</li>
<li>Mittels Java Keytool das Zertifikat in einen Java Truststore importieren. 
Im folgenden Beispiel wird in den Java Truststore &quot;truststore.jks&quot; mit dem Passwort &quot;changeit&quot; importiert.<br>
<pre>keytool -import -trustcacerts -alias mytomcat -file tomcat_localhost.cer -keystore truststore.jks</pre>
</li>
<li>Truststore beim Starten von Tomcat angeben (&uuml;ber das Hinzuf&uuml;gen folgender Parameter in
  die Variable CATALINA_OPTS im Tomcat Startskript).</p>
<pre>
    -Djavax.net.ssl.trustStore=&lt;PFAD&gt;\truststore.jks<br>
    -Djavax.net.ssl.trustStorePassword=changeit<br>
    -Djavax.net.ssl.trustStoreType=jks </pre>
</li>
</ol>
</body>
</html>