![Office 365 MFA ActiveSync 豁免的自定义 AD FS 规则](https://linux22.com/image/669377/Office%20365%20MFA%20ActiveSync%20%E8%B1%81%E5%85%8D%E7%9A%84%E8%87%AA%E5%AE%9A%E4%B9%89%20AD%20FS%20%E8%A7%84%E5%88%99.png)
我们使用 RSA 密钥设置 Office 365,目前我们希望将移动设备和 Outlook 免于 MFA。据我了解,我们必须制定自定义颁发转换 AD FS 声明规则。我尝试创建一个,但没有成功:
c:[Type == "http://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork", Value == "false"]
&& [Type == "http://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-endpoint-absolute-path", Value =~ "(/adfs/ls)|(/adfs/oauth2)"]
=> issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod", Value = "http://schemas.microsoft.com/claims/multipleauthn");
有人知道正确的方法吗?
答案1
搞清楚了。其实很简单。所以事情是这样的:
您必须首先禁用全局设置,或者至少禁用那些影响其设置方式的设置。确保您仍然选择 MFA 提供商(例如 RSA 或 Cert),但不要填写任何其他内容。
然后转到以管理员身份运行 PowerShell。
输入此命令:
Set-AdfsAdditionalAuthenticationRule -AdditionalAuthenticationRules 'c:[Type == "http://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-endpoint-absolute-path", Value =~ "(/adfs/ls)|(/adfs/oauth2)"] => issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod", Value = "http://schemas.microsoft.com/claims/multipleauthn");'
这告诉它,如果它位于提示 adfs 或 oauth2 的端点,则继续启用 MFA。由于 MFA 未在其他地方全局启用,因此它基本上完成了我在此线程中请求的内容。我必须重新启动 AD FS 才能使其生效。虽然它不是世界上最干净的解决方案,但它确实有效。
请参阅本文以了解其他说明和有用的命令:http://blogs.msdn.com/b/ramical/archive/2014/01/30/under-the-hood-tour-on-multi-factor-authentication-in-ad-fs-part-1-policy.aspx
答案2
您必须在 Powershell 中手动输入命令。当我在 Powershell 中复制/粘贴它时,我也收到各种错误消息。手动操作很顺利。
c:[Type == "http://schemas.microsoft.com/ws/2012/01/insidecorporatenetwork", Value == "false"]
&& [Type == "http://schemas.microsoft.com/2012/01/requestcontext/claims/x-ms-endpoint-absolute-path", Value =~ "(/adfs/ls)|(/adfs/oauth2)"]
=> issue(Type = "http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationmethod", Value = "http://schemas.microsoft.com/claims/multipleauthn");