azure - MSAL - 使用 IntegratedWindowsAuth 获取 token 时出现问题

标签 azure azure-active-directory azure-ad-graph-api azure-ad-msal azure-authentication

我正在使用 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/

相关文章:

Azure API 管理 : Origin header was missing or empty and the request was classified as not cross-domain. CORS 策略未应用

azure - 需要有关 Azure 监控的详细信息

azure - 具有 AAD 身份验证的 ASP.NET Core Web API 模板 - 哪里有让它工作的教程?

.net - 是否可以在客户端凭证流程中为应用程序注册赋予角色?

asp.net-mvc - 如何从 HttpContext 获取 JWT(使用 OpenIdConnect),并将其传递给 Azure AD Graph API

mysql - 无法通过 MySQL Workbench 连接到 Azure MySQL

azure - 无法连接到在容器应用程序服务上运行的 selenium/standalone-chrome docker 容器

azure - 在多个 Azure Functions 应用之间共享 AAD 身份验证

azure - 如何使用 Graph API 访问 B2C 用户的电子邮件

android - 错误 - 使用 Azure AD MSAL 库时 : BrowserTabActivity is missing. 的 Intent 筛选器