勘違い
とあるSNS配信アプリの解説ブログに会員制コンテンツを導入した。
しばしば記事を書くとフィードバックをもらいにSNS上の仲間に意見を求めていて、新たな試みをするときは必ずと言っていいほどそうしていた。
今回も例に漏れずSNS上の仲間に使ってもらってみた。
しかし、ログインができないと言われた。
そんなわけはない、と思った。
DockerでWordPressのテスト環境を構築し、チェックもしていて、本番環境でもテストページを作った。
いくつかのメールアドレスとパスワードの組み合わせで試して、会員登録ができること、ログインができることは確認済みだった。
「え?これって、SNSアプリのパスワードでログインできるんじゃないの?」
なるほど。開発元とは関係のない非公式のアプリの解説サイトとはいえ、そのアプリのログイン情報でログインできると思う人もいるのか。
そうして、SNS配信アプリを使って認証をどうにかできないかと模索する運びとなった。
そして認証システムを作った
以前、サイト内の人気ユーザーランキングを作る試みで、プロフィールページをスクレイピングして、ユーザー情報を取得するAPIを開発していた。
プロフィール画像やユーザー名、投稿内容を取得するAPIで、ログインユーザーのみがアクセスできる情報には手をつけることができない。
もちろん、アプリ開発元と連携が取れるわけもなく、OAuthや公開鍵認証のような外部サービス連携の標準的な認証方式は使えなかった。
苦肉の策で思いついたのが、「所有者証明フレーズ」を用いた所有者検証だった。
とやってみたものの、ログインが少し手間でユーザーも慣れてないため分かりづらいシステムとなってしまった。
いつか改修して使いやすくできるといいな・・・。