【发布时间】:2020-09-15 17:47:58
【问题描述】:
我正在尝试将“Microsoft”登录方法添加到我的 Firebase 项目中,希望允许用户使用他们的 Azure AD 凭据登录到我的 Android 应用程序。我已经设置好一切以使用“电子邮件/密码”提供程序,它运行良好。
我不打算访问任何 Azure API,我只需要对给定用户进行身份验证,这样当组织终止所述用户帐户时,他就无法再登录到我的应用程序。
我正在关注https://firebase.google.com/docs/auth/android/microsoft-oauth 这个指南。我在我的 Azure AD 上注册了一个应用程序,将其设置为允许来自任何组织的帐户以及个人帐户,并将客户端 ID 和密码添加到我的 Firebase 项目中。我还将 Firebase 项目中的重定向 url 添加到 Azure 上的应用注册。
我使用startActivityForSignInWithProvider 开始登录过程,就像示例中一样。 chrome 选项卡加载并引导我完成整个身份验证过程。 问题是这总是返回失败,但 Error: (invalid_client) AADSTS700025: Client is public so neither 'client_assertion' nor 'client_secret' should be presented' 除外
这很令人困惑,因为要在 Firebase 上启用此登录提供程序,您需要输入客户端 ID 和客户端密码。
我已尝试将应用注册设置“将应用程序视为公共客户端”设置为“是”和“否”。我还尝试使用空白范围集合并将“openId”添加到范围中作为暗中的刺。
我对这个 Microsoft 身份验证的东西有点摸不着头脑,因此我们将不胜感激任何朝着正确方向的推动。
【问题讨论】:
标签: android firebase azure oauth firebase-authentication