asp.net - 多个项目的 ASP.NET ActiveDirectory 联合身份验证
问题描述
此时,我们公司正在托管多个(内部)项目,所有项目都在 Windows 身份验证下相互关联。有了这个 - 很容易 - 我们只需在 IIS 中设置 windows 窗体身份验证,所有这些都是安全的,需要一次登录,并且用户在所有这些中都登录了。
主要应用如下:
- 客户端应用程序(仅使用 html/javascript 构建)。为应用程序托管 index.html
- 服务器端应用程序(APS.NET MVC 项目,但我们主要将其用作 WebAPI。客户端应用程序调用后端资源,服务器端通常负责响应。
- 代理应用程序 - 将一些 webRequest 代理到客户端的远程资源。
在 IIS 下,我们的项目如下所示:
- Sites
- hostname
Client side application with
index.html
all of the other front end resources
web.config for clientside application
- ServerSideApplication (MVC4 project)
- its bin
- web.config for serverside application
- Proxy application (Strange ASP.NET project)
- its bin
- web.config for proxy application
URL是这样制作的
- https://hostname/index.html用于客户端应用程序
- https://hostname/SERVER/用于服务器端应用程序
- https://hostname/PROXY/用于代理应用程序
现在我的任务是为此系统启用联合身份验证,但我没有足够的知识将所有这些连接在一起!
我正在考虑创建新的 MVC 项目以获取一些示例,并选择“工作或学校帐户”和“本地”的身份验证。这将创建一个可以为我工作的应用程序。但这是针对单个应用程序的。我将如何处理客户端应用程序?我是否需要将其包装在 ASP.NET MVC 项目中,并设置与服务器端应用程序相同的设置?我注意到 - 如果我创建一个 WebAPI 项目,它会添加令牌身份验证。有了这个,我需要客户端应用程序额外的步骤来获取该令牌,并与请求一起发送?
我应该如何构建这个系统?不需要具体的代码示例,寻找解决方案的一些提示,一些经验将不胜感激。
解决方案
推荐阅读
- php - 当用户购买订阅时链接一堆工作的正确方法
- reactjs - 为什么我在使用 Firebase 的 signInWithEmailAndPassword 时收到“auth/network-request-failed”?
- python - 使用 Python 中的拆分函数从现有列值创建新列
- reactjs - 在使用小册子版本 1.7.1 和 react-leaflet 版本 2.8.3 中的 react-leaflet-draw 版本 0.19.8 创建新层时删除当前层
- linux - Linux中简单的Delphi程序中的分段错误-Windows很好
- visual-studio - 所有用户的 Visual Studio 设置
- python - 如何在使用 pytube 时停止不响应 tkinter?
- javascript - 用 useEffect 反应 addEventListener 问题
- sql - 如何拒绝除 SQL Server 中的少数用户之外的所有用户对表的插入权限
- asp.net-core - asp.net 核心,任何获取两个位置之间的距离和时间旅行的库