PlatformPlugin 异常在 ASP.NET Core 中使用 MSAL 获取仅限应用的令牌

PlatformPlugin exception getting app-only token using MSAL in ASP.NET Core

我正在尝试创建一个 ASP.NET 核心应用程序,该应用程序将 MSAL 用于客户端凭据流。

我在尝试获取访问令牌时遇到以下异常:

NullReferenceException: Object reference not set to an instance of an object.
Microsoft.Identity.Client.Internal.PlatformPlugin.LoadPlatformSpecificAssembly()

身份验证仿照此示例:active-directory-dotnet-webapp-openidconnect-aspnetcore-v2

授权仿照此示例:active-directory-dotnet-daemon-v2

我的应用已注册 Mail.Read 应用程序权限。这是抛出异常的代码:

string authority = $"https://login.microsoftonline.com/{ tenantId }/v2.0";
ConfidentialClientApplication client = new ConfidentialClientApplication(
    authority,
    appId,
    redirectUri,
    new ClientCredential(appSecret),
    null);//new TokenCache());

AuthenticationResult authResult = await client.AcquireTokenForClient(
    new string[] { "Mail.Read" }, null);
return authResult.Token;

还尝试使用“https://graph.microsoft.com/.default”作用域,如在守护进程示例中那样。

回答这个问题。我将其打开为 issue on the GitHub repo。它以以下响应关闭:

下一个版本将不会出现此问题,因为我们将转向单个二进制文件。