我们使用 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");