<html xmlns:v="urn:schemas-microsoft-com:vml" 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=us-ascii">
<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:0cm;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:#0563C1;
text-decoration:underline;}
.MsoChpDefault
{mso-style-type:export-only;
font-family:"Calibri",sans-serif;
mso-fareast-language:EN-US;}
@page WordSection1
{size:612.0pt 792.0pt;
margin:70.85pt 3.0cm 70.85pt 3.0cm;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="ES" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal"><span lang="DE">Dear experts,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="DE"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">I would like to host an application protected by Shibboleth SP behind a reverse proxy, like so:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><a href="https://samltest.example.org:4433/mySAMLTest">https://samltest.example.org:4433/mySAMLTest</a> ->
<a href="https://samltest.example.org/mySAMLTest">https://samltest.example.org/mySAMLTest</a><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">The reverse proxy is an Apache, the application an IIS site hosted on port 443.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">However, I do not get the ACS URL set properly in the SAML request. The SAML request always contains the ACS URL without the port number.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">What I have tried already in shibboleth2.xml:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><Site id="3" name="samltest.example.org" scheme=”https” port=”4433” /><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">combined with<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><RequestMap><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Host name="samltest.example.org" scheme=”https” port=”4433” ><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Path name="mySAMLTest" authType="shibboleth" requireSession="true"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </Host><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Result: /mySAMLTest is not protected any more<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><Sessions lifetime="28800" timeout="3600" relayState="ss:mem"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> checkAddress="false" handlerSSL="true" handlerURl=”https://samltest.example.org:4433/Shibboleth.sso” cookieProps="https"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Result: ACS URL https://samltest.example.org:4433/Shibboleth.sso/SAML2/POST is set properly, but when the IdP redirects to it, it returns error 404<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><Handler type="MetadataGenerator" Location="/Metadata" signing="false"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <EndpointBase><a href="https://%20samltest.example.org:4433/Shibboleth.sso%3c/EndpointBase">https:// samltest.example.org:4433/Shibboleth.sso</EndpointBase</a>><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"></Handler><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Result: ACS URL in Metadata file is set properly, but in the SAML request the port number is still missing.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">From my understanding, I have to tell the Shibboleth SP somehow to add the port number to the ACS URL when creating the SAML request, I am just not able to figure out how.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Any help would be very much appreciated.<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Thanks in advance and br,<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Elmar<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US">Here is the whole shibboleth2.xml:<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><SPConfig xmlns="urn:mace:shibboleth:3.0:native:sp:config"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> xmlns:conf="urn:mace:shibboleth:3.0:native:sp:config"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> clockSkew="180"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <OutOfProcess tranLogFormat="%u|%s|%IDP|%i|%ac|%t|%attr|%n|%b|%E|%S|%SS|%L|%UA|%a">
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Extensions>
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Library path="plugins.so" fatal="true"/>
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </Extensions>
<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </OutOfProcess> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <InProcess><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <ISAPI normalizeRequest="true" safeHeaderNames="true"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Site id="3" name="samltest.example.org"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </ISAPI><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </InProcess><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <RequestMapper type="Native"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <RequestMap><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Host name="samltest.example.org"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Path name="mySAMLTest" authType="shibboleth" requireSession="true"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </Host><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </RequestMap><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </RequestMapper><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <ApplicationDefaults entityID="https://samltest.example.org:4433/shibboleth"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> REMOTE_USER="eppn subject-id pairwise-id persistent-id"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> cipherSuites="DEFAULT:!EXP:!LOW:!aNULL:!eNULL:!DES:!IDEA:!SEED:!RC4:!3DES:!kRSA:!SSLv2:!SSLv3:!TLSv1:!TLSv1.1" signing="true"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Sessions lifetime="28800" timeout="3600" relayState="ss:mem"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> checkAddress="false" handlerSSL="true" cookieProps="https"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <SSO entityID="https://idp.example.org"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> discoveryProtocol="SAMLDS" discoveryURL="https://ds.example.org/DS/WAYF"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> SAML2<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </SSO><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Logout>SAML2 Local</Logout><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <LogoutInitiator type="Admin" Location="/Logout/Admin" acl="127.0.0.1 ::1" /><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Handler type="MetadataGenerator" Location="/Metadata" signing="false"><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <EndpointBase>https://samltest.example.org:4433/Shibboleth.sso</EndpointBase><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </Handler><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Handler type="Status" Location="/Status" acl="127.0.0.1 ::1"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Handler type="Session" Location="/Session" showAttributeValues="false"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <!-- JSON feed of discovery information. --><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Handler type="DiscoveryFeed" Location="/DiscoFeed"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </Sessions><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <Errors supportContact="root@localhost"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> helpLocation="/about.html"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> styleSheet="/shibboleth-sp/main.css"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <MetadataProvider type="XML" validate="true"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> url="https://idp.example.org/pf/federation_metadata.ping?PartnerSpId=https://samltest.example.org:4433/shibboleth" backingFilePath="metadata-saml20.xml" maxRefreshDelay="7200"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <AttributeExtractor type="XML" validate="true" reloadChanges="false" path="attribute-map.xml"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <AttributeFilter type="XML" validate="true" path="attribute-policy.xml"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <CredentialResolver type="File" use="signing"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> key="sp-signing-key.pem" certificate="sp-signing-cert.pem"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <CredentialResolver type="File" use="encryption"<o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> key="sp-encrypt-key.pem" certificate="sp-encrypt-cert.pem"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> </ApplicationDefaults><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <SecurityPolicyProvider type="XML" validate="true" path="security-policy.xml"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"> <ProtocolProvider type="XML" validate="true" reloadChanges="false" path="protocols.xml"/><o:p></o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"><o:p> </o:p></span></p>
<p class="MsoNormal"><span lang="EN-US"></SPConfig><o:p></o:p></span></p>
</div>
</body>
</html>