diff options
author | Thomas Lenz <tlenz@iaik.tugraz.at> | 2013-07-24 17:13:31 +0200 |
---|---|---|
committer | Thomas Lenz <tlenz@iaik.tugraz.at> | 2013-07-24 17:13:31 +0200 |
commit | cfb70f755c45a2cad582e8030b1542add9949efb (patch) | |
tree | 039123854ab630f81dd2387d0f7636056e9e304a /id/server/idserverlib/src/main/resources | |
parent | 71da4a9bc7e2ff79b2fb4cf8903d15fd75372859 (diff) | |
download | moa-id-spss-cfb70f755c45a2cad582e8030b1542add9949efb.tar.gz moa-id-spss-cfb70f755c45a2cad582e8030b1542add9949efb.tar.bz2 moa-id-spss-cfb70f755c45a2cad582e8030b1542add9949efb.zip |
- SSO finalized
- SSO Session is not closed if a new single authentication operation is started
- PVP2 Configuration from Database (but without Metadata) --> TODO: change MetaDataProvider
- Add additional UserFrame in case of SSO
- MOASession encryption
TODO: MetaDataProvider, IdentityLink resign, SSO with Mandates, Legacy Template generation
Diffstat (limited to 'id/server/idserverlib/src/main/resources')
-rw-r--r-- | id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties | 3 | ||||
-rw-r--r-- | id/server/idserverlib/src/main/resources/resources/templates/loginFormFull.html (renamed from id/server/idserverlib/src/main/resources/resources/templates/loginForm.html) | 42 | ||||
-rw-r--r-- | id/server/idserverlib/src/main/resources/resources/templates/loginFormIFrame.html | 260 | ||||
-rw-r--r-- | id/server/idserverlib/src/main/resources/resources/templates/pvp_postbinding_template.html | 2 | ||||
-rw-r--r-- | id/server/idserverlib/src/main/resources/resources/templates/sendAssertionFormFull.html | 104 | ||||
-rw-r--r-- | id/server/idserverlib/src/main/resources/resources/templates/sendAssertionFormIFrame.html | 42 |
6 files changed, 430 insertions, 23 deletions
diff --git a/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties b/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties index f5745873f..95bcad1ec 100644 --- a/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties +++ b/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties @@ -37,7 +37,8 @@ auth.16=Fehler bei Abarbeitung der Vollmacht in "{0}" auth.17=Vollmachtenmodus f�r nicht-�ffentlichen Bereich wird nicht unterst�tzt.
auth.18=Keine MOASessionID vorhanden
auth.19=Die Authentifizierung kann nicht passiv durchgef�hrt werden.
-auth.20=No valid MOA session found. Authentification process is abourted. +auth.20=No valid MOA session found. Authentification process is abourted.
+auth.21=Der Anmeldevorgang wurde durch den Benutzer abgebrochen. init.00=MOA ID Authentisierung wurde erfolgreich gestartet
init.01=Fehler beim Aktivieren des IAIK-JCE/JSSE/JDK1.3 Workaround\: SSL ist m?glicherweise nicht verf?gbar
diff --git a/id/server/idserverlib/src/main/resources/resources/templates/loginForm.html b/id/server/idserverlib/src/main/resources/resources/templates/loginFormFull.html index 38ef53475..1228ba90e 100644 --- a/id/server/idserverlib/src/main/resources/resources/templates/loginForm.html +++ b/id/server/idserverlib/src/main/resources/resources/templates/loginFormFull.html @@ -46,16 +46,16 @@ document.getElementById("metroDetected").style.display="block"; document.getElementById("localBKU").style.display="block"; - if (checkMandateSSO()) - return; +/* if (checkMandateSSO()) + return; */ setMandateSelection(); - setSSOSelection(); +/* setSSOSelection(); */ var iFrameURL = "#AUTH_URL#" + "?"; iFrameURL += "bkuURI=" + "#ONLINE#"; iFrameURL += "&useMandate=" + document.getElementById("useMandate").value; - iFrameURL += "&SSO=" + document.getElementById("useSSO").value; +/* iFrameURL += "&SSO=" + document.getElementById("useSSO").value; */ iFrameURL += "&MODUL=" + "#MODUL#"; iFrameURL += "&ACTION=" + "#ACTION#"; @@ -65,16 +65,16 @@ function bkuHandyClicked() { document.getElementById("localBKU").style.display="none"; - if (checkMandateSSO()) - return; +/* if (checkMandateSSO()) + return; */ setMandateSelection(); - setSSOSelection(); +/* setSSOSelection(); */ var iFrameURL = "#AUTH_URL#" + "?"; iFrameURL += "bkuURI=" + "#HANDY#"; iFrameURL += "&useMandate=" + document.getElementById("useMandate").value; - iFrameURL += "&SSO=" + document.getElementById("useSSO").value; +/* iFrameURL += "&SSO=" + document.getElementById("useSSO").value; */ iFrameURL += "&MODUL=" + "#MODUL#"; iFrameURL += "&ACTION=" + "#ACTION#"; @@ -84,11 +84,11 @@ function storkClicked() { document.getElementById("localBKU").style.display="none"; - if (checkMandateSSO()) - return; +/* if (checkMandateSSO()) + return; */ setMandateSelection(); - setSSOSelection(); +/* setSSOSelection(); */ var ccc = "AT"; var countrySelection = document.getElementById("cccSelection"); @@ -100,8 +100,8 @@ var iFrameURL = "#AUTH_URL#" + "?"; iFrameURL += "bkuURI=" + "#ONLINE#"; iFrameURL += "&useMandate=" + document.getElementById("useMandate").value; - iFrameURL += "&ccc=" + ccc; - iFrameURL += "&SSO=" + document.getElementById("useSSO").value; + iFrameURL += "&CCC=" + ccc; +/* iFrameURL += "&SSO=" + document.getElementById("useSSO").value; */ iFrameURL += "&MODUL=" + "#MODUL#"; iFrameURL += "&ACTION=" + "#ACTION#"; @@ -135,7 +135,7 @@ } } - function setSSOSelection() { +/* function setSSOSelection() { document.getElementById("useSSO").value = "false"; var checkbox = document.getElementById("SSOCheckBox"); if (checkbox != null) { @@ -143,9 +143,9 @@ document.getElementById("useSSO").value = "true"; } } - } + } */ - function checkMandateSSO() { +/* function checkMandateSSO() { var sso = document.getElementById("SSOCheckBox"); var mandate = document.getElementById("mandateCheckBox"); @@ -158,7 +158,7 @@ } else { return false; } - } + } */ </script> </head> @@ -217,13 +217,13 @@ <td><a href="info_mandates.html" target="_blank" class="infobutton" style="margin-left: 5px" tabindex="5">i</a></td> </tr> - <tr> +<!-- <tr> <td><input tabindex="1" type="checkbox" name="SSO" style="vertical-align: middle; margin-right: 5px" id="SSOCheckBox"></td> - <td><label for="SSOCheckBox">mit SingleSignOn anmelden</label></td> + <td><label for="SSOCheckBox">Single Sign-On</label></td> <td></td> - </tr> + </tr> --> </table> </div> @@ -278,7 +278,7 @@ <form method="get" id="moaidform"> <input type="hidden" name="bkuURI" value="#LOCAL#"> <input type="hidden" name="useMandate" id="useMandate"> - <input type="hidden" name="SSO" id="useSSO"> +<!-- <input type="hidden" name="SSO" id="useSSO"> --> <input type="hidden" name="CCC" id="ccc"> <input type="hidden" name="MODUL" value="#MODUL#"> <input type="hidden" name="ACTION" value="#ACTION#"> diff --git a/id/server/idserverlib/src/main/resources/resources/templates/loginFormIFrame.html b/id/server/idserverlib/src/main/resources/resources/templates/loginFormIFrame.html new file mode 100644 index 000000000..3d39f9233 --- /dev/null +++ b/id/server/idserverlib/src/main/resources/resources/templates/loginFormIFrame.html @@ -0,0 +1,260 @@ +<html> +<head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> + <meta content="text/css" http-equiv="Content-Style-Type"> + <link rel="stylesheet" type="text/css" href="#CONTEXTPATH#/css/index.css"> + + <script type="text/javascript"> + function isIE() { + return (/MSIE (\d+\.\d+);/.test(navigator.userAgent)); + } + + function isFullscreen() { + try { + return ((top.innerWidth == screen.width) && (top.innerHeight == screen.height)); + } catch (e) { + return false; + } + } + + function isActivexEnabled() { + var supported = null; + try { + supported = !!new ActiveXObject("htmlfile"); + } catch (e) { + supported = false; + } + return supported; + } + + function isMetro() { + if (!isIE()) + return false; + return !isActivexEnabled() && isFullscreen(); + } + + window.onload=function() { + document.getElementById("localBKU").style.display="block"; + return; + } + + function bkuLocalClicked() { + if (isMetro()) + document.getElementById("metroDetected").style.display="block"; + +/* if (checkMandateSSO()) + return; */ + + setMandateSelection(); +/* setSSOSelection(); */ + + document.getElementById("moaidform").submit(); + } + + function bkuOnlineClicked() { + if (isMetro()) + document.getElementById("metroDetected").style.display="block"; + +/* if (checkMandateSSO()) + return; */ + + setMandateSelection(); +/* setSSOSelection(); */ + + var iFrameURL = "#AUTH_URL#" + "?"; + iFrameURL += "bkuURI=" + "#ONLINE#"; + iFrameURL += "&useMandate=" + document.getElementById("useMandate").value; + iFrameURL += "&SSO=" + document.getElementById("useSSO").value; + iFrameURL += "&MODUL=" + "#MODUL#"; + iFrameURL += "&ACTION=" + "#ACTION#"; + + generateIFrame(iFrameURL); + } + + function bkuHandyClicked() { + document.getElementById("localBKU").style.display="none"; + +/* if (checkMandateSSO()) + return; */ + + setMandateSelection(); +/* setSSOSelection(); */ + + var iFrameURL = "#AUTH_URL#" + "?"; + iFrameURL += "bkuURI=" + "#HANDY#"; + iFrameURL += "&useMandate=" + document.getElementById("useMandate").value; + iFrameURL += "&SSO=" + document.getElementById("useSSO").value; + iFrameURL += "&MODUL=" + "#MODUL#"; + iFrameURL += "&ACTION=" + "#ACTION#"; + + generateIFrame(iFrameURL); + } + + function storkClicked() { + document.getElementById("localBKU").style.display="none"; + +/* if (checkMandateSSO()) + return; */ + + setMandateSelection(); +/* setSSOSelection(); */ + + var ccc = "AT"; + var countrySelection = document.getElementById("cccSelection"); + + if (countrySelection != null) { + ccc = document.getElementById("cccSelection").value; + } + + var iFrameURL = "#AUTH_URL#" + "?"; + iFrameURL += "bkuURI=" + "#ONLINE#"; + iFrameURL += "&useMandate=" + document.getElementById("useMandate").value; + iFrameURL += "&CCC=" + ccc; + iFrameURL += "&SSO=" + document.getElementById("useSSO").value; + iFrameURL += "&MODUL=" + "#MODUL#"; + iFrameURL += "&ACTION=" + "#ACTION#"; + + generateIFrame(iFrameURL); + } + + function generateIFrame(iFrameURL) { + var el = document.getElementById("bkulogin"); + var parent = el.parentNode; + + var iframe = document.createElement("iframe"); + iframe.setAttribute("src", iFrameURL); + iframe.setAttribute("width", "220"); + iframe.setAttribute("height", "165"); + iframe.setAttribute("frameborder", "0"); + iframe.setAttribute("scrolling", "no"); + iframe.setAttribute("title", "Login"); + + parent.replaceChild(iframe, el); + +/* document.location.href=iFrameURL; */ + } + + function setMandateSelection() { + document.getElementById("useMandate").value = "false"; + var checkbox = document.getElementById("mandateCheckBox"); + if (checkbox != null) { + if (document.getElementById("mandateCheckBox").checked) { + document.getElementById("useMandate").value = "true"; + } + } + } + +/* function setSSOSelection() { + document.getElementById("useSSO").value = "false"; + var checkbox = document.getElementById("SSOCheckBox"); + if (checkbox != null) { + if (document.getElementById("SSOCheckBox").checked) { + document.getElementById("useSSO").value = "true"; + } + } + } + + function checkMandateSSO() { + var sso = document.getElementById("SSOCheckBox"); + var mandate = document.getElementById("mandateCheckBox"); + + + if (sso.checked && mandate.checked) { + alert("Anmeldung in Vertretung in kombination mit Single Sign-On wird aktuell noch nicht unterstützt!") + mandate.checked = false; + sso.checked = false; + return true; + } else { + return false; + } + } */ + </script> +</head> + + +<body> + <div id="leftcontent"> + <h2 id="tabheader" class="dunkel"> + Login mit Bürgerkarte + </h2> + <div id="bkulogin" class="hell"> + + <div id="mandateLogin" style="margin-top: 10px; margin-bottom: 10px"> + <table style="margin-left: auto; margin-right: auto;"> + <tr> + <td><input tabindex="1" type="checkbox" name="Mandate" + style="vertical-align: middle; margin-right: 5px" + id="mandateCheckBox"></td> + <td><label for="mandateCheckBox">in Vertretung anmelden</label></td> + <td><a href="info_mandates.html" target="_blank" + class="infobutton" style="margin-left: 5px" tabindex="5">i</a></td> + </tr> +<!-- <tr> + <td><input tabindex="1" type="checkbox" name="SSO" + style="vertical-align: middle; margin-right: 5px" + id="SSOCheckBox"></td> + <td><label for="SSOCheckBox">Single Sign-On</label></td> + <td></td> + </tr> --> + </table> + </div> + + <div id="bkukarte" class="hell"> + <button name="bkuButton" type="button" onClick="bkuOnlineClicked();">KARTE</button> + </div> + + <div id="bkuhandy" class="hell"> + <button name="bkuButton" type="button" onClick="bkuHandyClicked();">HANDY</button> + </div> + + <div id="localBKU" style="display:none" class="hell"> + <hr> + <form method="get" id="moaidform" action="#AUTH_URL#"> + <input type="hidden" name="bkuURI" value="#LOCAL#"> + <input type="hidden" name="useMandate" id="useMandate"> + <input type="hidden" name="SSO" id="useSSO"> + <input type="hidden" name="CCC" id="ccc"> + <input type="hidden" name="MODUL" value="#MODUL#"> + <input type="hidden" name="ACTION" value="#ACTION#"> + <input type="submit" size="400" value="lokale BKU" class="sendButton" style="margin-top: 5px;"> + </form> + <p style="margin-bottom: 0px; margin-top: 3px;"> + <small>Alternativ können Sie eine lokal installierte BKU verwenden.</small> + </p> + </div> + + <div id="stork" class="hell" align="center"> + <div id="leftcontent" style="margin-bottom:10px"> + <h2 id="tabheader" class="dunkel"> + Home Country Selection + </h2> + </div> + <p> + <select name="cccSelection" id="cccSelection" size="1" style="width: 120px; margin-right: 5px;" > + <option value="BE">België/Belgique</option> + <option value="EE">Eesti</option> + <option value="ES">España</option> + <option value="IS">Ísland</option> + <option value="IT">Italia</option> + <option value="LI">Liechtenstein</option> + <option value="LT">Lithuania</option> + <option value="PT">Portugal</option> + <option value="SI">Slovenija</option> + <option value="FI">Suomi</option> + <option value="SE">Sverige</option> + </select> + <button name="bkuButton" type="button" onClick="storkClicked();">Send</button> + <a href="info_stork.html" target="_blank" class="infobutton" style="color:#FFF">i</a> + </p> + </div> + </div> + + <div id="metroDetected" style="display:none" class="hell"> + <p> + Anscheinend verwenden Sie Internet Explorer im Metro-Modus. Wählen Sie bitte "Auf dem Desktop anzeigen" aus den Optionen um die Karten-Anmeldung starten zu können. + </p> + </div> + + </div> +</body> +</html> diff --git a/id/server/idserverlib/src/main/resources/resources/templates/pvp_postbinding_template.html b/id/server/idserverlib/src/main/resources/resources/templates/pvp_postbinding_template.html index 1215c2b58..ccd85a38a 100644 --- a/id/server/idserverlib/src/main/resources/resources/templates/pvp_postbinding_template.html +++ b/id/server/idserverlib/src/main/resources/resources/templates/pvp_postbinding_template.html @@ -31,7 +31,7 @@ --> </style> - <form action="${action}" method="post"> + <form action="${action}" method="post" target="_parent"> <div> #if($RelayState)<input type="hidden" name="RelayState" value="${RelayState}"/>#end diff --git a/id/server/idserverlib/src/main/resources/resources/templates/sendAssertionFormFull.html b/id/server/idserverlib/src/main/resources/resources/templates/sendAssertionFormFull.html new file mode 100644 index 000000000..c4b7196b1 --- /dev/null +++ b/id/server/idserverlib/src/main/resources/resources/templates/sendAssertionFormFull.html @@ -0,0 +1,104 @@ +<html> +<head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> + <meta content="text/css" http-equiv="Content-Style-Type"> + <link rel="stylesheet" type="text/css" href="#CONTEXTPATH#/css/index.css"> + <link type="text/css" rel="stylesheet" href="#CONTEXTPATH#/css/2.0/stammzahl.css"> + <link type="text/css" rel="stylesheet" href="#CONTEXTPATH#/css/2.0/stylesnew.css"> + <link type="text/css" rel="stylesheet" href="#CONTEXTPATH#/css/2.0/stylesinput.css"> + +</head> + + +<body> + <div class="pageWidth"> + + <div id="pagebase"> + <div id="page"> + + <div id="header" class="header clearfix"> + <h1 class="main_header">MOA-ID 2.0 - Login Preview</h1> + +<!-- <ul id="servicenav"> + <li><a href="http://www.dsk.gv.at">Datenschutzkommission<span class="hidden">.</span></a></li> + <li><a href="http://www.stammzahlenregister.gv.at/site/5109/default.aspx">Stammzahlenregister<span class="hidden">.</span></a></li> + <li><a href="http://www.dsk.gv.at/DesktopDefault.aspx?alias=dvr">Datenverarbeitungsregister<span class="hidden">.</span></a></li> + <li><a href="http://www.dsk.gv.at/DesktopDefault.aspx?alias=dsken" lang="en" class="last-item">English<span class="hidden">.</span></a></li> + </ul> --> + + <div id="mainnavjump"></div> + <p id="homelink"><img src="#CONTEXTPATH#/img/2.0/logo.png" style="width: 250px" alt="EGIZ"></p> + <ul id="mainnav" class="clearfix"> +<!-- <li><a href="http://www2.egiz.gv.at">Home<span class="hidden">.</span></a></li> --> +<!-- <li><a href="http://www.stammzahlenregister.gv.at/site/5970/default.aspx">bPK<span class="hidden">.</span></a></li> + <li><a href="http://www.stammzahlenregister.gv.at/site/5981/default.aspx">Ergänzungsregister<span class="hidden">.</span></a></li> + <li class="selected"><a href="http://www.stammzahlenregister.gv.at/site/5983/default.aspx" class="current">Vollmachten<span class="hidden"> (gewählt)</span><span class="hidden">.</span></a></li> + <li><a href="http://www.stammzahlenregister.gv.at/site/6001/default.aspx">Veröffentlichungen<span class="hidden">.</span></a></li> --> + </ul> + + </div> + + + <br class="clearAll"> + + <div id="viewcontrol" class="switch"> + <div id="page1" class="case selected-case"> + <div style="margin-left: 0px;"> + +<!-- <h2 class="OA_header">Anmeldung an: #OAName#</h2> --> + + <div id="main" class="full"> + <div id="leftcontent" class="full"> + <h2 id="tabheader" class="dunkel full"> + Anmeldeinformationen: + + </h2> + + <div id="selectArea" class="hell full"> + <b>Anmeldung an:</b> + <p>#OAName#</p> + + +<!-- <div class="hell"> --> + <div id="leftbutton" class="hell full"> + <form method="post" id="moaidform_yes" action="#URL#"> + <input type="hidden" name="value" value="true"> + <input type="hidden" name="mod" value="#MODUL#"> + <input type="hidden" name="action" value="#ACTION#"> + <input type="submit" size="400" value="Ja" class="setAssertionButton_full"> + </form> + </div> + <div id="rightbutton" class="hell full"> + <form method="post" id="moaidform_no" action="#URL#"> + <input type="hidden" name="value" value="false"> + <input type="hidden" name="mod" value="#MODUL#"> + <input type="hidden" name="action" value="#ACTION#"> + <input type="submit" size="400" value="Nein" class="setAssertionButton_full"> + </form> + </div> + + </div> + </div> + </div> + </div> + </div> + + <br style="clear: both"> + <div id="footer" class="clearfix"> + +<!-- <h2 class="hidden">Über die Website der Stammzahlenregisterbehörde</h2> + <ul> + <li><a href="http://www.stammzahlenregister.gv.at/site/5115/Default.aspx" class="first-item">Impressum<span class="hidden">.</span></a></li> + <li><a href="http://www.stammzahlenregister.gv.at/site/6004/Default.aspx" lang="en">Sitemap<span class="hidden">.</span></a></li> + + <li><a href="http://www.stammzahlenregister.gv.at/site/5122/Default.aspx">Kontakt<span class="hidden">.</span></a></li> + <li><a href="http://www.stammzahlenregister.gv.at/site/6005/Default.aspx">Hilfe<span class="hidden">.</span></a></li> + </ul> --> + </div> + + + </div> + </div> + </div> +</body> +</html> diff --git a/id/server/idserverlib/src/main/resources/resources/templates/sendAssertionFormIFrame.html b/id/server/idserverlib/src/main/resources/resources/templates/sendAssertionFormIFrame.html new file mode 100644 index 000000000..46e8f46d8 --- /dev/null +++ b/id/server/idserverlib/src/main/resources/resources/templates/sendAssertionFormIFrame.html @@ -0,0 +1,42 @@ +<html> +<head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> + <meta content="text/css" http-equiv="Content-Style-Type"> + <link rel="stylesheet" type="text/css" href="#CONTEXTPATH#/css/index.css"> +</head> + + +<body> + <div id="leftcontent"> + <h2 id="tabheader" class="dunkel"> + Anmeldeinformationen: + + </h2> + + <div id="selectArea" class="hell"> + <b>Anmeldung an:</b> + <p>#OAName#</p> + + +<!-- <div class="hell"> --> + <div id="leftbutton" class="hell"> + <form method="post" id="moaidform_yes" action="#URL#"> + <input type="hidden" name="value" value="true"> + <input type="hidden" name="mod" value="#MODUL#"> + <input type="hidden" name="action" value="#ACTION#"> + <input type="submit" size="400" value="Ja" class="setAssertionButton"> + </form> + </div> + <div id="rightbutton" class="hell"> + <form method="post" id="moaidform_no" action="#URL#"> + <input type="hidden" name="value" value="false"> + <input type="hidden" name="mod" value="#MODUL#"> + <input type="hidden" name="action" value="#ACTION#"> + <input type="submit" size="400" value="Nein" class="setAssertionButton"> + </form> + </div> + + </div> + </div> +</body> +</html> |