サイトに SAML サポートを実装しています。これを行うために、Django アプリでOneLogin の Python SAML Toolkitを使用しています。http://127.0.0.1:8000 (完全にローカル) またはhttp://192.168.xx:800 (ローカル ネットワーク)のいずれかのローカル マシンを使用している場合、OneLogin テスト アプリと Azure アプリの両方に接続すると、すべて正常に動作します。すべての URL を強制的に https にするステージング サーバーでこれを試すとすぐに、失敗します。IE11 は、ID プロバイダーの応答でデータをまったく POST できません。これは奇妙です。通常、Toolkit から次のようなエラーが発生します。
The response was received at https://dev.mysite.com:80/saml/connect/ instead of https://dev.mysite.com/saml/connect/
そのため、適切に構成する必要がありますが、IdP はポート 80 でステージング サーバーに POST を戻そうとし、混乱を招きます。最初からポート 80 を使用するようにすべて設定すると、Chrome はhttps://...:80を安全なものとして信頼しないため、おかしくなります。この問題を参照しているドキュメントや SO の質問が見つかりません。私が見たのは、OneLogin Python セットアップ手順の次のメモだけです。
Important: Ensure that your URLs begin with http, not https.
しかし、なぜなのかについての説明はありません。私は完全に混乱しています。