LoginSignup
1
2

More than 5 years have passed since last update.

iOS11に上げたら思ってた感じのSSOができなくなった話

Posted at

経緯

全然モバイルアプリ書かんのやけれど、認証情報の受け渡しについて考えるにあたって知っとかなあかんなぁと思って触ってて
SFSafariViewControllerとChrome Custom Tabsの動きは同じ感じって前提でちょっと検証したことを業界外の人向けくらいの内容で簡易まとめ

iOS11までの動き感

図の感じで正しい表現なのかはさておきイメージ。
アプリ(ポケモンGO)内でGoogleのアカウントを使ってソーシャルログインする場合下図のイメージになるはず

my1.jpg

やりたいこととしては
+ アプリにID/PW等の情報を渡さずに認証したって情報を渡したい
+ Safariで既にGoogleログインしているのであればその情報を使いたい

iOS11にアップデートしたことによって

ポケモンGOでGoogleでログインボタンを押してもSafariのセッションが使えなかった。

事象としては、図で言うところの紫の枠でセッション情報が共有されなくなったらしい
(SFAuthenticationSessionってやつ使えってことなんやろな。)

やったこととしては、まずサインアウトして

Signout

Googleでログインのボタンを選択

IMG_9507.JPG

Safariではログイン済みやのに、アカウント選択画面に至らない
(当然ながら別のアプリでSFSafariViewControllerでログインしててもここには表示されない)

IMG_9511.JPG

ちなみに上記画面で右下のSafariマーク押すと、実際にSafari経由で認可要求を送るため、Safariの保持しているセッションでログインできる。

IMG_9512.JPG

感想・疑問点

  • iOS11対応前のアプリで起こる現象に出会った
    • ポケモンGO側が予め対応準備してなかったの意外やなぁ
    • なんでAppleはSFAuthenticationSessionとSFSafariViewControllerどっちでも行ける時期を作らんかったんやろ
    • SFAuthenticationSessionの使い方勉強せななぁ
  • あの画面やとID/PW入力したくないよなぁ
    • ホンマにSafariViewControllerなんかなぁって不安が残る
    • ポケモンGOやったらまぁまだ良いけど良からぬアプリにID/PW打ち込むケース出そうやなぁ
    • わかる人は、まだiOS11対応じゃないアプリには右下のSafariボタン押して連携した方が良さそうやなぁ
1
2
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
1
2