1

我有一个托管在 Tomcat 服务器中的应用程序(客户端应用程序),并且该应用程序必须作为选项卡集成到另一个应用程序(父应用程序)中。在父应用程序中,用户身份验证已完成。在父应用程序 Html 中,我们使用 iframe 来集成客户端。除了这个,一切都很好。问题是,如果有人知道他们可以访问客户端应用程序的 URL。我们怎样才能避免这种情况。?我们使用 JAVA、SERVLET、HTML、Tomacat 作为技术。

谢谢 :)

4

3 回答 3

1

一种可能的解决方案是基于令牌的身份验证。父应用程序应添加特殊令牌作为 URL 参数或 HTTP 标头。令牌应包含加密形式的身份验证信息。“客户端”应用程序应提取信息并决定身份验证是通过还是失败。为了保证没有人可以复制此令牌,然后未经身份验证访问您的应用程序,您应该将令牌设置为一次性的或在时间范围内受到限制。

于 2012-10-15T09:48:28.520 回答
1

您还可以在标题中使用 x-frame-options。我通过谷歌搜索找到了这篇文章:http ://www.jtmelton.com/tag/x-frame-options/

这将阻止您的应用程序加载到框架中,但您允许的域除外。您可能会检查浏览器兼容性,我不确定何时在不同的浏览器中实现了这一点。

此外,您可以检查“主机”和“推荐人”标头字段,以检查请求是否来自您信任的域,然后再发送响应。

OAuth 是授权第三方应用程序的标准。您应该将其作为身份验证方法进行检查。

这些都不会给你一个完全安全的应用程序。您应该考虑咨询安全专家。

于 2012-10-15T10:13:23.440 回答
0

从父应用程序添加cookie,从子应用程序获取该cookie并验证用户。(如果两者都在同一个域上运行)。

于 2012-10-15T10:00:11.833 回答