![](/img/trans.png)
[英]Firebase App Check Quota Limits when using with firestore SDK in android
[英]Firebase App check denied all queries for Firestore in Android
遵循此處的教程,但是當 firebase 應用程序檢查被強制執行時,所有查詢都被拒絕
W/FirebaseProfileService:使用 com.google.firebase.firestore.FirebaseFirestoreException 失敗:PERMISSION_DENIED:權限缺失或不足。
我已經在主要活動中運行了應用程序檢查,它沒有產生任何錯誤。
fun appCheck(){
FirebaseApp.initializeApp(this)
val firebaseAppCheck = FirebaseAppCheck.getInstance()
firebaseAppCheck.installAppCheckProviderFactory(
PlayIntegrityAppCheckProviderFactory.getInstance()
)
}
我還可以在日志中看到請求令牌。
I/PlayCore: UID: [] PID: [] IntegrityService: requestIntegrityToken(IntegrityTokenRequest{nonce=*****
I/PlayCore:UID:[] PID:[] IntegrityService:啟動與服務的綁定。
I/PlayCore: UID: [] PID: [] IntegrityService: ServiceConnectionImpl.onServiceConnected(ComponentInfo{com.android.vending/com.google.android.finsky.integrityservice.IntegrityService})
I/PlayCore:UID:[] PID:[] IntegrityService:linkToDeath
W / Firestore:(24.1.2)[Firestore]:**********失敗:狀態{code = PERMISSION_DENIED,描述=缺少或權限不足。,原因= null}
出於隱私原因,“***”數據已被省略
有沒有辦法檢查 AppCheck 或 PlayIntegrity 錯誤? 雲監控似乎只監控雲功能。 如前所述,當不強制執行 AppCheck 時,所有查詢和 Firestore 規則都可以正常工作。
除了將版本上傳到 Play 商店控制台之外,似乎也沒有提到在哪里指定應用程序的最新版本。 我是否必須為 AppCheck 上傳版本才能允許 Firestore 查詢?
編輯:我傾向於這是 IAM 角色的問題。
這是我從 Firebase 支持得到的答案。 顯然,應用程序必須在應用程序檢查與播放完整性一起工作之前發布。 我與firebase的聊天:
是的,必須在 Google Play 商店中發布應用程序,才能獲得有效的 SHA-256 指紋,然后開始驗證 PlayIntegrity 的請求。 您可以查看此參考。
在您的情況下,如果應用程序仍在開發或持續集成中,最好在模擬器中使用調試令牌。
檢查你的隨機數是否太短。
在 nonce 字段中設置的值必須格式正確:
String
URL-safe
Encoded as Base64 and non-wrapping
Minimum of 16 characters
Maximum of 500 characters
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.