请向我承诺,因为我解释了这个有意义的情景。我们有一个现有的远程访问基础架构,它使用RADIUS for 2FA - LDAP(AD)和第三方TOTP提供商。 TOTP提供商可以是RSA,Yubikey,Google,Azure等 - RADIUS服务器已经配置为允许多个可能的TOTP提供商作为第二个身份验证因素。
现在我们想要为我们的一些服务提供商实施ADFS,因为它具有强大的授权声明规则;但我们希望拥有第二个身份验证因素的安全性,以及我们目前在RADIUS设置中的灵活性。而不是为ADFS MFA设置相同的TOTP提供程序,因为它已在RADIUS中配置,因此我们认为可以使用RADIUS身份验证的结果作为ADFS中的第二个身份验证因素。除此之外,出于明显的安全原因,我们希望在我们的网络中有一个单一的入口点,因此我们不能在周边同时拥有ADFS和RADIUS。我们当然希望维护基于SAML的SSO,因此不能单独依赖RADIUS。我想明确表示我们不想替换RADIUS,因为太多的系统已经依赖它了;我们想要的是使用其现有的ADFS MFA功能。
我们目前在我们的F5 APM SAML-IdP上设置了这个场景,所以这不是什么新东西。我只是想知道ADFS是否可行,以及即使考虑更换当前的F5设置也难以实现。如果F5 APM可以做到;也许ADFS也可以吗?嗯,这至少是我的理由。
我查看了可能的选项,发现有必要创建自定义身份验证提供程序,如以下链接所述:
https://blogs.technet.microsoft.com/cloudpfe/2014/02/01/how-to-create-a-custom-authentication-provider-for-active-directory-federation-services-on-windows-server-2012-r2-part-2/
该指令足够详细,可用于测试;但我发现它在很大程度上取决于认证的第二个因素的实际来源。我找到了使用Google身份验证器和Yubikey实现此目的的明确说明(除了易于支持的MFA提供商);但我找不到有关为RADIUS创建身份验证提供程序的说明。
这甚至可能吗?有人能指出我正确的方向吗?
答案 0 :(得分:0)
你应该可以这样做。一些注释基于你提到的
希望有所帮助。
由于 // Sam(@MrADFS)
答案 1 :(得分:0)
对于任何想知道的人;我能够通过创建自定义身份验证提供程序来实现这一点,如我在问题中发布的technet博客中所述:
https://blogs.technet.microsoft.com/cloudpfe/2014/02/01/how-to-create-a-custom-authentication-provider-for-active-directory-federation-services-on-windows-server-2012-r2-part-2/
我在此链接中使用了.NET类来为提供程序实现RADIUS客户端,因为我找不到任何其他.NET API:
http://nradius.nw-network.com/web/
无论如何,它完美无缺!太糟糕了,我无法找到谁开发了那个班级,但我确实发了一个匿名的谢谢。