[Bug] Unable to use custom claims in firestore security rule when querying from C++ SDK
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 25/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- cpp, firebase
- Ambito
- authentication, databases, security
Direzione di ricerca
Inizia riproducendo il fallimento al 100% con Firebase C++ SDK 13.0.0 su Mac, con target desktop o iOS, usando la regola Firestore mostrata e una query su subscriptions. Controlla il percorso delle richieste Auth e Firestore, inclusa la custom claim recuperata tramite Firebase Functions. Il lavoro è completato quando viene determinato se la claim raggiunge la regola di sicurezza per le query del C++ SDK e viene documentata o corretta la causa dell’errore di autorizzazione.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
[REQUIRED] Please fill in the following fields:
- Pre-built SDK from the website
- Firebase C++ SDK version: 13.0.0
- Problematic Firebase Component: Auth and Firestore
- Other Firebase Components in use: Functions, Storage
- Platform you are using the C++ SDK on: Mac
- Platform you are targeting: Desktop and iOS
[REQUIRED] Please describe the issue here:
I get Missing or insufficient permissions when querying firestore collection that has a security rule that looks like:
match /subscriptions/{subscriptionId} {
allow read: if request.auth != null && request.auth.token.legacy_id == resource.data.user_id;
}
I am using the C++ SDK, which doesn't give direct access to the auth custom claims, but I am able to fetch custom claims via a Firebase function, and see the values correctly in the client after those are fetched.
If I write a security rule that depends on those claims, it fails. Does writing a rule that uses request.auth.token.legacy_id work when the request comes from the C++ SDK?
Steps to reproduce:
What's the issue repro rate? 100%
It appears that using a custom claim (say, a numeric secondary ID) and requiring that to match a field on a document doesn't work when the query is run from the C++ SDK.
- Lingua principale
- C++
- Stelle
- 326
- Fork
- 138
- Merge medio
- 2g 16h
- PR unite (30g)
- 3
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di firebase/firebase-cpp-sdk
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
firebase/firebase-cpp-sdk#1905 · 2 commenti ·
-
api: firestore
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
firebase/firebase-cpp-sdk#1920 · 3 commenti ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 70/100
firebase/firebase-cpp-sdk#1904 · 1 commento ·
-
new type: question
Difficoltà 4/5 3-5 giorni Idoneità per principianti 45/100
firebase/firebase-cpp-sdk#1892 · 1 commento ·
-
nightly-testing
Difficoltà 4/5 3-5 giorni Idoneità per principianti 25/100
firebase/firebase-cpp-sdk#1859 ·
Tutte le issue di firebase/firebase-cpp-sdk
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
-
good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
ros2/message_filters#338 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
subsurface/subsurface#4984 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
flutter-webrtc/flutter-webrtc#2206 ·
-
litertlm-android AAR ships no consumer ProGuard rules → "mid == null" SIGABRT in minified apps Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
google-ai-edge/LiteRT-LM#3739 ·