Magic Links - Passwordless Email Login
About 2 min read
マジックリンクとは、ユーザーのメールアドレスに送信される一回限りのログイン用 URL です。 パスワードを入力する代わりに、メール内のリンクをクリックするだけで認証が完了します。 Slack、Notion、Medium などのサービスが採用しており、パスワードレス認証の 手軽な実装方法として注目されています。ただし、セキュリティはメールアカウントの 安全性に完全に依存するため、パスキーのような より堅牢なパスワードレス技術とは明確に区別する必要があります。
マジックリンクの仕組み
マジックリンクの認証フローは、技術的にはワンタイムパスワード (OTP) と 類似しています。数字コードの代わりに、暗号学的に安全なランダムトークンを含む URL をメールで送信する点が異なります。
トークンには以下の制約が設けられます。
- 有効期限: 通常 10〜30 分。期限切れのリンクは無効になる
- 一回使用: クリック後にトークンは即座に無効化される。再利用不可
- 暗号学的ランダム性: 推測不可能な十分な長さ (128 ビット以上) のトークンを使用
- IP バインド (オプション): リクエスト元とクリック元の IP を照合するサービスもある
採用事例
パスワード入力の代替として「メールでサインインリンクを送信」オプションを提供。 チーム参加時の初回ログインで多用される。
デフォルトのログイン方法としてマジックリンクを採用。パスワード設定自体が不要な UX を実現している。
ソーシャルログインと並ぶ認証手段として提供。コンテンツプラットフォームの 手軽さを重視した選択。
メリットとデメリット
| メリット | デメリット |
|---|---|
| パスワードの記憶・管理が不要 | メールアカウントの安全性に完全依存 |
| パスワード漏洩・使い回しのリスクがない | メール到着までの待ち時間 (数秒〜数分) |
| 実装がシンプル (サーバー側のパスワード保存不要) | フィッシング耐性がない (偽メールに騙される可能性) |
| ユーザー登録のハードルが低い | オフライン環境ではログイン不可 |
特に注意すべきは、マジックリンクにはフィッシング耐性がない点です。 攻撃者が偽のログインページを用意し、ユーザーにメールアドレスを入力させれば、 正規のマジックリンクがユーザーのメールに届きます。ユーザーがそのリンクをクリックすると、 攻撃者のセッションが認証されてしまう中間者攻撃のシナリオが成立します。メールアカウント保護の記事で メールセキュリティの強化方法を確認してください。
パスキーとの比較
マジックリンクとパスキーは どちらもパスワードレス認証ですが、セキュリティモデルが根本的に異なります。
| 観点 | マジックリンク | パスキー |
|---|---|---|
| 認証の基盤 | メールアカウントの所有 | デバイスの所有 + 生体認証 |
| フィッシング耐性 | なし | あり (オリジンバインド) |
| ログイン速度 | 遅い (メール待ち) | 即時 (指紋・顔認証) |
| 導入の容易さ | 非常に簡単 | やや複雑 (WebAuthn 実装) |
パスキー移行の課題の記事で、 マジックリンクからパスキーへの段階的な移行戦略を解説しています。
よくある誤解
「マジックリンクはパスワードより安全」という認識は半分正しく半分誤りです。 パスワードの使い回しや弱いパスワードのリスクは排除できますが、メールアカウントが 侵害されていれば全てのマジックリンクが攻撃者の手に渡ります。メールアカウントに多要素認証 (MFA) を 設定していない場合、マジックリンクのセキュリティは脆弱なパスワードと大差ありません。二要素認証の記事で メールアカウントの保護方法を確認してください。passwordless authentication books on Amazonも参考になります。
現場での使用例
「社内ツールのログインをマジックリンクに切り替えたところ、パスワードリセット 依頼がゼロになりました。ただし、メールの到着に 30 秒以上かかるケースがあり、 ユーザーから『ログインが遅い』という声も出ています。頻繁にログインする ツールにはパスキーを、たまにしか使わないツールにはマジックリンクを、 という使い分けに落ち着きました。」
Was this article helpful?