在 Firebase 实时数据库中,未经身份验证的第三方服务器(使用 Admin SDK)如何从我的数据库中读取未受保护的数据?

In Firebase Realtime Database, how can an unauthenticated third-party server (using the Admin SDK) read unprotected data from my database?

关于 Firebase 实时数据库管理 SDK,在 JAVA 中:

我在数据库中有一些信息,这不是机密信息,我允许未经身份验证的设备读取这些信息。但我还需要让任何第三方服务器读取此信息。

但是,使用 Admin SDK 的服务器如何在没有凭据的情况下连接到我的数据库:

FirebaseOptions options = new FirebaseOptions.Builder()                  
          .setDatabaseUrl("https://xxx.firebaseio.com/")                  
          .build();

以上代码无效:

java.lang.NullPointerException: FirebaseOptions must be initialized with setCredentials().

错误消息告诉您需要管理员凭据来初始化 SDK。这是因为使用 Admin SDK 的含义是您希望管理员访问 Firebase 项目中的资源。如果您不想获得管理员权限,请不要使用 Admin SDK。相反,您可以使用 REST API.