【问题标题】:Authentication Application layer to reach backed services身份验证应用程序层以访问支持的服务
【发布时间】:2017-01-12 18:22:26
【问题描述】:

我有两个 Web 应用程序,一个在端口 8001 上运行,另一个在 8002 上运行,另一个独立的身份验证应用程序在 8090 上运行。

我希望每个请求都首先通过 auth-application:8090,然后决定是由 web-application:8001 还是由 web-application:8002 处理。

可能有多个身份验证应用程序,可以通过在这些和多个 Web 应用程序集群之上放置一个负载平衡器来决定,并且身份验证应用程序决定 Web 应用程序集群来转发请求。

在几个 web 应用程序集群上的含义,我的意思是一个集群是建立在 Java 应用程序上的,另一个集群是在 Django web 应用程序上组成的。我想根据请求头或请求参数来决定集群。

实现这一目标的最佳方式是什么?

我可以考虑使用在 nginx proxy_pass 块中调用的脚本,但我不确定它是如何工作的,或者即使这会起作用。这个问题可能有一些现有的实现;谷歌/亚马逊可能会使用这种架构吗?

【问题讨论】:

    标签: web-services authentication load-balancing reverse-proxy middleware


    【解决方案1】:

    通常认证流程是从应用程序发起的(认证服务器应该如何知道认证成功后你想去哪里?),所以流程应该是: 1. 用户到达应用 2. 应用程序检查用户是否通过身份验证 3.如果没有,重定向到认证服务 4. 让你进来(基于认证成功)

    所以用户首先应该知道他们想要什么应用程序(8001 或 8002)。如果这两个应用程序相同,那么它是您需要的负载均衡器,但仍然必须从应用程序启动身份验证流程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-25
      • 1970-01-01
      • 2013-07-11
      • 1970-01-01
      • 1970-01-01
      • 2021-06-16
      • 2020-06-07
      相关资源
      最近更新 更多