【问题标题】:Firebase Authentication - Retrieve Custom Claims key for iOSFirebase 身份验证 - 检索 iOS 的自定义声明密钥
【发布时间】:2021-08-22 11:20:36
【问题描述】:

自定义声明 luid 已从后端添加到 Firebase 身份验证,我正在寻找一种从 iOS 应用程序前端访问此密钥的方法。

首先我需要检查键是否存在,如果存在则获取它的值。

我尝试了什么? Auth.auth().currentUser下的所有内容

附上一张解码后的JWT数据的图片,里面显示了密钥luid

【问题讨论】:

    标签: ios swift xcode firebase firebase-authentication


    【解决方案1】:

    您可以通过这种方式检查自定义声明:

    user.getIDTokenResult(completion: { (result, error) in
      guard let luid = result?.claims?["luid"] as? NSNumber else {
        // luid absent
        return
      }
      //Check for value here and use if-else
    })
    

    详细解释可见documentation

    【讨论】:

      【解决方案2】:

      这将显示一个字典,其中包含当前用户可用的所有键。

       Auth.auth().currentUser?.getIDTokenResult(completion: { (authresult, error) in
           print("CurrentUser Keys", authresult!.claims.keys)
      })
      

      这将根据特定键的可用性返回 Bool

      Auth.auth().currentUser?.getIDTokenResult(completion: { (authresult, error) in
           print("CurrentUser Keys", authresult!.claims.keys.contains("luid"))
      })
      

      【讨论】:

        猜你喜欢
        • 2021-06-30
        • 2019-04-22
        • 2020-06-28
        • 2020-04-01
        • 2022-12-10
        • 2021-02-25
        • 2023-03-12
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多