【问题标题】:Azure B2C Issues and QuestionsAzure B2C 问题和疑问
【发布时间】:2015-12-19 19:03:25
【问题描述】:

我已经使用 Azure B2C 工作了几天,有一些问题和疑问:

  1. 它创建的用于重定向登录的 URL 格式不正确。它包含两次问号 - 在 url 之后,在配置文件名称之后。这会在您每次登录、注销等时导致 404 未找到错误。例如,它尝试重定向到的登录 URL 如下所示:https://login.microsoftonline.com/samlmanbc.onmicrosoft.com/oauth2/v2.0/authorize?p=b2c_1_firstdemoprofile?client_id=08fcblahblah。您会注意到个人资料名称后面的第二个问号,这就是它的原因。

  2. 如果我修复该问题并尝试登录,它无法识别我的全局管理员帐户的用户名/密码。它可以识别我在目录中本地创建的新用户的用户名/密码。

  3. 在OnRedirectToIdentityProvider方法中,当请求类型为认证时,AuthenticationResponseChallenge为null,导致本次调用失败: OpenIdConnectConfiguration config = await mgr.GetConfigurationByPolicyAsync(CancellationToken.None, notification.OwinContext.Authentication.AuthenticationResponseChallenge.Properties.Dictionary[Startup.PolicyKey]);

我通过使用静态字符串 SignInPolicyId 作为第二个参数来解决这个问题。当帐户已经存在时,这可以正常工作,但如果不存在,则 Azure 在登录时失败并说用户不存在帐户。那么在那里使用的正确值是什么,和/或如何初始化它以使其不为空?

  1. 添加到配置文件的声明类型以“extension_”开头;这永远是真的还是只是现在?例如,我添加了一个名为“favoriteTeam”的属性,但它的声明类型是“extension_favoriteTeam”。

  2. 当您使用 FaceBook 作为身份提供者时,是否有任何方法可以传递 Facebook 访问令牌声明 (http://www.facebook.com/claims/AccessToken)?这在将 ACS 与 Facebook 一起使用时很有用,因为您的应用可以使用该令牌对 Facebook 进行额外调用以从中获取数据。

【问题讨论】:

    标签: azure-active-directory


    【解决方案1】:
    1. 这符合预期。登录“本地帐户”用户的页面不会登录您的工作或学校帐户(在本例中为全局管理员用户)。

    2. 永远都是真的。我们将清理 Admin UX 以使其更加清晰。

    3. 这是我们的路线图。目前还没有预计到达时间。

    【讨论】:

    • 有趣...谢谢...WRT #3,那么获取现有用户和新用户都可以使用的登录页面的正确值(或方式)是什么?还是你们建议总是登陆一个匿名页面并有两个不同的链接——一个用于“注册”,一个用于“登录”?
    • 留意 10 月份的新功能,这将有助于解决您在此处描述的确切问题 :)
    【解决方案2】:

    关于问题 1 - 我将参考 Microsoft.IdentityModel.Protocol.Extensions 更新为 v1.0.2.206221351 并开始工作。在此之前我对其他引用进行了一些更新,所以如果第一个不起作用,请尝试从 nuget 更新更多程序集。

    【讨论】:

    • 啊,出色的 Clarky888,已解决的问题 #1 - 谢谢! :-)
    • 嘿@StevePeschka - 很高兴你知道了 - 如果你将你的 OWIN 包升级到 3.0.1 你应该没问题(这也升级了协议扩展包)
    • @StevePeschka 如果您仍然感兴趣,我想结束#3...您是如何发起身份验证请求的?换句话说,您点击了什么触发了RedirectToIdentityProvider 通知?
    • 嘿 dstrockis,我只是将 .NET MVC 示例示例用于 B2C 内容。由于#3,它现在基本上是开箱即用的。所以我在 Home 控制器中的 Index 方法具有 Authorize 属性,这就是它启动身份验证过程的方式。
    • 也为我修复了它!想弄清楚这一点我快疯了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-05-02
    • 2020-11-27
    • 1970-01-01
    • 1970-01-01
    • 2017-09-04
    • 2019-06-30
    • 2017-01-03
    相关资源
    最近更新 更多