Update sample to match current usage.
[java-idp.git] / webApplication / sample.jsp
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!DOCTYPE html 
3         PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" 
4         "DTD/xhtml1-strict.dtd">
5         <%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
6         <%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
7         
8         <jsp:useBean id="logoLocation" scope="application" class="java.lang.String"/>
9         
10 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
11 <head>
12         <link rel="stylesheet" type="text/css" href="main.css" />
13         <title>Shibboleth Protected Page</title>
14 </head>
15
16 <body>
17 <div class="head">
18 <img src="<bean:write name="logoLocation" />" alt="Logo" />
19 <h1>Shibboleth Inter-institutional Access Control System</h1>
20 </div>
21
22 <p>This is an example of a page protected by the Shibboleth system.</p>
23
24 <p>Because of the "require valid-user" rule, any user from a trusted
25 Identity Provider is allowed access, once they establish a session using
26 Shibboleth.</p>
27
28 <p>Here are some pieces of information I can tell about you using
29 the information Shibboleth gives me:<p>
30
31 <p>
32 <ul>
33 <%
34 String h = null;
35 java.util.Enumeration headers = request.getHeaderNames();
36 while (headers != null && headers.hasMoreElements()) {
37         h = (String)headers.nextElement();
38         if (!h.equals("Shib-Attributes") && !h.equals("Shib-Application-ID") && ((h.startsWith("Shib-") || h.equalsIgnoreCase("remote_user")))) {
39 %>
40                 <li><%= h %> is: <b><%= request.getHeader(h) %></b></li>
41 <%
42         }
43 %>
44 <% } %>
45 </ul>
46 </p>
47
48 <p>The raw SAML attribute assertion I received is below. If it makes sense to
49 you, seek medical attention immediately.</p>
50 <%
51 String encoded=request.getHeader("Shib-Attributes");
52 String a = "";
53 if (encoded != null && !encoded.equals("")) {
54         byte[] decoded=org.apache.xml.security.utils.Base64.decode(encoded.getBytes());
55         a = new String(decoded);
56 }
57 %>
58
59 <textarea wrap="soft" rows="20" cols="80"><%= a %></textarea>
60
61 </body>
62 </html>