firestore 无法获得权限被拒绝错误的子集合
firestore failed to get subcollection with permission denied error
我想使用 java 库获取包含所有子集合的文档。
我的 firestore 有以上数据
/groups/group1/posts/post1
/groups/group1/users/user1
这是我的规则,我设置为允许所有测试请求。
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if true;
}
}
}
这是我的java代码
Iterable<CollectionReference> collections =
db.collection("groups").document("group1").listCollections();
for (CollectionReference collRef : collections) {
System.out.println("Found subcollection with id: " + collRef.getId());
}
但我遇到了这个错误
Caused by: io.grpc.StatusRuntimeException: PERMISSION_DENIED: Missing or insufficient permissions.
at io.grpc.Status.asRuntimeException(Status.java:535)
已更新
这不是androidsdk,官方文档是here
这是我的一部分 build.gradel
implementation 'com.google.cloud:google-cloud-firestore:3.2.0'
implementation group: 'com.google.cloud', name: 'google-cloud-storage', version: '2.7.1'
我更改了几行代码来设置凭据
.setCredentialsProvider(FixedCredentialsProvider.create(credentials))
它使工作变得清晰。
我想使用 java 库获取包含所有子集合的文档。
我的 firestore 有以上数据
/groups/group1/posts/post1
/groups/group1/users/user1
这是我的规则,我设置为允许所有测试请求。
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
match /{document=**} {
allow read, write: if true;
}
}
}
这是我的java代码
Iterable<CollectionReference> collections =
db.collection("groups").document("group1").listCollections();
for (CollectionReference collRef : collections) {
System.out.println("Found subcollection with id: " + collRef.getId());
}
但我遇到了这个错误
Caused by: io.grpc.StatusRuntimeException: PERMISSION_DENIED: Missing or insufficient permissions.
at io.grpc.Status.asRuntimeException(Status.java:535)
已更新
这不是androidsdk,官方文档是here
这是我的一部分 build.gradel
implementation 'com.google.cloud:google-cloud-firestore:3.2.0'
implementation group: 'com.google.cloud', name: 'google-cloud-storage', version: '2.7.1'
我更改了几行代码来设置凭据
.setCredentialsProvider(FixedCredentialsProvider.create(credentials))
它使工作变得清晰。