Firebase 实时数据库 - 如何使用 java sdk 管理数据库规则

Firebase Realtime Database - how to manage database rules using java sdk

我想使用 java SDK 为我的实时数据库设置数据库规则。我创建了一个 FirebaseDatabase 对象,但无法找到如何 get/set 使用它的数据库规则。

val options = FirebaseOptions.builder()
    .setDatabaseUrl("https://my-database.europe-west1.firebasedatabase.app/")
    .setCredentials(GoogleCredentials.fromStream(File("/path/tom/my/key.json").inputStream()))
    .build()
val defaultApp = FirebaseApp.initializeApp(options)

val defaultDatabase = FirebaseDatabase.getInstance(defaultApp);
// and here I would like to fetch the current rules and be able to set the new one

我找到了这篇文档:https://firebase.google.com/docs/database/rest/app-management 并尝试了

println(defaultDatabase.getReference(".settings/rules.json"))

但我只有

com.google.firebase.database.DatabaseException: Invalid Firebase Database path: .settings/rules.json. Firebase Database paths must not contain '.', '#', '$', '[', or ']'

怎么做?

.settings 伪节点未在 Java Admin SDK 中公开。如果您想从 Java 代码中操作规则,则必须从那里调用 REST API。