6
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Shopifyのマルチパス機能に対応していないSNSログインアプリは使ってはいけない

Posted at

ShopifyでSNSログインできるアプリを作ろうと思って調べていたら、ん?と思うことがあったので記事にしました

ShopifyでSNSログインを実現するのはどうするか

Plusプランで使えるマルチパスという機能を使うことで実現可能です(月額2000ドルしますが...)

例えばこのアプリ

ADVANCEDプランに

▼Shopify Plusでご利用可能になる追加機能です▼
ソーシャルログインで簡単登録

とあります
他のプランはあくまで「会員IDとLINE IDを連携」という表現です

つまりPlusプランに入る以外に安全にSNSログインを実現することはできません

でもPlusプランじゃなくてもSNSログインできるアプリが普通にある

Shopifyのアプリストアを見ると、プランに関わらずSNSログインできるアプリが存在します
例えばこの辺

これらは大体以下のような流れでSNSログインを実現しています

1. ショップのSNSログインボタンクリック
2. 別ウインドウでSNSログイン画面表示
3. SNSログイン後、アプリ側にアカウントを作成してSNSのIDと紐付ける。この時メールアドレスはSNS情報のメールアドレス、パスワードはランダムな文字列で生成
4. shopify apiで上記アカウントを作成
5. 別ウインドウの中で、visibility hiddenのshopifyログイン画面(フォームが非表示になっているログイン画面)に遷移し、javascriptで上記メールアドレスとパスワードでフォームが非表示になっているログイン画面をポストする
6. 成功したらログインしていたウインドウを閉じて、ショップ側の画面をリロードする

つまり、Shooifyのログインの仕様が変わったら(例えばreCAPTCHAが必須になったとか)突然ログインできなくなる可能性もあります
そもそも、アプリ側で平文のパスワードを持っているということになるので、セキュリティ的に問題があります
これらのアプリを普通におすすめアプリとして紹介してるブログ等もありますが、使うべきではないと思います

ちなみに

上記アプリは公開されてから何年も経ってますし、どういう見解なのかShopifyに聞いてみました
スクリーンショット 2023-01-07 16.25.13.png
とのこと、なんともモヤモヤしますが、良くないことは認識しているよう
アプリ使用停止したら既存ユーザーがログインできなくなってしまうからでしょうか

6
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
4

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?