|
1 |
| -/** |
| 1 | +/* |
2 | 2 | * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
|
3 | 3 | *
|
4 | 4 | * Copyright (c) 2006 Sun Microsystems Inc. All Rights Reserved
|
|
24 | 24 | *
|
25 | 25 | * $Id: SAMLPOSTProfileServlet.java,v 1.4 2009/06/12 22:21:39 mallas Exp $
|
26 | 26 | *
|
27 |
| - * Portions Copyrighted 2011-2013 ForgeRock AS |
| 27 | + * Portions Copyrighted 2011-2016 ForgeRock AS |
28 | 28 | */
|
29 | 29 | package com.sun.identity.saml.servlet;
|
30 | 30 |
|
|
65 | 65 | import javax.servlet.http.HttpServletRequest;
|
66 | 66 | import javax.servlet.http.HttpServletResponse;
|
67 | 67 |
|
| 68 | +import org.owasp.esapi.ESAPI; |
| 69 | + |
68 | 70 | /**
|
69 | 71 | * This servlet is used to support SAML 1.x Web Browser/POST Profile.
|
70 | 72 | */
|
@@ -233,18 +235,19 @@ public void doGet(HttpServletRequest request, HttpServletResponse response)
|
233 | 235 | LogUtils.REDIRECT_TO_URL, data, token);
|
234 | 236 | }
|
235 | 237 | response.setContentType("text/html; charset=UTF-8");
|
236 |
| - PrintWriter out = response.getWriter(); |
237 |
| - out.println("<HTML>"); |
238 |
| - out.println("<BODY Onload=\"document.forms[0].submit()\">"); |
239 |
| - out.println("<FORM METHOD=\"POST\" ACTION=\"" + destSiteUrl + "\">"); |
240 |
| - out.println("<INPUT TYPE=\"HIDDEN\" NAME=\"" + |
241 |
| - SAMLConstants.POST_SAML_RESPONSE_PARAM + "\" "); |
242 |
| - out.println("VALUE=\"" + encodedResponse + "\">"); |
243 |
| - out.println("<INPUT TYPE=\"HIDDEN\" NAME=\"" + |
244 |
| - SAMLConstants.POST_TARGET_PARAM + "\" VALUE=\"" + target |
245 |
| - + "\"> </FORM>"); |
246 |
| - out.println("</BODY></HTML>"); |
247 |
| - out.close(); |
| 238 | + try (PrintWriter out = response.getWriter()) { |
| 239 | + out.println("<HTML>"); |
| 240 | + out.println("<BODY Onload=\"document.forms[0].submit()\">"); |
| 241 | + out.println("<FORM METHOD=\"POST\" ACTION=\"" |
| 242 | + + ESAPI.encoder().encodeForHTMLAttribute(destSiteUrl) + "\">"); |
| 243 | + out.println("<INPUT TYPE=\"HIDDEN\" NAME=\"" + |
| 244 | + SAMLConstants.POST_SAML_RESPONSE_PARAM + "\" "); |
| 245 | + out.println("VALUE=\"" + ESAPI.encoder().encodeForHTMLAttribute(encodedResponse) + "\">"); |
| 246 | + out.println("<INPUT TYPE=\"HIDDEN\" NAME=\"" + |
| 247 | + SAMLConstants.POST_TARGET_PARAM + "\" VALUE=\"" + ESAPI.encoder().encodeForHTMLAttribute(target) |
| 248 | + + "\"> </FORM>"); |
| 249 | + out.println("</BODY></HTML>"); |
| 250 | + } |
248 | 251 | }
|
249 | 252 |
|
250 | 253 | private SAMLServiceManager.SiteEntry getDestSite(String target) {
|
|
0 commit comments