我尝试使用活动目录-dotnet-本机-uwp-v2示例创建一个非常简单的应用程序。
对于我的MSA帐户,它正常工作,但是对于我的公司帐户,它不像预期的那样工作(我使用了@microsoft.com帐户)
这个帐户是一个Office 365帐户,实际上它在图形探索者中运行得很好。
问题是,有时候,它是有效的.
正确配置了在https://apps.dev.microsoft.com中声明的清单文件,使用了本机平台选项和“只是”"User.Read"作用域自动化
代码非常简单,下面是示例的摘录:
AuthenticationResult authResult = null;
try
{
authResult = await App.PublicClientApp.AcquireTokenSilentAsync(scopes, App.PublicClientApp.Users.FirstOrDefault());
}
catch (MsalUiRequiredException ex)
{
// A MsalUiRequiredException happened on AcquireTokenSilentAsync. This indicates you need to call AcquireTokenAsync to acquire a token
System.Diagnostics.Debug.WriteLine($"MsalUiRequiredException: {ex.Message}");
try
{
authResult = await App.PublicClientApp.AcquireTokenAsync(scopes);
}
catch (MsalException msalex)
{
ResultText.Text = $"Error Acquiring Token:{System.Environment.NewLine}{msalex}";
}
}
catch (Exception ex)
{
ResultText.Text = $"Error Acquiring Token Silently:{System.Environment.NewLine}{ex}";
return;
}一旦启动,我可以设置我的帐户,但重定向是坏的。


据我所见,我有一个Msal异常:
authentication_ui_failed
如果我更深入地检查调用堆栈,我发现的唯一东西是:
active_directory_dotnet_native_uwp_v2.MainPage.<CallGraphButton_Click>d__3.MoveNext()
知道吗?
发布于 2017-11-10 01:19:47
您刚才提到了如何解决这个问题,所以我将添加一些附加的上下文:通常,您不需要将privateNetworkClientServer添加到UWP应用程序中,只需要针对AD 进行身份验证,如果只需要访问您的应用程序,您只需要访问您的公司办公场所以外的应用程序(或者在某些情况下,只需要访问环境)。
然而,在某些情况下--如果你的设备实际上连接到了你的公司网络,那么Windows将尝试使用集成的auth这样的工具来帮助登录用户,而不是那么费劲。在这种情况下,建议将其声明为一种功能,以便您的应用程序可以在任何地方运行。
https://stackoverflow.com/questions/46973505
复制相似问题