2017-02-18 6 views
0

Google App Engineの認証からOAuthに移動したばかりのウェブサイトがあります。私は私のiPhone上でログインして最初の時間は、私は私が私に私のウェブサイトへのショートカットを保存したのだので、私はこれに走ったUIWebViewsでのOAuthは、4月20日iOSアプリのGoogle OAuthをホーム画面に保存

https://developers.googleblog.com/2016/08/modernizing-oauth-interactions-in-native-apps.html

で停止しようとしていることを通知しましたiOSのホーム画面。これを回避するにはどうしたらいいですか? OAuth認証フローの新しいウィンドウをログインボタンに開いて、認証が完了したら新しいウィンドウを閉じることができます。しかし、これは、ユーザーがホーム画面に保存したアプリケーションの種類のように見え、ユーザーがUIWebViewに入っているかどうかを検出するため(新しいウィンドウを開くかどうかを判断できるように)、信頼性が低い可能性がありますGoogleが使用する検出結果と一致させようとしています。

このユーザーエクスペリエンスをどのように受け入れられるようにするための経験や指導をお持ちの方もいますか?

答えて

0

GoogleとAppleによって適用される制限により、この問題は簡単にまたは優雅に解決されません。 Googleでは、サンドボックス化されたブラウザでOAuthサービスを使用することはできません。また、iPhoneの「サンドボックス化された」ブラウザは、サンドボックス化されていないブラウザとのデータ(CookieやlocalStorageなど)を共有しません。したがって、OAuth交換を完了するために新しいウィンドウを開いた場合、交換の完了を伝えてユーザーIDを「サンドボックス」のブラウザセッションに戻す方法はありません。

私がこの問題に遭遇する唯一の解決策は、Rokuの登録プロセスに似ています。ユーザが現在ログインしているブラウザにワンタイムコードを生成させ、そのワンタイムコードを「サンドボックス」ブラウザ私は2桁有効な6桁のコードを使用することを選択し、コードが同じ人によって生成されて消費されるようにするためにいくつかのロジックを追加しました。

これは機能しますが、ユーザーエクスペリエンスは標準のOAuthフローほど良くはありません。そして私は、サンドボックス化されたブラウザからOAuthを制限するGoogleの理由を理解しています。しかし、ホームスクリーンに保存したPWAを使用するために、ユーザーに追加のフープを強制することによって、プログレッシブウェブアプリケーションを妨げている。

関連する問題