Closed3

DB から Firebase Authentication への移行

9sako69sako6

DB に保存されているユーザーデータを Firebase Authentication に移行したい。
Provider は Google を使っている。

https://firebase.google.com/docs/cli/auth?hl=ja#auth-import

9sako69sako6

こういう JSON を作る必要がある。

{
  "users": [
    {
      "localId": UID,
      "email": EMAIL_ADDRESS
      "emailVerified": EMAIL_VERIFIED,
      "passwordHash": BASE64_ENCODED_PASSWORD_HASH,
      "salt": BASE64_ENCODED_PASSWORD_SALT,
      "displayName": NAME,
      "photoUrl": PHOTO_URL,
      "createdAt": CREATED_AT_IN_MILLIS,
      "lastSignedInAt": LAST_SIGNEDIN_AT_IN_MILLIS,
      "phoneNumber": PHONE_NUMBER
      "providerUserInfo": [
        {
          "providerId": PROVIDER_ID,
          "rawId": PROVIDER_UID,
          "email":  PROVIDER_EMAIL,
          "displayName": PROVIDER_NAME,
          "photoUrl": PROVIDER_PHOTO_URL
        },
        ...
      ]
    },
    ...
  ]
}

Google Provider の場合は以下。localId 以外は省略可能。

type User = {
  localId: string;
  email: string;
  emailVerified: boolean;
  displayName: string;
  photoUrl: string;
  lastSignedInAt: string;
  createdAt: string;
  providerUserInfo: [
    {
      providerId: "google.com";
      rawId: string;
      email: string;
      displayName: string;
      photoUrl: string;
    },
  ];
};
9sako69sako6

既存のテーブルとカラム情報を調べる。
Postgres

SELECT
    table_name,
    column_name,
    data_type,
    is_nullable,
    column_default
FROM
    information_schema.columns
WHERE
    table_schema = 'public'
ORDER BY
    table_name,
    ordinal_position;
このスクラップは1ヶ月前にクローズされました