¿Cómo usar Admin SDK con privilegios limitados en Firestore?

Tengo algunos problemas con la función de la nube y las reglas del almacén de incendios. Me gustaría usar la función en la nube con privilegios limitados en Firestore y dar solo tiene acceso como se define en las Reglas de seguridad

Funciona sin problemas en RTDB pero no en Firestore.

He intentado con estas reglas

service cloud.firestore {
  match /databases/{database}/documents {

    match /init/{ID=**} {
        allow read, write: if true;
    }

    match /test/{ID=**} {
        allow read, write: if false;
    }
  }
}

Y esto

const admin = require('firebase-admin');
const functions = require('firebase-functions');
const FieldValue = require('firebase-admin').firestore.FieldValue;

admin.initializeApp({
    credential: admin.credential.cert(serviceAccount),
    databaseURL: 'https://******.firebaseio.com',
    databaseAuthVariableOverride: {
        uid: 'my-worker',
    },
});

const db = admin.firestore();

exports.onTestRights = functions.firestore
    .document('init/{initID}')
    .onCreate((event) => {
        const initID = event.params.initID;
        return db.collection('test').doc(initID).set({'random key': 'random value'}).then(()=>{
            console.log('working');
            return;
        }).catch((err) =>{
            console.log('error: ', err);
            return;
        });
    });

Pero todavía está escribiendo así, mientras que debería ser "permiso denegado"

¿Alguien sabe si es normal (o aún no implantado) en la tienda de incendios o si he entendido mal algo?

Editar: Por supuesto, mi objetivo final no es con estas reglas, sino solo dar acceso de escritura / lectura en algunos documentos / colecciones usando (allow read, write: if request.auth.uid == 'my-worker';)

Edit2: Me gustaría usar las reglas de seguridad para verificar como una transacción si no hay cambios durante el procesousando este modelo