Groups | Blog | Home
all groups > iis security > april 2008 >

iis security : Getting SPNEGO HTTP headers to a CGI?


schlenk
4/23/2008 6:25:08 AM
Hi all,

trying to get the following setup to work:

Http SPNEGO SPNEGO via CORBA
IE <---------------------> IIS <---> CGI
<--------------------------------> AppServer

So basically using IIS as a primitve frontend for an AppServer that
can do Kerberos Auth itself (via SSPI or GSSAPI). The AppServer may be
on Windows but it may be on some Unix host, shouldn't matter.

Basically i would need to put the HTTP auth headers into the CGI
environment somehow but didn't find any IIS docs about it.

Not sure if this would work:

register an SPN HTTP/somevirtualhost.example.com@EXAMPLE.COM and let
the AppServer use that SPN with its call to SSPI AcquireCredentials()/
InitializeSecurityContext(). Now configure IIS somehow to pass all
Auth headers for http://somevirtualhost.example.com/.* to my CGI that
simply forwards stuff to the AppServer.

I know that its in principle unsafe to pass such info through CGI
environment vars, but for SPNEGO based Kerberos tokens it shouldn't
matter, those are designed for unsafe networks.

So is there a simple way to do this with IIS (handle auth stuff on the
CGI level)?

Ken Schaefer
4/24/2008 5:20:47 PM
Why are you trying to do this throught IIS rather than through a reverse
proxy?

Otherwise, look up how current proxies implement this functionality - I
presume it would be the same. The only issue is that when the client
connects to your IIS/CGI server, it does so using a particular FQDN (say:
iis.domain.com). It requests a service ticket from the KDC for
http/iis.domain.com. That service ticket is not going to be valid for your
backend app server. You may be able to use some DNS trickery to get around
this.

But the better way would be to use delegation if that's an option.

Cheers
Ken

--
My IIS blog: http://adopenstatic.com/blog

[quoted text, click to view]
AddThis Social Bookmark Button