我面临着从 ASP.NET 网站上的 HTML 页面生成 PDF 的任务。(用户可以保存/打印好的东西)
我发现 WKHTMLToPDF 已经很好地完成了这项工作:
但是,我有一个问题。我们的网站是一个 Intranet 网站并使用 Windows 身份验证。我可以使用 --username 和 --password 将我的凭据传递给 WKHTMLToPDF,并向自己证明该网页是如您所愿生成的。
问题是这样的:对于进入我们系统的每个不同的用户要做什么?我可以想到一些可能/可能不起作用的解决方案,我希望有人能给我一些意见/指导,因为我的研究似乎已经结束。
可能的解决方案:
- 在 ASP.NET 中有什么方法可以从用户凭据中提取用户名和密码以传递到 WKHTMLToPDF?我怀疑这个问题的答案是“不,并且出于合理的原因”
- 是否可以运行进程并通过用户凭据?我可以看到可以在进程中设置用户名/密码(尽管我不知道如何从凭据中传递它,因为密码似乎没有公开)。也许还有另一种将凭据直接传递给 Process 的方法?
- 我可以创建一个不使用 Windows 身份验证的单独 PDFGenerator 网站。然后我可以将 HTML/CSS/images 从安全网站移植到共享目录,然后将用户重定向到 PDFGenerator 网站以实际从 HTML 生成 PDF,而不必担心身份验证(并且会在 PDF 之后清理 HTML 等)生成)。
我怀疑 3 是我最终会说服的解决方案,但由于这本质上是处理身份验证问题的一个重要解决方法,我非常愿意接受更好的建议或 1 或 2 的帮助!