diff options
Diffstat (limited to 'id/server/proxy/src')
-rw-r--r-- | id/server/proxy/src/main/webapp/WEB-INF/web.xml | 82 | ||||
-rw-r--r-- | id/server/proxy/src/main/webapp/errorpage-proxy.jsp | 50 | ||||
-rw-r--r-- | id/server/proxy/src/main/webapp/message-proxy.jsp | 20 |
3 files changed, 152 insertions, 0 deletions
diff --git a/id/server/proxy/src/main/webapp/WEB-INF/web.xml b/id/server/proxy/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 000000000..b11606fe0 --- /dev/null +++ b/id/server/proxy/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,82 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN' 'http://java.sun.com/dtd/web-app_2_3.dtd'> +<web-app> + <display-name>MOA ID Proxy</display-name> + <description>MOA ID Proxy Service</description> + + <filter> + <filter-name>ParameterInOrder Filter</filter-name> + <filter-class>at.gv.egovernment.moa.id.util.ParameterInOrderFilter</filter-class> + </filter> + <filter-mapping> + <filter-name>ParameterInOrder Filter</filter-name> + <url-pattern>/*</url-pattern> + </filter-mapping> + + <servlet> + <servlet-name>Proxy</servlet-name> + <display-name>Proxy</display-name> + <description>Forwards requests to the online application</description> + <servlet-class>at.gv.egovernment.moa.id.proxy.servlet.ProxyServlet</servlet-class> + <load-on-startup>0</load-on-startup> + </servlet> + <servlet> + <servlet-name>ConfigurationUpdate</servlet-name> + <display-name>ConfigurationUpdate</display-name> + <description>Update MOA-ID Proxy configuration from the configuration file</description> + <servlet-class>at.gv.egovernment.moa.id.proxy.servlet.ConfigurationServlet</servlet-class> + </servlet> + + <!-- JSP servlet --> + <servlet> + <servlet-name>jspservlet</servlet-name> + <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> + </servlet> + + <!-- servlet mapping for jsp pages --> + <!-- errorpage.jsp (customizeable) --> + <servlet-mapping> + <servlet-name>jspservlet</servlet-name> + <url-pattern>/errorpage-proxy.jsp</url-pattern> + </servlet-mapping> + <!-- message-proxy.jsp (customizeable) used for non error messages (e.g. ConfigurationUpdate) --> + <servlet-mapping> + <servlet-name>jspservlet</servlet-name> + <url-pattern>/message-proxy.jsp</url-pattern> + </servlet-mapping> + + <servlet-mapping> + <servlet-name>ConfigurationUpdate</servlet-name> + <url-pattern>/ConfigurationUpdate</url-pattern> + </servlet-mapping> + <servlet-mapping> + <servlet-name>Proxy</servlet-name> + <url-pattern>/*</url-pattern> + </servlet-mapping> + <session-config> + <session-timeout>30</session-timeout> + </session-config> + <error-page> + <error-code>500</error-code> + <location>/errorpage.jsp</location> + </error-page> + <security-constraint> + <web-resource-collection> + <web-resource-name>ConfigurationUpdate</web-resource-name> + <url-pattern>/ConfigurationUpdate</url-pattern> + </web-resource-collection> + <auth-constraint> + <role-name>moa-admin</role-name> + </auth-constraint> + </security-constraint> + <login-config> + <auth-method>BASIC</auth-method> + <realm-name>UserDatabase</realm-name> + </login-config> + <security-role> + <description> + The role that is required to log in to the moa Application + </description> + <role-name>moa-admin</role-name> + </security-role> +</web-app> diff --git a/id/server/proxy/src/main/webapp/errorpage-proxy.jsp b/id/server/proxy/src/main/webapp/errorpage-proxy.jsp new file mode 100644 index 000000000..07f3e7f69 --- /dev/null +++ b/id/server/proxy/src/main/webapp/errorpage-proxy.jsp @@ -0,0 +1,50 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<%@ page contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<title>Ein Fehler ist aufgetreten</title>
+</head>
+<% Throwable exceptionThrown = (Throwable)request.getAttribute("ExceptionThrown");
+ String errorMessage = (String)request.getAttribute("ErrorMessage");
+ String wrongParameters = (String)request.getAttribute("WrongParameters");
+%>
+
+<body>
+<h1>Fehler bei der Anmeldung</h1>
+<p>Bei der Anmeldung ist ein Fehler aufgetreten.</p>
+
+<% if (errorMessage != null) { %>
+<p>
+<%= errorMessage%><br>
+</p>
+<% } %>
+<% if (exceptionThrown != null) { %>
+<p>
+<%= exceptionThrown.getMessage()%>
+</p>
+<% } %>
+<% if (wrongParameters != null) { %>
+<p>Die Angabe der Parameter ist unvollständig.<br></p>
+<b> <%= wrongParameters %> </b><br>
+<p>
+ Beispiele für korrekte Links zur MOA-ID Authentisierung sind:
+</p>
+<p>
+<tt><a href="https://<MOA-URL>/StartAuthentication?Target=<Geschäftsbereich>&OA=<OA-URL>&Template=<Template-URL>"></tt>
+</p>
+<p>
+<tt><a href="https://<MOA-URL>/SelectBKU?Target=<Geschäftsbereich>&OA=<OA-URL>&Template=<Template-URL>&BKUSelectionTemplate=<BKU-Template-URL>"></tt>
+</p>
+<p>
+Im Falle einer Applikation aus dem privatwirtschaftlichen Bereich (type="businessService") entfällt die Angabe des <i>Target</i> Parameters:
+</p>
+<p>
+<tt><a href="https://<MOA-URL>/StartAuthentication?OA=<OA-URL>&Template=<Template-URL>"></tt>
+</p>
+<p>
+<tt><a href="https://<MOA-URL>/SelectBKU?OA=<OA-URL>&Template=<Template-URL>&BKUSelectionTemplate=<BKU-Template-URL>"></tt>
+</p>
+<p>Die Angabe der Parameter <tt>"Template"</tt> und <tt>"BKUSelectionTemplate"</tt> ist optional.</p>
+<% } %>
+</body>
+</html>
\ No newline at end of file diff --git a/id/server/proxy/src/main/webapp/message-proxy.jsp b/id/server/proxy/src/main/webapp/message-proxy.jsp new file mode 100644 index 000000000..0d970898a --- /dev/null +++ b/id/server/proxy/src/main/webapp/message-proxy.jsp @@ -0,0 +1,20 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<%@ page contentType="text/html; charset=UTF-8" %>
+<html>
+<head>
+<title>MOA-ID Proxy</title>
+</head>
+<% String message = (String)request.getAttribute("Message");
+%>
+
+<body>
+<h1>MOA-ID Proxy</h1>
+
+<% if (message != null) { %>
+<p>
+<%= message%><br>
+</p>
+<% } %>
+
+</body>
+</html>
\ No newline at end of file |