AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 893973
Accepted
Appleoddity
Appleoddity
Asked: 2018-01-25 14:20:14 +0800 CST2018-01-25 14:20:14 +0800 CST 2018-01-25 14:20:14 +0800 CST

在 ADFS 4.0 中使用备用浏览器时,“DeviceContext”声明在哪里?

  • 772

我知道这可能不是问这个问题的最佳地点。但是,经过几天的努力,并在 Microsoft 论坛上发帖后,我束手无策。

我们正在使用混合 ADFS 4.0 (Server 2016) / Azure AD / Office 365 设置,设备注册和 SSO 工作。

我们正在尝试使用基于设备的访问策略启用多因素身份验证。我们不希望“已识别”的设备看到额外的 MFA 提示。我们正在使用Microsoft Claims Xray评估 ADFS 返回的索赔。

我们已成功启用 MFA 并将 ADFS 配置为仅在设备无法识别时提示 MFA。这是因为被识别的设备在活动目录中具有额外的属性(isRegisteredUser;isManaged;isKnown;trustType;等),我们可以对这些属性采取行动。我们已经在 iPad 上使用 IE、Firefox、Chrome 和 Safari 进行了测试。但是,“DeviceContext”声明仅在从 iPad 上的 IE 或 Safari 完成身份验证时才会出现。

出于某种原因,当从 Chrome 或 Firefox 发出请求时,似乎没有进行设备身份验证。身份验证有效,我们只是看不到任何允许我们根据设备是否已注册做出决定的 devicecontext 声明。因此,这些浏览器会获得额外的 MFA 提示。

我根本无法在网上找到任何符合我确切问题的帖子。有一些线程是相似的,但结果却是不同的问题,或者最终陷入了死胡同。我希望有人有这种类似的设置,并且知道为什么 Chrome 和 Firefox 不会执行额外的基于设备的身份验证,但 iPad 上的 safari 会。所有设备都有有效的证书来执行身份验证。

我在任何事件日志中都没有出现任何错误。浏览器根本不会发出设备身份验证请求,也不会发出 devicecontext 声明。这可能不受支持,但我找不到任何指示一种或另一种方式的信息。

windows-server-2016
  • 1 1 个回答
  • 2049 Views

1 个回答

  • Voted
  1. Best Answer
    Appleoddity
    2018-02-07T12:45:17+08:002018-02-07T12:45:17+08:00

    设备上下文声明对于 ADFS/Azure AD 确定设备是否被识别、管理、合规等是必要的。没有它们,如果绕过 MFA 依赖于“识别”已知设备,则依赖于 MFA 和 SSO 的方案将被破坏。当设备身份验证与 ADFS 中的用户身份验证一起执行时,会生成设备上下文声明。

    我发现在 Windows 7 中,Workplace Joined 机器是基于每个用户的,并接收存储在“当前用户”证书存储中的设备身份验证证书。在身份验证期间,即使在 Chrome 中也可以使用证书成功执行设备身份验证。

    在 Windows 10 中,我发现 Azure AD 设备注册是按机器进行的,并且机器会收到存储在“本地机器”证书存储中的设备身份验证证书。在认证过程中,IE 和 Edge 成功使用此证书完成设备认证。Chrome 不会接触“本地机器”证书存储中的任何证书。如果使用 Chrome 时无法识别设备,则 MFA 会失败,并提示用户进行辅助形式的身份验证。

    对于没有合适答案的替代浏览器,这似乎是一个已知问题。如果不进行设备身份验证,就无法通过条件访问策略绕过 MFA 来识别设备。

    Microsoft为 Google Chrome提供了一个插件,允许它在使用 MFA 时执行设备身份验证。但是,有几个注意事项需要注意:

    • 该插件仅适用于 Chrome,并且仅适用于 Windows 10 Creators Updates (1703) 或更高版本。
    • 该插件仅适用于 Azure AD 条件访问策略。
    • 基于 ADFS 设备的条件访问策略将不起作用。
    • 由于之前的限制,除 Office 365 之外的 ADFS 中的依赖方信任将无法使用该插件。

    长话短说,Windows 7 设备身份验证似乎工作正常,如果您使用 Chrome,识别的设备将支持基于设备的条件访问策略。使用 Chrome 的 Windows 10 设备支持基于设备的条件访问策略的能力有限。移动设备在注册到 MDM 时会收到基于用户的证书,因此它们似乎也支持在管理设备时绕过 MFA。

    我认为这里的主要问题是 Chrome 的开发人员故意阻止它访问“本地计算机”证书存储以进行身份​​验证。这可以通过 Process Monitor 进行验证,也可以通过查看 Chrome 证书设置中的可用证书来验证。

    我很抱歉这么说,但 Mozilla 继续他们任性的做法,导致他们的浏览器很难在企业中使用,并且开发人员让 Firefox 无法访问任何 Windows 证书存储。因此,除非您故意将证书导入 Firefox,否则基于设备的条件访问在任何操作系统上都不起作用。

    • 1

相关问题

  • 将 Windows Server 2012 Essentials 直接升级到 Windows Server 2016 Standard

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve