gpt4 book ai didi

security - 如何将 html 页面嵌入到 jsp 中,同时避免重复登录并将 html 单独托管到 web 应用程序?

转载 作者:行者123 更新时间:2023-11-28 22:46:04 24 4
gpt4 key购买 nike

我有一个 tomcat 托管的网络应用程序,在该网络应用程序显示的一个 jsp 页面中,我正在使用 iframe 嵌入 html 文档。

我需要将 html 页面与网络应用程序分开,以便可以在不需要重新启动原始网络应用程序或编辑者访问网络应用程序的情况下更改它们。

同样重要的是,html 页面是安全的,不能以任何方式直接使用,即只能在此网络应用程序中或通过对用户进行身份验证才能使用。我还想避免让用户同时登录网络应用程序和 iframe 中的页面。

我不确定如何处理这个问题,我有一个 apache 服务器、php,当然还有 tomcat 可供我使用。

我可以想到两种方法,但不确定如何实现:

  1. 我从 jsp 页面传递身份验证详细信息,并将所有用户名等存储在其他地方以供 .htaccess 文件检查(不理想,因为这意味着要维护两个用户名/密码文件)
  2. 我以某种方式强制这些页面只有在该 iframe 中显示时才能访问,即使用网络应用程序作为身份验证器并使网页只能通过它访问。

目前我只能想到一种相当笨拙的双重登录方式,在 apache 服务器上使用 .htaccess,这将要求用户在查看文档之前再次输入用户名和密码。

谁能想到更优雅的解决方案?

谢谢!

CJ

最佳答案

最简单的方法是通过公共(public)网络服务器提供 HTML 页面,而只是将它们托管在公共(public)网络内容之外的某个固定路径中。然后你可以创建一个 servlet,它得到一个 InputStream HTML 文件的 FileInputStream并将其写入 OutputStream HttpServletResponse#getOutputStream() 获得的 servlet 响应通常的 Java IO 方式。

然后,在您的 JSP 中只需更改 <iframe> src 指向该 servlet,连同所需的 HTML 文件作为请求参数或路径信息。

<iframe src="htmlservlet/file.html" />

这样您就可以在一个地方控制身份验证,即 JSP/Servlet webapp。

关于security - 如何将 html 页面嵌入到 jsp 中,同时避免重复登录并将 html 单独托管到 web 应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3495334/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com