web-dev-qa-db-ja.com

安全なページ上のiframeの安全でないコンテンツ

私は、SSL証明書を持ち、httpsの下で提供されるクライアント用のアプリケーションを開発中です。ただし、既存のサイトと統合するには、iframe内でナビゲーションを提供する必要があります。

ブラウザーがページ上の安全なコンテンツと安全でないコンテンツの混在について不平を言うと予想されるため、これが問題を引き起こすことがわかります。私はここで同様の質問を見てきましたが、彼らはすべてこれを逆に参照しているようです(iframeのコンテンツを保護してください)。

私が知りたいのは、iframe内に安全でないコンテンツが含まれ、安全なページに配置されると問題が発生するのか、そうであればどのような問題になるのでしょうか?

理想的ではない場合(そして、そうではないと強く感じている場合)、これをクライアントに説明できる必要があります。

63
moogal

https://www.example.com/main/index.jsp(SSL)を使用してページにアクセスしている場合、HTMLコードにhttp://(非SSL)。これにはiframeも含まれます。

ナビゲーションページが同じサーバーでホストされている場合、次のような相対URLを使用して「安全でないコンテンツ」メッセージを防ぐことができます...

<iframe src="/app/navigation.jsp" />

あなたの質問から、あなたのナビゲーションページは別のホストから提供されており、あなたはこのようなものを使用せざるを得ないようです

<iframe src="http://otherserver.example.com/app/navigation.jsp" />

もちろん、ブラウザで「安全でないコンテンツ」メッセージが発生します。

あなたの唯一の解決策は

  1. iframe参照にhttps://を使用できるように、ナビゲーションページを保持するサーバーにSSLを実装するか、または

  2. 相対URLを使用できるように、ナビゲーションアプリケーションを同じサーバーに移動します。

個人的には、JavaScriptのクロスドメインスクリプティングの問題(ファンキーなJSONPが関与している場合を除く)が発生するため、ナビゲーションが別のホストで行われる理由がわかりません。

26
Brad

ページがhttpの場合、httpsコンテンツを含むiframeが許可されます。

ただし、ページがhttpsの場合、httpコンテンツは許可されません。

次の可能性を書き留めましょう。

page - iframe - status

http - http  - allowed
http - https - allowed
https- http  - not allowed
https- https - allowed
42
Amol Ghotankar