<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
span.EmailStyle19
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style>
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72" style="word-wrap:break-word">
<div class="WordSection1">
<p class="MsoNormal">Oh to add this what we seen when we simply dumber all the request.getHeaders() from the servlet:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">host ; idm.utah.edu:8443 user-agent ; Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0) Gecko/20100101 Firefox/78.0 accept ; text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 accept-language ; en-US,en;q=0.5
 accept-encoding ; gzip, deflate, br cookie ; JSESSIONID=058CFFF504E601162EBE9BD6F889ED3A; _shibsession_64656661756c7468747470733a2f2f636173366465762d322e69646d2e757461682e656475=_65a41beb2761d7dca8ef723eea38544d upgrade-insecure-requests ; 1 shib-cookie-name
 ; shib-session-id ; _65a41beb2761d7dca8ef723eea38544d shib-session-index ; _00fa533ec73d618035a2560bf9e590e8 shib-session-expires ; 1617062425 shib-session-inactivity ; 1617037242 shib-identity-provider ; https://idp.idm.utah.edu/idp/shibboleth shib-authentication-method
 ; urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport shib-authentication-instant ; 2021-03-29T16:00:40.159Z shib-authncontext-class ; urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport shib-authncontext-decl ; shib-assertion-count
 ; shib-handler ; https://idpidm.utah.edu/Shibboleth.sso subject-id ; pairwise-id ; eppn ; affiliation ; entitlement ; persistent-id ; shib-application-id ; default remote_user ; x-forwarded-for ; 155.101.242.241 x-forwarded-host ; idm.utah.edu x-forwarded-server
 ; idm.utah.edu connection ; Keep-Alive Hello Bryan <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span style="font-size:12.0pt;color:black">From: </span></b><span style="font-size:12.0pt;color:black">users <users-bounces@shibboleth.net> on behalf of Bryan Wooten <bryan.wooten@utah.edu><br>
<b>Reply-To: </b>"users@shibboleth.net" <users@shibboleth.net><br>
<b>Date: </b>Monday, March 29, 2021 at 10:37 AM<br>
<b>To: </b>"users@shibboleth.net" <users@shibboleth.net><br>
<b>Subject: </b>[Ext] Help setting up a Java app protected by a Shib SP?<o:p></o:p></span></p>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><b><span style="font-size:10.5pt;font-family:"Courier New";color:red">WARNING: Stop. Think. Read. This is an external email.</span></b><o:p></o:p></p>
<p class="MsoNormal">Here is my configuration:<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Server A – Docker Shib SP <o:p></o:p></p>
<p class="MsoNormal">Server B – Simple Java Servlet running on Tomcat<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Server A reverse proxies to the Java url on Server B.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Hitting the Java servlet URL I get re-directed to our IDP and login works.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">But for the life of me I can’t seem to be able to find the Attributes being released by the IDP to the SP/app.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">I thought they would be simple http headers, but that is wrong. So doing some reading I need to configure both the SP and Tomcat it use AJP? Also there was a thread about tomcat request.getAttributeNames() being broken. So maybe we need
 to do request.getAttribute(“someName”)?<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Am I missing some configuration? Or can someone point to some java code that uses servlet request object to get attributes from the SP?<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">Any help appreciated, especially for such a noob question.<o:p></o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">-Bryan<o:p></o:p></p>
</div>
</body>
</html>