我正在使用 MSAL 使用集成 Windows 身份验证从 Azure 中的身份验证应用程序获取 token 。 代码是:
var tenant = $"https://login.microsoftonline.com/<myTenantId>";
var clientId = "<myClientId>";
var scopes = new string[] { "https://graph.microsoft.com/.default" };
var publicApplication = PublicClientApplicationBuilder.Create(clientId).WithAuthority(tenant).Build();
var token = await publicApplication.AcquireTokenByIntegratedWindowsAuth(scopes).ExecuteAsync();
这会引发以下异常:
Integrated Windows Auth is not supported for managed users.
- 我已验证运行该应用程序的用户不是 托管用户(用户是在本地 AD 中创建并同步到 Azure AD 通过 AD Connect 同步)。
- 我已在 Azure 租户中通过直通启用 SSO 身份验证。
- 管理员已同意身份验证申请。
我已按照https://github.com/AzureAD/microsoft-authentication-library-for-dotnet/wiki/Integrated-Windows-Authentication中的步骤进行操作据我所知,我没有错过任何事情。
我的配置中是否有遗漏的内容?非常感谢对此的任何帮助。
最佳答案
根据我与 Microsoft 的讨论,IWA 不支持直通身份验证(这就是我的案例中的情况)。为了使 IWA 发挥作用,我们的环境中需要有 ADFS。
关于azure - MSAL - 使用 IntegratedWindowsAuth 获取 token 时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57971719/