如何解决MSAL.NET 控制台应用程序 IWA 身份验证失败,Azure AD 与 ADFS 联合
当我们使用 MSAL 库的 .NET 控制台应用程序在为 IWA 配置的工作站上运行时,我们遇到了 Azure AD(与 ADFS 联合)用户身份验证的问题。尝试对用户进行身份验证失败,并显示以下错误:
基于浏览器的身份验证对话框未能完成。原因: 由于无效,服务器无法处理请求 语法。
在客户网络之外运行或禁用 IWA 时,同一个应用能够针对同一个 Azure AD 对用户进行身份验证。
启用 IWA 后,选择 MS 帐户后会显示一个“自定义”身份验证对话框,要求输入用户名和密码。这似乎与 MS 在 https://docs.microsoft.com/en-us/azure/active-directory/develop/msal-net-adfs-support 中描述的一致:
用户被重定向到身份提供者的登录页面。 登录页面通常会自定义带有登录页面的徽标 组织。
但是,提供有效凭据会产生上述错误。
上面提到的页面还指出:
MSAL.NET 支持连接到 Azure AD,它登录托管用户 (在 Azure AD 中管理的用户)或联合用户(由以下人员管理的用户) 另一个身份提供程序,例如 AD FS)。 MSAL.NET 不知道 用户是联合的。就它而言,它会说话 到 Azure AD。
当 IWA 被禁用时,我们的应用程序在 Azure AD 方面没有任何用户身份验证问题。它在 Intranet 和 Extranet 环境中都可以正常工作。
我们用来验证 AD 用户的示例代码:
Time ID X Y moving_X moving_Y fixed_X fixed_Y final_angle
0 1 A 2.0 3.0 3.0 2.0 0.0 0.0 1.3734
1 1 B 3.0 1.0 3.0 2.0 0.0 0.0 0.9828
2 1 C 4.0 -2.0 3.0 2.0 0.0 0.0 1.2278
3 2 A 2.0 0.0 3.5 1.0 0.0 0.0 0.3097
4 2 B 2.0 2.0 3.5 1.0 0.0 0.0 0.8663
5 2 C 1.0 1.0 3.5 1.0 0.0 0.0 0.2783
有谁知道在启用 IWA 时,是否需要执行任何额外操作才能让 MSAL 使用 ADFS 针对 Azure AD 对 Intranet 用户进行身份验证?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。