← TOOLS & POSTS一覧へ戻る
開発 2026-08-17

Xログイン(OAuth2 + PKCE)を実装した話

「絶対に帰れないオフィス」には、Xアカウントでログインすると、セーブや実績、過去ログが記録される機能があります。この記事では、なぜXログインを選んだのか、実装する中でどんな点を意識したかを書いておきます。

自前のID・パスワード管理をしない理由

個人開発でユーザーアカウントを扱う場合、一番避けたいのはパスワードの管理です。パスワードを自前で保存する仕組みを作ると、それだけで漏えいリスクを背負うことになりますし、適切なハッシュ化や運用まで含めると、個人開発の範囲を超える負担になります。既に多くの人が使っているXのアカウントでログインできるようにすれば、パスワードを扱う責任そのものをこちらが負わずに済みます。

OAuth2、そしてPKCEを使う理由

Xログインの実装には、OAuth2という仕組みを使っています。その中でも「PKCE」という方式を採用しました。PKCEは、認証の途中でやり取りされる情報を第三者に横取りされても、それだけでは不正にログインできないようにするための仕組みです。ゲームというエンタメのサービスであっても、ユーザーのアカウント情報に関わる部分は、必要以上に手を抜かず、きちんとした方式を選ぶようにしています。

「お試しプレイ」との両立

ログインを必須にしてしまうと、遊んでみたいだけの人にとってハードルになってしまいます。そのため、ログインしなくても最初の数ターンは遊べる「お試しモード」を用意し、ログインは「セーブや実績を残したい人が任意で行うもの」という位置づけにしています。この設計によって、遊びやすさとアカウント管理の安全性を両立させています。