クリックジャック保護

Tableau Server にはクリックジャック攻撃に対する保護が含まれています。クリックジャックとは、無関係のページ上の透明なレイヤーに攻撃するページを表示することで、攻撃者がユーザーにクリックさせたり、コンテンツを入力させようとする、Web ページに対する攻撃の一種です。Tableau Server との関連では、攻撃者はユーザーの認証資格情報を取得したり、認証されたユーザーを取得してサーバー上の設定を変更したりするためにクラックジャック攻撃を使用する可能性があります。クラックジャック攻撃の詳細については、Open Web Application Security Project の Web サイト上の「クリックジャック」(新しいウィンドウでリンクが開く)を参照してください。

注:クリックジャック保護は、Tableau Server の以前のバージョンでは利用できましたが、既定では無効になっていました。Tableau Server 9.1 以降の新しいインストールでは、クリックジャック保護は明示的に無効にしない限り常にオンになります。

クリックジャック保護の効果

Tableau Server でクリックジャック保護が有効になっている場合、Tableau Server から読み込まれたページの動作は次のように変化します。

  • Tableau Server は、X-Frame-Options: SAMEORIGIN ヘッダーをサーバーから特定の応答に追加します。ほとんどのブラウザーの最新バージョンでは、このヘッダーによりコンテンツが <iframe> 要素に読み込まれないように防止されるので、クリックジャック攻撃を防ぐのに役立ちます。

  • 最上位のページは Tableau Server から <iframe> 要素に読み込むことができません。これには、サインイン ページが含まれています。結果的に、作成したアプリケーションで Tableau Server のページをホストできなくなる場合があります。

  • ビューのみ埋め込むことができます。

  • 埋め込みビューがデータ ソースの認証資格情報を必要とする場合、ユーザーが安全に認証資格情報を入力できるような安全なウィンドウでビューを開くためのリンクと共にメッセージが <iframe> 要素に表示されます。ユーザーは認証資格情報を入力する前に、開いたウィンドウのアドレスを常に確認する必要があります。

  • この例のように、クエリ文字列に :embed=y パラメーターを含んでいる場合のみビューを読み込むことができます。

    http://<server>/views/Sales/CommissionModel?:embed=y

    :クリックジャック保護が有効になっている場合、ブラウザーのアドレス バーからコピーされた URL を使用する埋め込みビューが読み込まれない場合があります。サーバー名の後にナンバー記号 (#) を含むビューの URL (たとえば、http://myserver/#/views/Sales/CommissionModel?:embed=y) は通常、Tableau Server でクリックジャック保護が有効化されるとブロックされます。

クリックジャック保護の無効化

ユーザーによる Tableau Server の使用に影響が及ばない限り、クリックジャック保護を有効のままにすることをお勧めします。クリックジャック保護を無効にするには、次の tsm コマンドを使用します。

  1. tsm configuration set -k wgserver.clickjack_defense.enabled -v false
  2. tsm pending-changes apply

    保留中の変更にサーバーの再起動が必要な場合は、pending-changes apply コマンドの実行時に、再起動が行われることを知らせるメッセージが表示されます。このメッセージはサーバーが停止していても表示されますが、その場合には再起動は行われません。--ignore-prompt オプションを使用してメッセージが表示されないようにできますが、そのようにしても再起動に関する動作が変わることはありません。変更に再起動が必要ない場合は、メッセージなしで変更が適用されます。詳細については、tsm pending-changes applyを参照してください。

フィードバックをお送りいただき、ありがとうございます。フィードバックは正常に送信されました。ありがとうございます!