【问题标题】:ADFS 3.0 and non-claims aware application, authentication issuesADFS 3.0 和非声明感知应用程序、身份验证问题
【发布时间】:2015-06-28 05:57:08
【问题描述】:

我们正在尝试联合我们的应用程序,以便我们的客户可以使用他们各自的公司身份(Ping 身份或他们的 ADFS 服务器)访问我们的应用程序。

Web 应用程序不支持声明,我们正在尝试找出一种解决方案,在不更改代码的情况下联合它。

按照我的实验室环境,我使用 windows server 2012 R2 构建了一个 ADFS 3.0 环境来模拟未来场景:

我们这边:

  • 1 个 Active Directory 服务器(域 B)
  • 1 IIS8 Web 服务器与我们的非声明感知应用程序(Kerberos 机制支持的 Windows 集成身份验证)加入域 B
  • 1 个 ADFS 3.0 服务器(服务提供商)加入域 B
  • 1 个 WAP 服务器加入域 B

客户方面:

  • 1 个活动目录(域A)
  • 1 个 ADFS 3.0 服务器(身份提供程序)加入 domainA

应用用户:

  • 域B\user1
  • 域A\user2

我按照以下步骤构建了我的实验室环境:

  1. 在 domainB 上安装和配置 ADFS 3.0
  2. 在 domainB 上安装和配置 WAP 服务器
  3. 在 domainB 上的 WAP 服务器上发布 ADFS 3.0
  4. 创建一个非声明感知依赖方信任指向域 B 上 ADFS 3.0 上的应用程序
  5. 将非声明感知发布到域 B 上的 WAP
  6. 在 domainA 上安装和配置 ADFS 3.0
  7. 信任 domainB 上的 ADFS 3.0 和 domainB 上的 ADFS 3.0
  8. 编辑每个联合服务器上的声明规则

“domainB\user1”访问应用程序没有问题,在我的WAP服务器中有以下事件:

Web 应用程序代理代表用户成功检索了 Kerberos 票证。

Web 应用程序代理收到带有有效边缘令牌的 HTTP 请求。

“domainA\user2”无法访问并在屏幕上出现服务器错误,在 WAP 事件查看器中出现以下错误:

警告:事件 ID 13019 由于以下一般 API 错误,Web 应用程序代理无法代表用户检索 Kerberos 票证:用户名或密码不正确。 (0x8007052e)。

错误:事件 ID 12027 Web 应用程序代理在处理请求时遇到意外错误。 错误:用户名或密码不正确。 (0x8007052e)。

似乎是 Kerberos 身份验证的问题,但 domainB\user1 访问应用程序没有问题。

需要了解:

  • 问题出在哪里?
  • 只有 Web 应用程序服务器的同一域的用户成员支持访问非声明感知应用程序

我花了很多天来找出原因。 欣赏这里的任何方向。 谢谢

【问题讨论】:

    标签: authentication claims-based-identity claims adfs3.0


    【解决方案1】:

    鉴于“非声明感知”应用使 WAP+ADFS 使用 WIA,而 WIA 需要 Kerberos,您需要在 WAP-B 上为“domainA\user2”颁发 Kerberos 令牌,这又需要设置域/林domainA 和 domainB 之间的信任(至少 domainB 应该信任 domainA)。我没有看到域级别的信任,只有 ADFS 级别,因此 Kerberos 域 domainB 说“未知用户 domainA\user2”。检查在 domainA 和 domainB 之间启用信任是否可以解决问题。

    【讨论】:

      【解决方案2】:

      对于将访问应用程序的域 A 中的用户,您需要域 B 中的 Kerberos 影子主体。 Azure B2B 来宾用户通过 azure 应用程序代理访问应用程序的情况类似。这是使用 Azure 同步进行设置的演练 (https://docs.microsoft.com/en-us/azure/active-directory/b2b/hybrid-cloud-to-on-premises)。对于您的情况,情况类似,只是您需要从他们的目录中复制用户。

      【讨论】:

        猜你喜欢
        • 2012-07-03
        • 1970-01-01
        • 1970-01-01
        • 2019-05-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多