Skip to content

Auth: providerData entries carry the Firebase UID and shared profile instead of each provider's own identity #77

Open

Description

@nbransby

From the Copilot review of #73 (#73 (comment)), on the credential sign-in from #69 by @TomislavMladenov.

FirebaseUserImpl.providerData is rebuilt from providerIds as UserInfo(displayName, email, phoneNumber, photoUrl, provider, uid), so every provider entry reports the Firebase account UID and the shared profile. On Android each entry carries the provider's own subject and profile (a Google or Apple subject generally differs from FirebaseUser.uid), so code that keys on providerData[i].uid sees the wrong identity, including after linking.

Suggested fix: preserve the providerUserInfo records from the IdP and account-lookup responses, persist them with the user, and merge them on link instead of reconstructing entries from providerIds.

Activity

  1. changed the title [-]Auth: providerData entries carry the Firebase UID and shared profile instead of each provider's own identity</title> <parameter name="labels">["enhancement"][/-] [+]Auth: providerData entries carry the Firebase UID and shared profile instead of each provider's own identity[/+] on Oct 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions