2017-03-18 2 views
0

によって発行された302のリダイレクトを以下ませんIISのAzure AppService Webサイト。アレクサアプリケーションは、私はリンクのアカウントをサポートAlexaのスキルに働いていると、マイクロソフトでASP.NETコアアイデンティティとASP.NETのコアを使用してアカウントをリンクするためのインフラをホスティングしていASP.NETコアアイデンティティ

Microsoft.AspNetCore.Authentication.* NuGetパッケージを使用して、Amazon、Facebook、GitHub、Google、Microsoft、Twitterを使用してサインインする機能を実装しました。これらはすべて、Webブラウザの標準サインインと、ブラウザを介したアカウントリンクプロセスの手動テストのために完璧に機能します。しかし、iOSのアレクサAppを使用する場合

、AmazonやFacebookのだけが働いています。埋め込みアプリケーションからの使用が許可されていないため(私はGoogle 403のページにこれを伝えるようになっている)、他の3人は何が起こっているのかわからない。 iOS Safariではうまく動作するので、iPhoneやiPadのどこにも問題がないように見えます。

GitHubに、マイクロソフトやTwitterのすべては、サインインフォームの送信時にハングアップしたように見えます。私はCSPを使用

は、私は(例えば、時々Amazonは私だけaccount.amazon.comを使用することだろうと思ったとして、それは最初に失敗する原因na.account.amazon.comにリダイレクト)多分form-actionリストが正しくないと思ったが、問題が持続する場合CSPのリストが更新され、一時的に何かがCSPを排除できるようになりました。また、私はreport-uri.ioをエラーのないCSPと共に使用します。

フィデラー経由で私のiPhoneとiPadをプロキシとして実行しましたが、埋め込まれたページが正しく私のサイトにHTTP POSTを送信することが判明しました。 AmazonやFacebookの場合、302がフォローされ、物事は期待通りに機能します。問題のある残りの3人は、Alexa Appからのリクエストが終了したようです。

組み込みブラウザが完全に署名しようとしたときに、どっちつかずの状態でユーザーを残して、HTTPの302Sを無視しているようだ

私はまた異なる挙動を示すのAndroidアレクサアプリケーションを、試してみた:。

  1. アマゾン - アプリ内の流れを壊し、負荷にChromeをリダイレクトします。
  2. Facebook - 正常に動作します。
  3. GitHub - リダイレクトするとChromeが読み込まれ、アプリ内のフローが破られます。
  4. グーグル - 正常に動作します。
  5. マイクロソフト - アプリ内の流れを壊し、負荷にChromeをリダイレクトします。
  6. Twitter - リダイレクトするとChromeが読み込まれ、アプリ内のフローが破損します。

唯一の共通点はFacebookとGoogleが両方のアプリで動作することです(ただし、GoogleはiOSでの使用を禁止しています)。

Alexa Appsがこれらのリダイレクトに正しく従わない原因となる可能性があるものは何ですか?何が原因でiOSアプリがリダイレクトに従わないのですか? Androidアプリでは、アプリ内ブラウザではなくChromeでリダイレクトが開かれる原因は何ですか?

答えて

1

Alexaアプリは、アカウントのリンク処理中にURLをリダイレクトするかどうかを決める(一見無作為に見える)ようです。

アカウントリンク時に使用される可能性のあるホストを、開発者ポータルのスキル構成の認可URLのオプションリストにリストすると、正常に動作します。

Amazonの開発者フォーラムでこのコメントを見つけた後に決定されます:https://forums.developer.amazon.com/answers/27564/view.html

関連する問題