我正在使用 Go 中的“cloud.google.com/go/firestore”api 在本機模式下使用 Google Firestore 和其中的 CRUD 資料。只要您知道專案 ID 并在服務器上使用 Firestore API,對資料的訪問是完全開放的。在我弄清楚如何保護資料免受服務器攻擊之前,我不想嘗試這些規則。同樣,所有 API 需要的是訪問資料的專案 ID,因此我需要先將其鎖定,然后再進一步移動。規則僅適用于我閱讀的移動/網路客戶端,服務器端客戶端完全繞過規則。請幫忙。我不想使用 Firebase API,因為攻擊者仍然可以使用 Firestore api 來訪問資料。
uj5u.com熱心網友回復:
從您問題中的有限資訊中不清楚,但是您的 Firestore 資料庫不對任何擁有專案 ID 的人開放。
該服務只能由具有有效憑據的任何事物(人|機器)訪問。擁有 Gmail 帳戶或服務帳戶密鑰持有者的人。
在任一情況下,只有您明確添加到專案的身份才能訪問其資源,然后只有具有適當 IAM 角色|權限的身份才能訪問。
Google 提供了一種稱為應用程式默認憑據 (ADC)的優雅工具,可簡化對客戶端的身份驗證。
我懷疑您的代碼正在使用 ADC 來驗證您對專案|服務的身份。
uj5u.com熱心網友回復:
只要您知道專案 ID 并在服務器上使用 Firestore API,對資料的訪問是完全開放的。
如果這是一個問題,請考慮在您的 Firestore 資料庫的 Firebase安全規則中禁止所有訪問。
另請查看我在此處的回答以了解為什么共享您的專案 ID 不是安全問題,事實上,如果您想允許從客戶端設備直接訪問,這是必要的:向公眾公開 Firebase apiKey 是否安全?. 如果您不想允許直接的客戶端訪問,關閉安全規則(默認情況下,除非您test mode在創建資料庫時選擇)是要走的路。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/392437.html
標籤:去 谷歌云平台 谷歌云firestore
上一篇:如何在Gin中添加具有相同路徑前綴和引數的不同端點?
下一篇:golang是快取DNS嗎?
