Estoy intentando configurar SSO con IIS 10 y Tomcat 9. Quiero usar la autenticación de Windows en IIS y pasar el nombre de usuario autenticado a Tomcat. Tuve esto trabajando con Tomcat 8.5, sin embargo, después de actualizar a Tomcat 9, no puedo hacer que funcione el método ISAPI_redirect.dll.

Las búsquedas exhaustivas han dado lugar a sugerencias de que ISAPI ya no es el camino a seguir. Intenté usar ARR, pero como reenvía las solicitudes antes de la autenticación, siempre obtendrá un REMOTE_USER y AUTH_USER en blanco. Por lo tanto, ARR no es una opción viable sin una forma de terceros para pasar los encabezados de autenticación.

Otra sugerencia que vi fue usar HttpPlatformHandler . Sin embargo, las descargas están actualmente interrumpidas en el sitio de Microsoft y parece que el módulo está siendo reemplazado por ASP.NET Core . Sin embargo, no puedo encontrar ninguna información sobre cómo usar ASP.NET Core para realizar el proxy que quiero.

¿Cuál es la forma actualmente recomendada de enviar solicitudes de proxy de IIS a Tomcat y pasar el usuario autenticado?

Editar: La descarga de HttpPlatformHandler está respaldada. Sin embargo, todavía no es una opción, ya que tiene el mismo problema que ARR y se ejecuta antes de la autenticación. Parece que ISAPI es la única opción, además de las aplicaciones de terceros, para pasar información de encabezado autenticada.

answer

La DLL ISAPI todavía parece ser la única forma de hacer esto si está intentando usar la autenticación de Windows en IIS y pasar el nombre de usuario autenticado en los encabezados

Pude hacer que ISAPI funcionara. Creo que lo que solucionó fue eliminar web.config en C: \ inetpub \ wwwroot. Había eliminado las reescrituras de URL que hice para mi intento de ARR desde la interfaz IIS, pero había una entrada persistente en ese archivo.