gpt4 book ai didi

java - 应该在哪里进行身份验证 : "Webserver or AppServer"?

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

考虑以下架构,它有两个 Web 服务器(用于平衡)和大约 10 个用于 Servlet 处理的 Java 应用程序服务器。

您认为哪里是进行身份验证的正确位置。在 ApacheWebserver 中或应用程序服务器之一的自定义代码中?

如果我在 Web 服务器上进行身份验证,我们应该如何处理 OPenId 等自定义内容?

编辑:选择其中之一对性能、可扩展性和安全性有何影响?

最佳答案

与往常一样,架构问题的答案取决于很多因素。

  • 网络服务器是否执行任何需要保护的操作(例如提供静态内容)。那么您必须在网络服务器上(或之前)进行身份验证

  • 网络服务器或应用程序服务器是否接近最大容量?尝试在侧面进行身份验证

  • 网络服务器可以处理所有身份验证要求吗?或者是所需的逻辑/信息在 Web 服务器上不可用(例如 SO 的声誉,它会影响用户可以做什么)。支持 OpenId 的要求可能是一个限制因素。

  • 最后请注意,没有那么明显的攻击可能会受到您进行身份验证的位置的影响。例如如果 Web 服务器处理 404(未找到),但应用程序服务器处理身份验证 (401),则攻击者即使没有获得访问权限,也可以查明资源是否可用。由于如果需要访问应用服务器,回复将花费更长的时间,因此当在这两种情况下返回相同的响应时,此信息甚至可能泄露给攻击者。

关于java - 应该在哪里进行身份验证 : "Webserver or AppServer"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9858735/

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