【问题标题】:.net 5 Azure b2c logout loop.net 5 Azure b2c 注销循环
【发布时间】:2021-09-30 20:41:58
【问题描述】:

您好,我正在尝试在应用中实现 azure b2c。登录时一切正常。但是当我注销时,它陷入了无限循环。我能找到的所有示例似乎都是 .net core 3.1。

这是我的应用设置。

"AzureAdB2C": {
"Instance": "https://xxx.b2clogin.com",
"TenantId": "xxx",
"ClientId": "xxx",
"Domain": "xxx.onmicrosoft.com",
"SignedOutCallbackPath": "/signout/B2C_1_Normal",
"SignUpSignInPolicyId": "B2C_1_Normal",
//"CallbackPath": "/signin/B2C_1_Normal"
}

这是我的创业公司。

 services.AddAuthentication(OpenIdConnectDefaults.AuthenticationScheme)
 .AddMicrosoftIdentityWebApp(options =>
 {
     Configuration.Bind("AzureAdB2C", options);
 }).EnableTokenAcquisitionToCallDownstreamApi(new string[] { Configuration["ApiScope"] 
 })
 .AddInMemoryTokenCaches
services.AddControllersWithViews(options=>
{
    var policy = new AuthorizationPolicyBuilder()
        .RequireAuthenticatedUser()
        .Build();
    options.Filters.Add(new AuthorizeFilter(policy));
}).AddMicrosoftIdentityUI();

要退出,我只需单击一个按钮。

<a class="nav-link" asp-area="MicrosoftIdentity" asp-controller="Account" asp-action="SignOut">Sign out</a>

它确实让我退出,但我被困在一个重定向循环中,返回到我的应用程序,然后返回到 B2C。

【问题讨论】:

  • 这些是内置在 MicrosoftIdentityUI 包中的。

标签: c# .net azure .net-core


【解决方案1】:

我尝试在我的本地环境中进行测试,并通过使用 AzureAdB2C 凭据从我的 Web 应用程序登录和注销成功地进行了测试。

以下是我遵循的步骤:

在 Portal 中创建了一个 B2C 租户并将其链接到我的订阅。

链接后创建了一个 应用注册,选择如下,并使用 id 和访问令牌进行身份验证。

我已添加用户流程并选择以下配置:

然后在 Visual Studio 中创建了一个 Asp.net 核心 Web 应用程序并提供我在上面创建的域和策略详细信息

域名 - Azure AD B2C 概览选项卡应用程序 ID - 来自应用程序 注册概览选项卡 注册或登录政策 - 来自用户流程 概述

复制回复 URI 并粘贴到门户的重定向 URI 部分

这是我的appsettings.json 文件

它允许我登录,退出后它也重定向到我的主页:

更多信息请参考以下链接:

.How to sign out of Azure ADB2C |MS Q&A.

.Configure session behavior in Azure Active Directory B2C | MS DOC

【讨论】:

  • 您的 Web 应用程序是 .Net 5 吗?我已经拥有你所做的一切,所以我不确定问题是什么。
  • 啊,你用的是VS2017,所以不是.net 5
  • 是的,我正在尝试使用 Vs 2017,Asp.net core webapp。能否请您参考此MS DOC 以获取您的appsettings.json
  • 我和他们完全一样。一切正常,除了我在注销时得到一个重定向循环。
  • "SignedOutCallbackPath": "/signout/",在此代码中,您是否将注册策略添加为“SignUpSignInPolicyId”:“" 。也请参考这个 SO 链接stackoverflow.com/questions/51268552/…
猜你喜欢
  • 2020-11-27
  • 1970-01-01
  • 1970-01-01
  • 2019-11-14
  • 1970-01-01
  • 2018-08-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多