gpt4 book ai didi

c# - 使用 PublicClientApplication 获取身份验证 token 时无法使用公司帐户登录

转载 作者:行者123 更新时间:2023-12-03 00:25:36 29 4
gpt4 key购买 nike

我有一个自定义 UWP 应用程序,已在 Portal.azure.com 中注册。该应用已配置为支持所有帐户类型(“任何组织目录中的帐户(任何 Azure AD 目录 - Multi-Tenancy )和个人 Microsoft 帐户(例如 Skype、Xbox)”)。

在我的应用程序中,我创建了一个 IPublicClientApplication,如下所示:

PublicClientApp = PublicClientApplicationBuilder.Create(appId)
.WithAuthority(AadAuthorityAudience.AzureAdAndPersonalMicrosoftAccount)
.WithLogging((level, message, containsPii) =>
{
ConfigurationHandler.Log.Info($"MSAL: {level} {message} ");
}, LogLevel.Warning, enablePiiLogging: false, enableDefaultPlatformLogging: true)
.WithUseCorporateNetwork(true)
.Build();

稍后我尝试获取身份验证 token ,如下所示:

authResult = await PublicClientApp.AcquireTokenInteractive(Scopes)
.ExecuteAsync()
.ConfigureAwait(false);

这将打开登录弹出窗口,用户可以在其中输入他们的电子邮件地址和密码。当我使用个人 ( [email protected] ) 帐户时,身份验证可以正常工作,但不适用于工作帐户。输入工作电子邮件并单击“下一步”后,该窗口尝试重定向到组织登录页面。重定向过程开始但总是以以下错误结束:

"We can't connect to the service you need right now. Check your network connection or try this again later"

我尝试将值为“urn:ietf:wg:oauth:2.0:oob”的 WithRedirectUri 添加到 PublicClientApplication 创建中,但没有帮助。这是我在 Azure 门户中配置的唯一重定向 URI。

还有其他我不知道的设置吗?我怎样才能摆脱这个错误并使工作帐户也正常工作?

编辑:我忘了提及它是一个桌面应用程序。

最佳答案

我无法在我这边重现您的问题。我的步骤好像和你的一样,不管怎样,这是截图供你引用。另外,这里有一个完整的guide .

enter image description here

顺便说一句,如果您想在联合域上集成身份验证,则需要启用其他功能。

1.打开Package.appxmanifest

2.选择功能并启用以下设置:

  • 企业身份验证

  • 专用网络(客户端和服务器)

  • 共享用户证书

enter image description here

关于c# - 使用 PublicClientApplication 获取身份验证 token 时无法使用公司帐户登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58729843/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com