适用于 Web 应用程序和本机移动设备的 Azure B2C

Azure B2C For Both Web Apps and Native Mobile

我确定必须支持此方案,但我找不到如何执行此操作的示例。

我有一个 .NET Core Web 应用程序,它使用 Azure AD B2C 和自定义 html 页面进行注册、登录、个人资料编辑等

我想创建一些 iOS 和 Android 应用程序,这些应用程序与同一个 B2C 租户交互,但提供它们自己的本机屏幕,并且仅通过业务逻辑与 B2C 交互。

本机应用程序是否只需要使用 Microsoft Graph 来登录用户、重置密码、编辑个人资料等?或者他们可以使用 MSAL 库(但不使用政策流中定义的自定义 html 页面)来驱动他们的本机身份验证屏幕吗?

• 他们肯定可以通过编写 android 和 iOS 应用程序代码的各种平台使用 MSAL 库,即 JavaKotlin。此外,MSAL 库调用 ‘com.microsoft.identity.client’ 作为依赖项,用于通过进行交互式授权请求回调的应用程序启动和合并 Azure AD B2C 身份和授权。请在下面找到文档 link 以及其中显示使用 MSAL 库进行身份验证的代码片段。

这是要添加到‘AndroidManifest.xml’文件中的文件代码片段:-

  ‘ <!--Intent filter to capture System Browser or Authenticator calling back to our app after sign-in-->
    <activity
android:name="com.microsoft.identity.client.BrowserTabActivity">
    <intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    <data android:scheme="msauth"
        android:host="Package_Name"
        android:path="/Signature_Hash" />
</intent-filter>
  </activity> ‘

重定向 URI:-

‘ msauth://com.azuresamples.msalandroidapp/1wIqXSqBj7w%2Bh11ZifsnqwgyKrY%3D ’

• 请在 link 下方找到 Microsoft 文档,其中明确说明了使用 MSAL 库 进行 Azure AD B2C 身份验证:-

https://docs.microsoft.com/en-us/azure/active-directory-b2c/enable-authentication-android-app?tabs=java

https://docs.microsoft.com/en-us/azure/active-directory-b2c/configure-authentication-sample-android-app?tabs=kotlin#step-5-configure-the-sample-mobile-app