<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Wed, May 16, 2018 at 10:32 AM, Jack Hill <span dir="ltr"><<a href="mailto:jackhill@duke.edu" target="_blank">jackhill@duke.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I'm interested in using mod_shib with Apache to serve applications via reverse proxy. I would like the shib SP to be able to pass along attributes to the application. The obvious (at last to me) way to do this is to pass the attributes via request headers. However, I've read the big warnings on <a href="https://wiki.shibboleth.net/confluence/display/SHIB2/NativeSPSpoofChecking" rel="noreferrer" target="_blank">https://wiki.shibboleth.net/co<wbr>nfluence/display/SHIB2/NativeS<wbr>PSpoofChecking</a> am reluctant to take that approach, and am interested in doing the work to avoid using request headers. Unfortunately, I'm not sure what that work is. Is it possible to to use shib in this way with a reverse proxy? If so, how? (In particular, I'm interested in reverse proxying Ruby's Puma webserver and also Tomcat via ajp://)<br></blockquote><div><br></div><div>For AJP, you can use mod_proxy_ajp.</div><div><br></div><div>There was some considerable discussion on this recently in a tangentially related thread:</div><div><a href="http://shibboleth.1660669.n2.nabble.com/TIP-Apache-module-to-authenticate-a-NativeSPApacheConfig-to-the-backend-app-and-sign-attributes-tp7638629p7638654.html">http://shibboleth.1660669.n2.nabble.com/TIP-Apache-module-to-authenticate-a-NativeSPApacheConfig-to-the-backend-app-and-sign-attributes-tp7638629p7638654.html</a><br></div><div><br></div><div>If you're set on Puma vs uWSGI (Peter's recommendation in that post) with mod_proxy_uwsgi, then my quick googling suggests no alternative to headers for Puma, or something like the JWT approach that started the thread. (There are other ways to add more assurance to the communications with those headers, which Peter also suggests in there.)</div><div><br></div><div>(I don't have any personal recommendations for Ruby, but I did run a production Python application on uWSGI for several years, and it never gave me any problems.)</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Also, I don't think I fully understand the risk of using request headers. I understand that these can be set by an untrusted client, but I don't know why it is error-prone and risky to scrub the known headers that shib sets. Enlightenment on this topic would be appreciated.<br></blockquote><div><br></div><div>As is so often the case with this sort of problem, can you think of everything a wily attacker might come up with to fool the system?</div><div><br></div><div>Greg</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Best,<br>
Jack<span class="gmail-HOEnZb"><font color="#888888"><br>
-- <br>
For Consortium Member technical support, see <a href="https://wiki.shibboleth.net/confluence/x/coFAAg" rel="noreferrer" target="_blank">https://wiki.shibboleth.net/co<wbr>nfluence/x/coFAAg</a><br>
To unsubscribe from this list send an email to <a href="mailto:users-unsubscribe@shibboleth.net" target="_blank">users-unsubscribe@shibboleth.n<wbr>et</a><br>
</font></span></blockquote></div><br></div></div>