2025/10/10

ローカルのSupabaseで認証メール等を送る設定方法

Supabase

ローカルで立ち上げたSupabaseでログイン機能を実装したときに、認証メール等の確認も行いたかったため、設定方法を調査しました。

Supabaseの設定ファイルを編集する

supabase/config.tomlを編集します。
まずはサイトのURLと認証プロバイダがアクセスできるリダイレクトURLを編集します。
メール内の認証リンク先と認証後にリダイレクトされる先が設定できます。

# 開発中のURLを設定します。自分の環境ではhttpsを使用しているため以下のようにしました。
site_url = "https://localhost:3000"

# 認証プロバイダにアクセスを許可するURL
additional_redirect_urls = ["https://localhost:3000/auth/callback"]

次にSMTP設定を行います。

[auth.email.smtp]
enabled = true
host = "your_smtp_host" # SMTPサーバーのホスト名
port = 587 # ポート番号
user = "your_smtp_user" # SMTPサーバーのユーザー名
pass = "env(SMTP_PASSWORD)" # SMTPサーバーのパスワード
admin_email = "test@test.com" # 送信元のアドレス
sender_name = "ADMIN" # 送信者名

パスワードは.envファイルに環境変数として追加してください。

SMTP_PASSWORD="your_smtp_password"

またデフォルトではサインアップ時に自動で認証されるようになっていますので、以下の設定を確認してください。

[auth.email]
enable_confirmations = false # 自動認証をOFF

これで設定は完了です。

Supabaseを再起動してメールが送信されるか試してみて下さい。

最後に

株式会社Robbitsでは一緒に働く仲間を募集しています!
ご興味のある方は是非一度ホームページをご覧ください!

ホームページを見てみる