Using apache is probably how I will solve this in the short term.<div><br></div><div>It seems though, if there was some way to determine what public key was given by the "other" side of an ssl connection, then one could pretty much implement authentication outside of the ssl layer.</div>
<div><br></div><div>That may not be too much of a stretch as far as modifications to the open ssl code goes. I'm still playing with the openssl package and learning how it works.</div><div><br></div><div><br><br><div class="gmail_quote">
On Wed, Jan 5, 2011 at 4:12 PM, Neil Van Dyke <span dir="ltr"><<a href="mailto:neil@neilvandyke.org">neil@neilvandyke.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Curtis Dutton wrote at 01/05/2011 07:37 AM:<div class="im"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I am interested in implementing authentication via client browser certificates with a racket webserver.<br>
</blockquote>
<br></div>
One way I have seen HTTPS SSL client certificate authentication done for Racket (actually, PLT Scheme, a while ago) on the server side is to simply use Apache as a front-end Web Server, and have an Apache module do the authentication before the connection gets to Racket. Then your Racket code can get from Apache a string of a DN or some other identifying info from the valid certificate, which you can use for authorization or possibly additional authentication. I think that will do everything you want, including letting you lock out users (based on DN, without having to mess with cert revocation lists).<br>
<br>
There might also be other reasons to use a front-end HTTPS server in front of your Racket Web Server, so perhaps you're already doing this. If for some reason you wanted connections direct to your Racket Web Server, not through a front-end like Apache, I don't know whether Racket's SSL support currently supports client cert authn on the server side.<br>
<font color="#888888">
<br>
-- <br>
<a href="http://www.neilvandyke.org/" target="_blank">http://www.neilvandyke.org/</a><br>
</font></blockquote></div><br></div>