使用React Native和Firebase自定义令牌在LDAP服务器上进行身份验证



我正在尝试通过LDAP服务器对我的用户(来自RN应用程序)进行身份验证(我已经在这里找到了一个尝试身份验证的服务器,它很有效!)。每次收到用户的凭据(用户名和密码)时,我都可以使用Firebase创建一个自定义令牌,并将其保存在Firebase实时数据库中。

主要的问题是我不知道如何将我的应用程序与LDAP服务器连接,我进行了调查,发现我必须安装openLDAP或ldapjs之类的东西,但我不知道身份验证必须如何我的猜测是:

  1. 用户登录我的注册护士应用程序
  2. RN应用程序向Firebase发送凭据
  3. Firebase创建自定义令牌(使用Firebase函数生成自定义令牌)
  4. Firebase将自定义令牌返回到RN应用程序
  5. RN应用程序将令牌发送到LDAP服务器(服务器具有用于测试的预定用户和密码)
  6. LDAP服务器验证令牌,因此验证
  7. LDAP服务器向RN应用程序返回属性或"未找到">
  8. RN应用程序授予/拒绝访问该应用程序

我们将竭诚为您提供任何帮助或建议,谢谢:)抱歉我英语不好。

您已接近目标,但您没有将Firebase自定义令牌发送到LDAP服务器,而是在生成Firebase令牌之前使用LDAP服务器对用户进行身份验证。这两者都必须在受信任的环境中完成,例如您控制的服务器或云功能,并且您通常会在该环境中使用Firebase Admin SDK。

因此:

  1. 用户登录我的注册护士应用程序
  2. RN应用程序向可信环境发送凭证
  3. 受信任的环境已通过LDAP服务器验证凭据
  4. 受信任的环境使用Firebase Admin SDK创建自定义令牌。如果需要,此令牌可以以自定义声明的形式包含LDAP服务器的自定义属性
  5. 可信环境将自定义令牌返回给RN应用程序
  6. RN应用程序授予/拒绝访问该应用程序

有关此方面的更多信息,请参阅有关自定义身份验证的Firebase文档。从那里:

要实现这一点,您必须创建一个接受登录凭据(如用户名和密码)的服务器端点,如果凭据有效,则返回一个自定义JWT。然后,客户端设备可以使用从服务器返回的自定义JWT向Firebase(iOS、Android、web)进行身份验证。

相关内容

  • 没有找到相关文章

最新更新