WEB

Supabaseを使ったユーザー認証をNext.jsサンプルからやってみました~IDaaSの観点に着目して~

こんにちは。nap5です。

Supabaseを使ったユーザー認証をサンプルからやってみましたので、紹介したいと思います。

今回はデモというよりは手順を記載する感じになります。

気になっていたサードパーティー経由のユーザー認証のマージ処理は結論から言うと、先勝ちでした。つまり、単一のユーザーメールアドレスで最初にGoogleでログインした場合、2回目以降Githubでログインしても、Supabase上ではGithubをプロバイダーとしてログインしたというデータは残らなかったです。既存のメールアドレスを削除すると、最初とは異なるプロバイダーでログインしたデータは記録されていました。

ここらへんはAuth0Okta、AWSのCongintoなどにサードパーティー経由のユーザー認証のマージ処理は軍配が上がりそうです。

今回のSupabaseの挙動と似たような感じが得られるのはFirebaseのAuthenticationなどですかね。Userfrontとかも同じかもしれません。(ドキュメント上はいい感じにマージしてくれそうな感じはあります。)

要件としてログイン方式のパイプは広げていきたいが、ユーザーは一意に特定したいという際には、出だしの提案が大切になるので、意識したい点です。

今回はSupabaseのサンプルレポジトリを使ってNextjsでSupabaseを動かしてみました。

Google認証の有効化手順はこちらです。

Github認証の有効化手順はこちらです。

簡単ですが、以上です。