【问题标题】:Azure Active Directory B2C and native experience on mobile instead of WebViewAzure Active Directory B2C 和移动设备上的本机体验,而不是 WebView
【发布时间】:2021-03-17 21:24:06
【问题描述】:

是否可以使用 Azure Active Directory B2C 并拥有流畅的原生授权而不是 WebView?

或者它仅在使用其他身份验证提供程序作为中间人时可用(例如 Firebase Auth)?

【问题讨论】:

标签: azure firebase-authentication azure-ad-b2c


【解决方案1】:

具体来说,我想在用 Flutter 编写的移动应用中实现 Azure B2C。 当我在研究 Azure auth 以及如何在 Flutter 中实现原生体验时:

  • 我找到了用于 Azure B2C 身份验证的专用 Flutter 包https://pub.dev/packages/aad_oauth
  • 我意识到这个专用包无论如何都在打开 WebView
  • 我开始与作者讨论,他证实了我之前的怀疑,即如果没有 Firebase 身份验证(或其他提供程序),我们将无法实现本机身份验证

https://github.com/Earlybyte/aad_oauth/issues/100

所以我想到了两个解决方案:

  1. 本机身份验证 - Firebase 身份验证(或其他提供程序)与 Azure 通信。类似Firebase Authentication with Azure AD B2C
  2. Webview 和直接 Azure 身份验证

我是对的还是我遗漏了什么? @Jit_MSFT @Jas Suri - MSFT

【讨论】:

    【解决方案2】:

    基于原生应用 api 的身份验证,仅支持使用 ROPC OIDC 流程的原生应用。

    https://docs.microsoft.com/en-us/azure/active-directory-b2c/add-ropc-policy?tabs=app-reg-ga&pivots=b2c-custom-policy

    【讨论】:

    • 请注意,ROPC 存在某些潜在的安全漏洞,一般不推荐使用
    【解决方案3】:

    您能否使用本机应用程序 (ios/android) 来管理客户端机密?如果没有,则将它们注册为本机应用程序,这样获取令牌的身份验证请求就不需要秘密。

    这里是示例:

    https://docs.microsoft.com/en-us/azure/active-directory-b2c/add-native-application?tabs=app-reg-ga

    https://docs.microsoft.com/en-us/azure/active-directory-b2c/signin-appauth-ios?tabs=app-reg-ga

    https://docs.microsoft.com/en-us/azure/active-directory-b2c/code-samples#mobile-and-desktop-apps

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-01-07
      • 1970-01-01
      • 2016-08-13
      • 2018-02-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-26
      • 1970-01-01
      相关资源
      最近更新 更多