The user needs access to read / write the firestore users collection.. I think this is missing from the docs.
match /users/{userId} {
allow read: if request.auth != null && request.auth.uid == userId;
allow write: if request.auth != null && request.auth.uid == userId;
}