5

診断ツールを準備中です。iframe 内の Web サイトで動作します - javascript のみです。

ここで必要なのは、iframe にある Web サイトのセッション Cookie を取り除くことです。いくつかの操作を実行した後、ログアウトする必要があります。

残念ながら、セッション Cookie は httpOnly フラグでマークされているため、javascript から削除することはできません。シークレット モードで iframe を開く方法も見つかりませんでした。

これを達成するためのルールは次のとおりです。

  • 対象の Web サイト サーバーに任意のファイルを追加できます
  • ウェブサイトのドメインで任意の JavaScript を実行できます
  • ユーザーに特定のブラウザの使用を強制できます (クロスブラウザ ソリューションである必要はありません)。
  • ウェブサイトのコードを変更できません
  • ソリューションは、サーバーとプログラミング言語に依存しない必要があります

回避策のアイデアはありますか?

4

7 に答える 7

2

私が理解する限りでは -

それを考えると-ユーザーのログイン/ログアウトが実装されたWebサイトができます。

したがって、診断アプリがターゲットWebサイトのログアウトURLを構成変数または設定(サーバーにjsまたはファイルを配置することによって)として持つことができる場合、このジョブは非常に簡単になります。必要に応じて、診断アプリにそのログアウトURLをロードさせてください。

于 2012-08-09T15:33:00.440 に答える
2

javascript から httpOnly Cookie を管理することはできません。

しかし、ページを分析したいだけでなく、jsも使用したいと思います。では、なぜ iframe を使用するのでしょうか?

html または javascript の外部から分析するページのコンテンツを取得できます。

  • アプリケーションプロキシに ajax リクエストを行う
  • html5 websockets をプロキシ サーバーとして使用します。websocket サーバーはあなたのものだと思います。Websocket にはクロスドメイン機能もあります。

次に、フェッチされた DOM を解析する必要があります (これに組み込まれているものを見ました)。そして、分析を始めましょう。

于 2012-08-09T09:37:26.570 に答える
1

JavaScriptがあるので、サーバーに AJAX リクエストを送信し、セッション変数の設定を解除するように指示するだけです。

于 2012-08-07T16:27:32.763 に答える
1

iframe で Cookie が使用されないようにするだけの場合は、sandbox 属性を使用してみてください。

以下に非常によく似た質問のようです。

フレーム/Iframe 内の Cookie を無効にする

あなたの質問を正しく理解していることを願っています。

于 2012-08-02T18:23:48.253 に答える
0

IFrameがURLを参照するとします:example.com/iframe.html。

代わりにcookieless.example.com/iframe.htmlを参照し、そのリクエストを取得してexample.com/iframe.htmlに戻すサーバーサイドリバースプロキシルールを設定します。

サーバーサイドでのCookieの設定方法(例:'.example.com')に応じて、Cookieはwwwとroot-domainにのみ設定されます。

于 2012-08-04T17:12:31.027 に答える
0

Cookieヘッダー値を記録し、リクエストの値に基づいて後の段階でこのヘッダー値をリセットする、ある種のサーバー側プロキシが必要になると思います。

これは、任意の言語で記述するのはそれほど難しくありません。たとえば、IIS / .net フレームワークでは、IHttpModule の実装になります。

于 2012-08-08T14:48:38.933 に答える
-1

唯一の方法は、Cookie を無効にすることです

于 2012-08-11T06:06:36.977 に答える