使用createCustomToken()创建的用户不存在Firebase auth customClaims

时间:2020-05-04 12:47:00

标签: firebase firebase-authentication firebase-admin

我想在用户的customClaims中存储一些秘密数据。我在服务器上使用以下方法创建令牌:

var customToken = createCustomToken(uniqueId, {mySecretData:"VerySecretData"})

将其发送到我的应用程序,使用signInWithCustomToken(customToken)登录用户,并且可以正常工作

但是,当我稍后通过调用管理员的getUser(uniqueId)在服务器上获取用户并尝试查看其customClaims时,没有任何未定义的内容。

有趣的是,我确实在可调用函数上下文的“ auth属性” token对象中看到此秘密数据。

问题:为什么developerClaims不是用户的customClaims

参考:https://firebase.google.com/docs/reference/admin/node/admin.auth.Auth#createcustomtoken

1 个答案:

答案 0 :(得分:1)

通过createCustomToken()添加的声明仅存在于Firebase Auth颁发的Auth令牌中。它们不会存储在任何其他地方,并且getUser()响应将不包括它们。您应该使用setCustomUserClaims()来获得指示的行为。