![](/img/trans.png)
[英]Sign in to ASP.Net Core Web Application -> API with Individual User Accounts using Azure AD B2C
[英]Sign Up/In not working in ASP. NET Core application: Azure B2C
我們使用 Google 作為身份提供者來配置用戶流。 按照 GitHub 上的 Azure-Sample 存儲庫使用.NET6構建一個 ASP.NET Core webapp。
appsettings.json:-
"AzureAdB2C": {
"Instance": "https://b2ctenant.b2clogin.com",
"ClientId": "3ae27e38-90a3-43c7-9bac-8d3bf33227f9",
"Domain": "b2ctenant.b2clogin.com",
"SignedOutCallbackPath": "/signout/B2C_1_susi",
"SignUpSignInPolicyId": "b2c_1_susi",
"ResetPasswordPolicyId": "b2c_1_reset",
"EditProfilePolicyId": "b2c_1_edit_profile" // Optional profile editing policy
//"CallbackPath": "/signin/B2C_1_sign_up_in" // defaults to /signin-oidc
https://localhost:44316
當用戶 select Sign Up/In
選項時出現異常
IOException:IDX20807:無法從以下位置檢索文檔:'['System.String' 類型的 PII 已隱藏。 有關詳細信息,請參閱 https://aka.ms/IdentityModel/PII。]'。 HttpResponseMessage: '['System.Net.Http.HttpResponseMessage' 類型的 PII 已隱藏。 有關詳細信息,請參閱 https://aka.ms/IdentityModel/PII。]', HttpResponseMessage.Content: '['System.String' 類型的 PII 已隱藏。 有關詳細信息,請參閱 https://aka.ms/IdentityModel/PII。]'。
Microsoft.IdentityModel.Protocols.HttpDocumentRetriever.GetDocumentAsync(字符串地址,CancellationToken 取消)
Microsoft.IdentityModel.Protocols.OpenIdConnect.OpenIdConnectConfigurationRetriever.GetAsync(字符串地址,IDocumentRetriever 檢索器,CancellationToken 取消)Microsoft.IdentityModel.Protocols.ConfigurationManager.GetConfigurationAsync(CancellationToken cancel)nvalidOperationException:IDX20803:無法從以下位置獲取配置:'['System.String' 類型的 PII 已隱藏。 有關詳細信息,請參閱 https://aka.ms/IdentityModel/PII。]'。 Microsoft.IdentityModel.Protocols.ConfigurationManager.GetConfigurationAsync(CancellationToken 取消) Microsoft.AspNetCore.Authentication.OpenIdConnect.OpenIdConnectHandler.HandleChallengeAsyncInternal(AuthenticationProperties 屬性) .ChallengeAsync(AuthenticationProperties 屬性)Microsoft.AspNetCore.Authentication.AuthenticationService.ChallengeAsync(HttpContext 上下文、字符串方案、AuthenticationProperties 屬性)Microsoft.AspNetCore.Mvc.ChallengeResult.ExecuteResultAsync(ActionContext 上下文)Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited| 30_0<TFilter, TFilterAsync>(ResourceInvoker invoker, Task lastTask, State next, Scope scope, object state, bool isCompleted) Microsoft.AspNetCoreInfraker.Rec throw(ResultExecutedContextSealed context) Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.ResultNext<TFilter, TFilterAsync>(ref State next, ref Scope scope, ref object state, ref bool isCompleted) Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited| 28_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, object state, bool isCompleted) Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Awaited|25_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, object state, bool isCompleted) Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Rethrow(ResourceExecutedContextSealed context) Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.Next(ref State next, ref Scope scope, ref object state, ref bool isCompleted) Microsoft.AspNetCore.Mvc .Infrastructure.ResourceInv oker.g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, object state, bool isCompleted) Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.g__Logged|17_1(ResourceInvoker invoker) Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker .g__Logged|17_1(ResourceInvoker 調用者)Microsoft.AspNetCore.Routing.EndpointMiddleware.g__AwaitRequestTask|6_0(終結點終結點、任務請求任務、ILogger 記錄器)Microsoft.AspNetCore.Authorization.AuthorizationMiddleware.Invoke(HttpContext 上下文)Microsoft.AspNetCore.Authentication.AuthenticationMiddleware。調用(HttpContext 上下文)Microsoft.AspNetCore.Diagnostics.DeveloperExceptionPageMiddlewareImpl.Invoke(HttpContext 上下文)
我試圖在我的環境中重現相同的結果並得到以下結果:
我注冊了一個應用程序並授予API 權限,如下所示:
我克隆了相同的 GitHub 示例並更新appsettings.json
文件,如下所示:
我運行了上面的示例並得到了以下屏幕:
當我點擊“ Sign Up/In
按鈕時,我遇到了與您類似的錯誤,如下所示:
請注意,您在
appsettings.json
文件中為域參數提供了錯誤的值。 您需要更改可在此處找到的 Domain 參數的值:
為解決該錯誤,我更改了我的 Domain 參數的值
appsettings.json
文件如下:
當我現在通過運行示例單擊“ Sign Up/In
按鈕時,我成功獲得了Google的登錄屏幕,如下所示:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.