三层架构上的 SSL 问题

时间:2021-01-28 09:48:56

标签: angular ssl 3-tier

我们正在客户的基础设施上设置一个 Angular/MVC Web 应用程序,他们有几项严格的安全政策。我们在 Windows 上运行的 3 个独立 VM 中拥有 Web/App/DB。我们已经在 Web & App 服务器上安装了自签名 SSL 证书。不允许从 Web 连接到 DB,不允许从浏览器直接连接到应用程序服务器。

这里的问题是,当我从客户端浏览器 (IE/Edge) 访问 Web 应用程序 URL 时,我们可以看到呈现的页面,但在提交时我们没有从登录页面上的应用程序 API 服务器获得响应。客户端明确表示所有对应用服务器的请求都必须来自网络服务器,并且不会接受来自客户端浏览器的请求。

我想知道我的应用服务器是否认为该请求来自网络服务器或来自客户端浏览器?应用服务器将只接受来自网络服务器的 SSL(443) 连接。

任何信息都会有所帮助。

1 个答案:

答案 0 :(得分:-1)

您的 Angular/前端应用程序使用的 API 将始终从客户端的浏览器调用。您必须在 API 服务器中打开 HTTP 连接并面向公众,以便 Angular 应用程序可以从任何浏览器使用您的 API。要限制来自其他媒体而不是您的应用程序的 API,您必须在后端 API 中添加 CORS 策略。所以最终的解决方案是这样的:

  • 打开 HTTP 和 HTTPS 端口并公开面对您的 API 服务器
  • 在您的后端 API 中添加 CORS 政策,这样如果没有您的 Angular 应用程序,其他媒体就无法使用您的 API。
相关问题