There is more than one way to implement the SSO or Windows Native Authentication (Automatic login) with a Microsoft network.
This Blog post might give you some ideas:
These are independent of the APEX Listener and use the same concept for getting the user name with the owa_util.get_cgi_env('REMOTE_USER') call.
Tim St. Hilaire
I tried Waffle and Spnego however they don't propagate the REMOTE_USER.
Without that the client would have to change their code on a number of applications.
Check all of the CGI variables presented by the web server. Also - Test OUTSIDE of APEX first. There are example scripts included with each that can assure that technology is configured properly before connecting APEX to it.