通过postman以管理员身份登录firebase实时数据库

通过postman以管理员身份登录firebase实时数据库,firebase,authentication,firebase-realtime-database,firebase-authentication,Firebase,Authentication,Firebase Realtime Database,Firebase Authentication,我为firebase实时数据库设置了这些规则 { "rules": { "adminContent": { ".read": true, ".write": "auth.token.admin === true", } } } 我已经创建了一个用户,可以登录 遵循此URL 我得到了idToken和所有的数据。 我在Params:auth |“收到

我为firebase实时数据库设置了这些规则

{
  "rules": {
    "adminContent": {
      ".read": true,
      ".write": "auth.token.admin === true",
    }
  }
}
我已经创建了一个用户,可以登录 遵循此URL

我得到了idToken和所有的数据。 我在Params:auth |“收到的ID令牌”中输入

我还没有完全康复

{
    "error": "Permission denied"
}
我猜我应该注册为管理员或者作为管理员获取一些数据

实际上,我需要一个react项目,但我在《邮递员》中测试了一些东西,我不明白这个东西是如何工作的

我必须遵守这些规则


感谢您的帮助。

您的安全规则要求用户必须是管理员:

auth.token.admin === true
但是登录用户并不会自动使其成为管理员,因为这将是一个相当大的安全风险

您需要在将用户标记为管理员的受信任环境中运行代码。此
admin
值称为自定义声明,因此我建议阅读上的文档,特别是本节


完成此操作后,下次您登录用户时,他们将获得
管理员
声明,并将其传递给安全规则。

很抱歉,我对这整件事有点陌生。“您需要在一个可信任的环境中运行代码,并将用户标记为管理员。”这意味着我不能从Postman执行此操作?受信任的环境意味着什么?我必须创建一个节点服务器,或者我的react应用程序在本地机器上工作正常。对不起,这个愚蠢的问题。谢谢你的回答。如果你在《邮递员》中将某人标记为管理员,那就好了,但是如果其他人可以在《邮递员》中运行相同的程序,那么是什么阻止他们将自己标记为管理员呢。这就是为什么这段代码(需要对Firebase项目进行管理访问)需要在受信任的环境中运行,在这个环境中,您可以确定只有您才能运行它,例如您的开发机器、您控制的服务器或云功能。您好,再次抱歉,我一直在阅读文档,但仍然不明白。我知道我很笨,因为互联网上的每个教程都跳过了这一步,我不明白。我应该如何在React应用程序中获取此管理令牌?我被分配了一个任务,显然,我无法解决这个问题。我了解到,要更改规则,您可以通过firebase SDK进行更改。我能做到。但是我如何获得这个管理令牌呢?我是通过SDK获得它,然后放入我的react中,这没有多大意义。如何对firebase REST API进行API调用。
auth.token.admin === true