【问题标题】:ASP.NET ActiveDirectory Federation authentication for multiple projects多个项目的 ASP.NET ActiveDirectory 联合身份验证
【发布时间】:2020-02-18 11:50:42
【问题描述】:

此时,我们公司正在托管多个(内部)项目,所有项目都在 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

网址是这样制作的

现在我的任务是为此系统启用联合身份验证,但我没有足够的知识将所有这些连接在一起!

我正在考虑创建新的 MVC 项目以获取一些示例,并选择对“工作或学校帐户”和“本地”进行身份验证。这将创建一个可以为我工作的应用程序。但这是针对单个应用程序的。我将如何处理客户端应用程序?我是否需要将其包装在 ASP.NET MVC 项目中,并设置与服务器端应用程序相同的设置?我注意到 - 如果我创建一个 WebAPI 项目,它会添加令牌身份验证。有了这个,我需要客户端应用程序额外的步骤来获取该令牌,并与请求一起发送?

我应该如何构建这个系统?不需要具体的代码示例,找到解决方案的一些提示,一些经验将不胜感激。

【问题讨论】:

    标签: asp.net authentication active-directory adfs


    【解决方案1】:

    是否需要通过 Azure AD 或 ADFS 进行身份验证?

    Azure AD =“工作或学校帐户”

    ADFS = "本地"

    有 Azure AD 示例here

    有ADFS样本here

    对于两者,您需要为每个应用程序配置 IDP。

    应用程序称为依赖方 (RP),每个应用程序都有一个 RP 配置。

    如果应用程序调用一个 Web API,那么就是两个 RP。

    然后您为应用程序配置访问 Web API 的权限。

    找到一个与您的用例相似的示例,它将更详细地解释这一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-28
      • 1970-01-01
      • 2015-03-27
      • 2020-11-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多