在身份验证期间将"RequireMFA"信息从 Azure SSO 转发到本地 ADFS



Azure通过条件访问策略确定是否需要MFA ("RequireMFA")。然后Azure SSO通过WSFed将身份验证请求委托给OnPrem ADFS。OnPrem ADFS在身份验证后返回一个SAML-Token给Azure。

我的问题是,OnPrem ADFS不知道azure条件访问策略(MFA是否需要)评估了什么。

是否有机会使ADFS意识到RequireMFA-Information(即。通过WSFed请求从Azure到ADFS?)

如果您的AD FS服务器配置了MFA适配器,您可以执行以下操作:

如果通过https://learn.microsoft.com/en-us/powershell/module/msonline/set-msoldomainfederationsettings?view=azureadps-1.0 cmdlet将联邦域配置为supportsmfa为TRUE,那么Azure AD将在Azure AD端需要用户执行MFA(例如由于CA策略)时重定向到AD FS的任何请求。

如果您的AD FS运行在Windows Server 2016或更高的操作系统版本上,并且您已经为云中的用户配置了Azure MFA,请使用https://learn.microsoft.com/en-us/windows-server/identity/ad-fs/operations/configure-ad-fs-and-azure-mfa在AD FS上配置MFA适配器,并使用set - msoldomainauthentication或set - msoldomainfederationsettings cmdlets设置supportsmfa=true。然后Azure AD将重定向到AD FS, AD FS将使用Azure MFA适配器执行MFA,并返回声明,表明MFA已在AD FS端完成。您的AD FS需要具有Azure AD Connect配置的索赔规则。否则,您可以使用https://adfshelp.microsoft.com/AadTrustClaims/ClaimsGenerator生成正确的声明规则配置,该配置将使AD FS发出

http://schemas.microsoft.com/claims/authnmethodsreferences

使用类似于下面的规则声明。

@RuleName = "Pass through claim - authnmethodsreferences"
c:[Type == "http://schemas.microsoft.com/claims/authnmethodsreferences"]
 => issue(claim = c);

如果您仍在努力使此工作,请联系Microsoft支持。

最新更新