Tengo la tarea de generar un PDF desde una página HTML en un sitio web ASP.NET. (Algo que los usuarios pueden guardar distancia/impresión muy bien)Haciendo que Windows Authentication y WKHTMLToPDF jueguen bien
he encontrado que wkhtmltopdf hace el trabajo muy bien haber mirado esto:
Calling wkhtmltopdf to generate PDF from HTML
Sin embargo, tengo un problema. Nuestro sitio web es un sitio de intranet y usa la Autenticación de Windows. Puedo pasar mis credenciales a WKHTMLToPDF usando --username y --password y demostrarme a mí mismo que la página web se genera como es de esperar.
El problema es este: ¿Qué hacer para cada usuario diferente que entra en nuestro sistema? Puedo pensar en una serie de posibles soluciones que pueden no funcionar y esperaba que alguien me diera algunas opiniones/orientación, ya que parece que he llegado al final de mis investigaciones.
soluciones posibles:
- ¿Hay alguna forma en ASP.NET que puedo extraer de usuario y contraseña de los usuarios credenciales para pasar a wkhtmltopdf? Sospecho que la respuesta a esto es "no y por razones sensatas"
- ¿Es posible ejecutar el Proceso y pasar las credenciales de los Usuarios? Puedo ver que es posible configurar el nombre de usuario/contraseña en el proceso (aunque no sé cómo pasaría esto de las credenciales ya que la contraseña parece no estar expuesta). ¿Quizás hay otro método para pasar credenciales directamente a Process?
- Podría crear un sitio web PDFGenerator separado que no use la autenticación de Windows. Podría exportar el HTML/CSS/imágenes desde el sitio web protegido a un directorio compartido y luego redirigir a los usuarios al sitio web de PDFGenerator para generar el PDF desde el HTML sin tener que preocuparme por la autenticación (y limpiaría HTML, etc. después de PDF generado).
Sospecho que 3 es la solución que voy a terminar persuing pero ya que es esencialmente una gran solución para hacer frente al problema de autenticación Estoy muy abierto a mejores sugerencias o ayudar en 1 o 2!
Esto no hace exactamente lo que necesito, pero no es diferente al enfoque que estoy usando en mi prototipo en el momento. Básicamente, tengo una cuenta de ventanas ficticias que estoy usando con fines de autenticación. Así que almaceno los créditos de la cuenta en forma encriptada en el web.config y los utilizo cuando llamo a wkhtmltopdf. No es glorioso, pero parece funcionar y, por lo tanto, puedo usarlo ... –