---
schema_version: "1"
id: 4173b30af228e16e0a04c979c42e464c3ccac0442617ffd85ee32a49c85513b1
title: Tableau Server でダッシュボードと Viz の拡張機能を管理する
collection: tableau
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/tableau/current/ja-jp/server/dashboard_extensions_server.md
canonical_url: https://help.tableau.com/current/server/ja-jp/dashboard_extensions_server.htm
source_site: help.tableau.com
content_type: documentation
content_hash: 4b7559ae76483d91337f86d16c0fac61597a77edc5f43ba4a8ea581611b64d1e
description: Manage dashboard and viz extensions on Tableau Cloud or Tableau Server, including trusted and safe-listed extensions.
---
[メイン コンテンツに進む](#main-content)

# Tableau Server でダッシュボードと Viz の拡張機能を管理する

Tableau 拡張機能は、Tableau ワークブックで提供される分析機能を拡張できる Web アプリケーションです。拡張機能は、[Tableau Extensions API](https://tableau.github.io/extensions-api) を使用して、Tableau ワークブックの残りの部分とシームレスに統合し、連携します。

ダッシュボードの拡張機能は、カスタム ダッシュボード ゾーンで実行され、ダッシュボードの残りの部分と連携します。ダッシュボードの拡張機能を使用すると、ユーザーは他のアプリケーションを Tableau で直接操作できます。Viz 拡張機能はワークシート内で実行され、ユーザーはカスタム Viz タイプを使用できます。Tableau ユーザーは、ダッシュボードの拡張機能にダッシュボード オブジェクトからアクセスし、Viz 拡張機能にはワークシートのマーク カードを介してアクセスします。

**注:** サーバー管理者は、サーバーでダッシュボードと Viz の拡張機能を有効にしたり、特定の拡張機能の実行をブロックしたりできます。管理者は、拡張機能を許可リストに追加し、拡張機能でアクセス可能なデータのタイプを制御できます。サーバー管理者は、拡張機能を追加または表示する際に、サイト上のユーザーにプロンプトが表示されるかどうかを構成することもできます。また、サーバー管理者には、特定の拡張機能の使用をすべてのサイトでブロックできる権限があります。拡張機能のセキュリティと推奨される導入オプションについては、「[拡張機能のセキュリティ - 展開に関するベスト プラクティス](https://help.tableau.com/current/server/ja-jp/security_extensions.htm)」を参照してください

Tableau でダッシュボードの拡張機能を使用する方法の詳細については、「[ダッシュボードの拡張機能の使用](https://help.tableau.com/current/pro/desktop/ja-jp/dashboard_extensions.htm)」を参照してください。  

Viz の拡張機能を使用する方法の詳細については、「[ワークシートに Viz の拡張機能を追加する](https://help.tableau.com/v0.0/pro/desktop/en-us/viz_extensions.htm)」を参照してください。

Tableau Cloud については、「[Tableau Cloud でダッシュボードの拡張機能を管理する](https://help.tableau.com/current/online/ja-jp/dashboard_extensions_server.htm "新しいブラウザー タブでトピックを開く")」を参照してください。[](https://help.tableau.com/current/online/ja-jp/dashboard_extensions_server.htm "新しいブラウザー タブでトピックを開く")

## Tableau Server で拡張機能を実行する前に

拡張機能はオープン プラットフォームですが、一般的に考慮すべき標準形式が 2 つあります。

- Tableau の信頼できる拡張機能は、特定の審査を受け、Tableau が管理するホストで展開される拡張機能です。これらの拡張機能には、Tableau が開発および管理するソリューション、Tableau Exchange パートナーが構築し、Tableau の審査およびホスト サービスを通じて展開されるソリューション、および従来のサンドボックス拡張機能ホスト内のソリューションが含まれます。
- ネットワーク対応拡張機能: サードパーティーのホストでホストされる拡張機能です。ネットワーク対応拡張機能は、開発者が Tableau を介さずに拡張機能の配信を管理する際に役立ちます。これらには、より優れた本番環境サポートを提供するためにパートナーが直接管理する拡張機能、ローカル ネットワーク内でホストおよび展開される拡張機能、および Tableau 外部のサードパーティー サービスとの通信を必要とする拡張機能が含まれます。ネットワーク対応拡張機能には、Web へのフル アクセス権があります。

**注:** Tableau は Einstein Discovery ダッシュボードの拡張機能を介した Einstein Discovery との統合をサポートします。これは、Salesforce.com のデータにアクセスできる特別な拡張機能であり、既定で許可されています。これは、ネットワーク対応拡張機能またはサンドボックス拡張機能とは見なされません。Einstein Discovery の統合の詳細については、[Tableau Server のリリース ノート](https://help.tableau.com/current/server/ja-jp/whatsnew_server.htm#2021-1-einstein-predictions)を参照してください。

### Tableau の信頼できる拡張機能

2025.3 以降、Tableau の信頼できる拡張機能は、実用化された Tableau Exchange 拡張機能のサブセットの代表となっています。信頼できる拡張機能は Tableau ホストでホストされ、ユーザーのクライアントと Tableau との間の通信を制限するために必要です。これらの拡張機能には、展開前にネットワーク通信のテストと脆弱性のスキャンが実施されています。この拡張機能の標準形式は、拡張機能へのより管理されたアクセスを提供するために使用されます。この標準形式には以下が含まれます。

- サンドボックス拡張機能は Tableau によってホストされ、コンテンツ セキュリティ ポリシー (CSP) などの W3C 標準を使用することで、拡張機能が Tableau サンドボックス ホストの外部でネットワーク呼び出しを実行できないようにします。サンドボックス拡張機能ではデータをクエリできますが、サンドボックス環境ではそのデータの他の場所への通信が明示的にブロックされます。サンドボックス拡張機能は、Tableau 2019.4 以降でサポートされています。既定では、サイトの拡張機能が有効になっていればサンドボックス拡張機能を実行できます。
- Tableau が作成した拡張機能は、Tableau 開発チームによって開発され、積極的にメンテナンスされているソリューションです。Tableau が作成した拡張機能は、ユーザー データを外部にクエリするのではなく、ユーザーのクライアントに通信を向けるように明示的に設計されています。これにより、データ流出やデータ保持の設計上のリスクが制限されます。また、Tableau が作成した拡張機能は、Salesforce ソフトウェア開発ライフサイクル (SDLC) 標準も満たしています。既定では、サイトの拡張機能が有効になっていれば、Tableau が作成した拡張機能を実行できます。
- Tableau の信頼できるパートナーが作成した拡張機能は、Tableau Exchange に貢献している Tableau および Salesforce の認定パートナーによって開発され、積極的にメンテナンスされているソリューションです。Tableau 開発者は、これらのサードパーティー ソリューションを Tableau の信頼できる拡張機能として展開する前に、手動テストを通じて検証します。Tableau 開発者は、専用の Tableau ホストに展開する前に、拡張機能の機能テスト、ネットワーク通信テスト、自動コード スキャンを実施します。Tableau の信頼できるパートナーが作成した拡張機能は、Tableau 管理者によって有効にされ、使用可能になります。

### ネットワーク対応拡張機能

ネットワーク対応拡張機能は Web アプリケーションなので、Web サーバーとしてセットアップされた任意の PC で実行することができます。これにはローカル PC、ドメイン内の PC、サードパーティーの Web サービスが含まれます。ネットワーク対応拡張機能はサードパーティーのサーバー上でホストされ、ワークブックのデータにアクセスできる可能性があるため、信頼できる拡張機能のみを許可する必要があります。[ネットワーク対応拡張機能のセキュリティ テスト](#Test)を参照してください。

### 既定の拡張機能設定

管理者は、Tableau Server の拡張機能の設定を使用して、実行が許可される拡張機能を制御したり、制限したりすることができます。

- 既定では、明示的に無効にしない限り、拡張機能の実行が有効になっています。この設定は、サーバー管理者がすべてのサイトに対して一括管理するか、サイト管理者が特定のサイトで無効にすることができます。
- Tableau の信頼できる拡張機能の使用を許可することをお勧めします。既定では、サンドボックス化された拡張機能と Tableau が作成した拡張機能は、サイトで有効になっていれば実行可能ですが、Tableau の信頼できるパートナーが作成した拡張機能は、管理者が有効にすることができます。
- 既定では、ネットワーク対応拡張機能は明示的に許可リストに追加されていない限り許可されません。HTTPS プロトコルを使用する拡張機能のみが許可され、この場合、データの送受信用の暗号化チャネルが使用されます (唯一の例外は `http://localhost` です)。一部の拡張機能には、フル データ パーミッション (参照元データへのアクセス) が必要です。明示的にセーフ リストに拡張機能を追加し、拡張機能にフル データへのアクセス権を付与しない限り、これらの拡張機能を Tableau Server で実行することはできません。

## 制御に関する拡張機能の使用

サーバー管理者は、サーバー上のすべてのサイトで拡張機能を許可するように全体設定を制御できます。また、サーバー管理者は、サンドボックス拡張機能などの拡張機能が実行されないように全体の拒否リストに入れることもできます ([特定の拡張機能のブロック](#Block)を参照してください)。既定では、すべてのサンドボックス拡張機能がサーバーで有効になっていますが、サイト管理者によって既定の拡張機能を上書きし、サイトのサンドボックス拡張機能を禁止することもできます。

### サーバーでの拡張機能を有効にするグローバル設定の変更

1. サーバーでこの設定を変更するには、\[すべてのサイトを管理\] > \[設定\] > \[拡張\] に移動します。サーバーに 1 つのサイトしかない場合は、全体のコントロールがサイトの設定ページに表示されます。
2. \[Dashboard and Viz Extensions (ダッシュボードと Viz の拡張機能)\] で、\[このサーバーで拡張機能を実行することを許可する\] のチェック ボックスをオンまたはオフにします。このオプションをオンにしないと拡張機能の実行は許可されません。このグローバル設定は、各サイトでの \[このサイトで拡張機能を実行することを許可する\] 設定よりも優先されます。

### サイトの既定の設定の変更

サーバー管理者は、サイトに対して拡張機能を有効にするか、サイトで Tableau の信頼できる拡張機能を許可するかを制御できます。つまり、サーバーで拡張機能が有効になっている場合、既定のサイト設定によりサイトでのサンドボックス拡張機能の実行が許可されます。ただし、拡張機能がサーバー上で明示的にブロックされている場合を除きます。既定のサイト設定では、ネットワーク対応拡張機能がサイトの許可リストに登録されている場合は、実行が許可されます。拡張機能を明示的にセーフ リストに追加すると、その拡張機能がサイトで使用可能になります。

1. サイトでこれらの設定を変更するには、\[設定\] > \[拡張\] に移動します。
2. \[Dashboard and Viz Extensions (ダッシュボードと Viz の拡張機能)\] で、次のオプションを設定します。
    
    - このサイトで拡張機能を実行することを許可する
    - このサイトで信頼できる拡張機能を実行することを許可する

サーバー管理者はサイトの許可リストで拡張機能を追加または削除できます。許可リストに拡張機能を追加する場合、拡張機能にフル データへのアクセス許可するパーミッションを設定するかどうかを制御できます。「[許可リストへの拡張機能の追加と拡張機能の構成](#Add)」を参照してください。

## 許可リストの使用

許可リストを使用して、サイトで特定の拡張機能を実行することを許可します。許可リストは、主にネットワーク対応拡張機能に使用されます。既知の Tableau ホストから提供され、既定で実行が許可されている Tableau の信頼できる拡張機能とは異なり、ネットワーク対応拡張機能は、明示的に許可リストに追加されていない限り、使用が許可されません。許可リストを使用すると、拡張機能の実行を許可するパーミッションをユーザーに求めるかどうか、および拡張機能がワークブックのフル データ (参照元データ) にアクセスできるかどうかを制御することもできます。

既定では、Tableau の信頼できる拡張機能の実行が許可されています。これには、サンドボックス拡張機能と Tableau が作成した拡張機能が含まれます。既定の設定が変更され、許可されなくなった場合を除き、それらを許可リストに追加する必要はありません。信頼できるパートナーが作成した拡張機能も同様であり、許可されている場合は、明示的に許可リストに追加する必要はありません。

### 拡張機能の URL を確認する

拡張機能は Web アプリケーションとして URL と関連付けられます。この URL を使用して、拡張機能のテストや検証を行うことができます。また、この URL は拡張機能を許可リストに追加してフル データ アクセスを許可したり、拒否リストに追加してアクセスを禁止したりするのにも使用します。  
ネットワーク対応拡張機能またはその他の拡張機能を許可するには、拡張機能の URL を検索し、その URL を許可リストに追加する必要があります。URL を許可リストに追加すると、Web アプリケーションとの通信が承認されます。拡張機能の URL を特定するには、いくつかの方法があります。  

#### Tableau Exchange から  

Tableau Exchange からダウンロードした拡張機能を使用する場合は、Exchange のリスト ページで拡張機能の URL を見つけることができます。拡張機能のタイルを開き、\[Tech Specifications (技術仕様)\] の下にある \[Hosted at (ホスト先)\] という見出しの下の URL を探します。

![拡張機能の Tableau Exchange タイルには、ホストされている URL の場所が表示されます](/tableau/current/ja-jp/server/ja-jp/Img/gallery_ext_url_350x187.png)  

#### マニフェスト ファイルから  

拡張マニフェスト ファイル (`.trex`)、つまり拡張機能のプロパティを定義する XML ファイルがある場合、URL を `<source-location>` 要素から見つけることができます。マニフェスト ファイルは、Web ブラウザーを使用して Tableau Exchange から拡張機能をダウンロードすると取得できます。テキスト エディターでマニフェスト ファイルを開きます。

```

<source-location>
    <url>https://www.example.com/myExtension.html</url>
</source-location>

				
```

#### \[詳細\] ダイアログ ボックスを使用してダッシュボード拡張機能を確認する

ダッシュボードの拡張機能の場合、URL はダッシュボードの拡張機能のコンテキスト メニューにある拡張機能のプロパティから見つけることができます。\[その他のオプション\] メニューで \[詳細\] をクリックします。

![「バージョン情報」、「再読み込み」、「デバッグ オプション」、「フローティング」、「幅の固定」、「幅の編集」、「レイアウト コンテナの選択」、「選択解除」、「ダッシュボードから削除」などのオプションを含むコンテキスト メニュー。](/tableau/current/ja-jp/server/ja-jp/Img/about_extension_menu_224x217.png)

\[詳細\] ダイアログ ボックスには、拡張機能の名前、作成者、作成者の Web サイト、拡張機能の URL がリストされています。

![URL、バージョン番号、インスタンス ID など、データ ソースのサンプル拡張機能の詳細を示すダイアログ ボックス。](/tableau/current/ja-jp/server/ja-jp/Img/about_extension_url_281x209.png)

### 許可リストへの拡張機能の追加と拡張機能の構成

ユーザーがネットワーク対応拡張機能にアクセスできるようにするには、サイトの許可リストに拡張機能を追加します。既定では、許可リストに拡張機能を追加すると、その拡張機能は概要 (または集計) データにのみアクセスできます。また、拡張機能によるデータへのアクセスを許可するように求めるプロンプトをユーザーに表示するかどうかを制御することもできます。ユーザーにプロンプトを表示するかどうかを構成できるようにするために、拡張機能を許可リスト (たとえば、サンドボックス拡張機能) に追加する場合もあります。ユーザーにプロンプトが表示されないようにする場合は、拡張機能をすぐに実行できます。

1. \[設定\] > \[拡張\] に移動します。
2. \[特定の拡張機能の有効化\] で拡張機能の URL を追加します。[拡張機能の URL を確認する](#Identify)を参照してください。
    
    **ヒント:** ピリオドとアスタリスク (`.*`) を URL 内のワイルドカードとして使用して、特定のドメインまたは場所ですべての拡張子を許可することができます。たとえば、ポート 8080 を使用する example.com のドメインですべての拡張機能を許可するには、URL `https://example.com:8080/.*` を追加します。詳細については、「[許可リストの URL で正規表現を使用する](#RegEx)」を参照してください。
3. 拡張機能のフル データ アクセスに関し、\[許可\] または \[拒否\] を選択してください。
    
    フル データ アクセスとは、単なるサマリー データや集計データではなく、ビューの参照元データへのアクセスです。フル データ アクセスには、接続、フィールド、表の名前など、データ ソースについての情報も含まれます。通常、使用したい拡張機能を許可リストに追加する場合、必要に応じて、拡張機能がフル データにアクセスできるようにすることもできます。許可リストに拡張機能を追加する前に、[ネットワーク対応拡張機能のセキュリティ テスト](#Test)するようにしてください。
4. \[ユーザー プロンプト\] の \[表示\] または \[非表示\] を選択します。
    
    ダッシュボード拡張機能をダッシュボードに追加している場合、Viz 拡張機能をワークシートに追加している場合、または拡張機能が含まれたビューを操作している場合は、既定でユーザーにプロンプトが表示されます。このプロンプトには、拡張機能の詳細および拡張機能がフル データにアクセスできるかどうかが記載されています。このプロンプトによりユーザーには、拡張機能の実行を許可または拒否する権限が与えられます。ユーザーにプロンプトが表示されないようにし、拡張機能がすぐに実行されるようにできます。

### 拡張機能にワークブックまたはビューにアクセスするパーミッションがあることを確認する

ダッシュボードまたは Viz 拡張機能には、ビュー内の表示データへのアクセス権が必要です。表示データは、ワークシートまたはダッシュボードに表示されるサマリー集計データです。ワークブックまたはビューで \[サマリー データをダウンロードする\] パーミッションが許可されていることを確認します。拡張機能でデータがダウンロードされません。拡張機能には、ビュー内のデータを操作するためのパーミッションが必要です。

## 特定の拡張機能のブロック

既定のグローバル ポリシーでは、Tableau での拡張機能の使用が許可されています。既定では、サンドボックス拡張機能と Tableau が作成した拡張機能の実行が許可されています。サイトでは、信頼できるパートナーが作成した拡張機能と、許可リストに表示されるネットワーク対応拡張機能を有効にすることができます。サーバー管理者は、サーバーの拒否リストに特定の拡張機能を追加することで、それが実行されないようにすることができます。拡張機能が全体の拒否リストに入っている場合、サイトの許可リストにある拡張機能の設定が上書きされます。

1. 拡張機能をサーバーで拒否リストに追加するには、\[すべてのサイトを管理\] > \[設定\] > \[拡張\] に移動します。単一サイトのインストールでは、拒否リストはサイトの \[拡張\] 設定ページにあります。
2. \[特定の拡張機能のブロック\] で拡張機能の URL を追加します。[拡張機能の URL を確認する](#Identify)を参照してください。

### 許可リストの URL で正規表現を使用する

一般的に、拡張機能を許可リストに追加する場合は、拡張機能の特定の URL を使用する必要があります。ただし、同じドメインと場所からホストされている複数の拡張機能を許可したい場合もあります。この場合、URL でワイルドカードを使用すると便利です。拡張機能の設定では、正規表現の使用がサポートされています。

<table style="width: 90%;mc-table-style: url('Resources/TableStyles/Basic-Border-Light.css');margin-left: 0;margin-right: auto;" class="TableStyle-Basic-Border" cellspacing="0"><colgroup><col class="TableStyle-Basic-Border-Column-Column1" style="width: 162px;"> <col class="TableStyle-Basic-Border-Column-Column1" style="width: 540px;"></colgroup><tbody><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1" style="font-weight: bold;">正規表現</td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1" style="font-weight: bold;">説明</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyE-Column1-Body1"><code>.</code></td><td class="TableStyle-Basic-Border-BodyD-Column1-Body1">ピリオド (.) は、任意の文字と一致させるために使用できるワイルドカードです。URL にワイルドカードの代わりにピリオド (.) を指定する必要がある場合は、バックスラッシュ （<code>\.</code>） を使用して文字をエスケープすることができます。</td></tr><tr class="TableStyle-Basic-Border-Body-Body1"><td class="TableStyle-Basic-Border-BodyB-Column1-Body1"><code>*</code></td><td class="TableStyle-Basic-Border-BodyA-Column1-Body1">アスタリスク (*) は、前の文字の 1 つまたは複数のインスタンスを指定する量指定子です。</td></tr></tbody></table>

ワイルドカードを使用する場合は、許可リストの制限を緩和しすぎたり、アクセス不可の拡張機能へのアクセスを誤って許可したりしないように注意してください。

次の表は、URL で正規表現を使用する場合の例を示しています。これらの例では、拡張機能のプロトコルと完全な URL は示されていないことに注意してください。HTTPS プロトコルを使用する拡張機能のみが許可されます (http://localhost を除く)。

<table style="width: 90%;mc-table-style: url('Resources/TableStyles/Basic-Border-Light.css');margin-left: 0;margin-right: auto;" class="TableStyle-Basic-Border" cellspacing="0">
                    <colgroup><col class="TableStyle-Basic-Border-Column-Column1">
                    <col class="TableStyle-Basic-Border-Column-Column1" style="width: 242px;">
                    <col class="TableStyle-Basic-Border-Column-Column1" style="width: 304px;">
                    </colgroup><tbody>
                        <tr class="TableStyle-Basic-Border-Body-Body1">
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1" style="font-weight: bold;">指定する対象</td>
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1" style="font-weight: bold;">例</td>
                            <td class="TableStyle-Basic-Border-BodyD-Column1-Body1" style="font-weight: bold;">指定する内容</td>
                        </tr>
                        <tr class="TableStyle-Basic-Border-Body-Body1">
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">ドメインの範囲</td>
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">.*\.example.com</td>
                            <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">example.com にあるすべてのサブドメイン。</td>
                        </tr>
                        <tr class="TableStyle-Basic-Border-Body-Body1">
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">すべてのポート</td>
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">example.com:.*</td>
                            <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">example.com のすべてのポートからのアクセスが拡張機能に許可されます。</td>
                        </tr>
                        <tr class="TableStyle-Basic-Border-Body-Body1">
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">ドメイン、ポート、パスのすべての拡張機能</td>
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">example.com:8080/xyz/.*</td>
                            <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">
                                <p>ポート 8080 を使用し、zyz に配置されているドメイン example.com にあるすべての拡張機能にアクセスが許可されます。</p>
                            </td>
                        </tr>
                        <tr class="TableStyle-Basic-Border-Body-Body1">
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">ドメインの範囲のすべてのポート</td>
                            <td class="TableStyle-Basic-Border-BodyE-Column1-Body1">.*\.example.com:.*</td>
                            <td class="TableStyle-Basic-Border-BodyD-Column1-Body1">example.com にあるすべてのサブドメインのすべてのポートで拡張機能へのアクセスを許可します。</td>
                        </tr>
                        <tr class="TableStyle-Basic-Border-Body-Body1">
                            <td class="TableStyle-Basic-Border-BodyB-Column1-Body1">パターンに一致するドメインとパスにあるすべての拡張機能</td>
                            <td class="TableStyle-Basic-Border-BodyB-Column1-Body1">example.com/tc/.*</td>
                            <td class="TableStyle-Basic-Border-BodyA-Column1-Body1">たとえば、tic、tac、toc など、パターン t.c に一致するフォルダーにある example.com で実行されている拡張機能へのアクセスを許可します。</td>
                        </tr>
                    </tbody>
                </table>

## ネットワーク対応拡張機能のセキュリティ テスト

拡張機能とは、拡張 API を使用して Tableau のデータを操作する Web アプリケーションです。Tableau によって直接審査および管理されないネットワーク対応拡張機能を許可する場合、ユーザーは、これらの拡張機能がネットワークの呼び出しを行い、インターネット上のリソースにアクセスできる可能性があることに注意する必要があります。ネットワーク対応拡張機能を導入して広く展開する前に、ネットワーク対応拡張機能をテストして理解することをお勧めします。  

### ソース ファイルの調査

拡張機能には、さまざまな HTML、CSS、JavaScript ファイルや、拡張機能でプロパティを定義する XML マニフェスト ファイル (\*.trex) が含まれています。ネットワーク対応拡張機能を審査する際は、拡張機能の開発者に直接連絡して、審査するためのアクセス権とパーミッションを取得することをお勧めします。Tableau は、他の開発者のソース ファイルの配布やアクセス権の提供は行いません。

拡張機能のコードは GitHub で公開されているため、そこで調査したり、ダウンロードしたりできます。マニフェスト ファイル (`*.trex`) には、ソースの場所、つまり拡張機能がホストされている URL、作成者の名前、サポートの問い合わせ先となる作成者または会社の Web サイトが示されています。`<source-location>` 要素は URL を指定し、`<author>` 要素はサポートの問い合わせ先である組織名と Web サイトを指定します (`website="SUPPORT_URL"`)。Web サイトは、ダッシュボード拡張機能の \[詳細\] ダイアログ ボックスでユーザーに表示される \[サポートを受ける\] のリンクです。

拡張機能は、jQuery ライブラリやサードパーティー向けの API ライブラリなどの外部 JavaScript ライブラリを参照します。外部ライブラリの URL がライブラリの信頼できる場所を指していることを検証します。たとえば、拡張機能が jQuery ライブラリを参照する場合、ライブラリが標準および安全と見なされるサイト上に配置されていること確認してください。

すべての拡張機能では、拡張機能のホストに HTTPS プロトコル (`https://`) を使用することが求められています。拡張機能のソース ファイルを調査し、外部ライブラリへの参照が HTTPS をやはり使用していること、または拡張機能と同じ Web サイトでホストされていることを確認します。HTTPS の要件に関する 1 つの例外は、拡張機能が Tableau (`http://localhost`) と同じ PC でホストされているかどうかです。

可能な限り、コードの内容を理解するようにしてください。具体的には、コードが外部サイトへの要求をどのように構築しているか、また要求によりどのような情報が送信されるかを理解するように努めてください。特に、クロスサイト スクリプティングを防ぐために、ユーザーにより提供されたデータが検証されているかどうかを確認してください。

### データ アクセスの理解

Tableau 拡張機能は主に、ワークシートまたはダッシュボードに表示されるサマリー集計データを操作します。ただし、Tableau 拡張 API は、拡張機能がフル データ アクセスの必要性を宣言した場合に、参照元データにアクセスできるメソッドを提供します。これらのメソッドを使って、データ ソースのアクティブなテーブルやフィールドの名前、データ ソース接続のサマリーの説明、ワークシートの参照元データにアクセスできます。ビューで拡張機能がこれらのメソッドのいずれかを使用している場合、拡張機能の開発者は、拡張機能にはマニフェスト ファイル (`.trex`) にフル データのパーミッションが必要であることを宣言しなければいけません。宣言は次のようになります。

```

<permissions>
   <permission>full data</permission>
</permissions>
```

Tableau はこの宣言を使用して、実行時にこのアクセスを許可するオプションを示すプロンプトを表示します。拡張機能でこれらのメソッドのいずれかが使用されているものの、マニフェスト ファイルでフルデータ パーミッションが宣言されていない場合、拡張機能は読み込まれますが、メソッドの呼び出しは失敗します。

拡張機能がダッシュボードからデータにアクセスする方法、および使用されている JavaScript メソッドの詳細については、Tableau 拡張 API の[「参照元データへのアクセス (英語)」](https://tableau.github.io/extensions-api/docs/security/trex_data_access)を参照してください。データに関して拡張機能で確認できる内容についてさらに理解するには、[データソース](https://github.com/tableau/extensions-api/tree/master/Samples/Dashboard/DataSources) サンプルのダッシュボードの拡張機能 ([Tableau 拡張 API GitHub リポジトリ](https://github.com/tableau/extensions-api)より入手可能) を使用し、`getDataSourcesAsync()` メソッドが呼び出されるときにどのデータが表示されるかを確認できます。

### 隔離された環境での拡張機能のテスト

可能な場合は、本番環境とユーザーの PC から隔離された環境で拡張機能をテストすることをお勧めします。たとえば、本番環境で使用されていない Tableau Server のバージョンを実行しているテスト PC または仮想マシンの許可リストにダッシュボードまたは Viz の拡張機能を追加します。

### ダッシュボードの拡張機能により作成されたトラフィックの監視

ネットワーク対応拡張機能が使用する可能性のあるネットワークの呼び出しを評価するには、[Fiddler](http://www.telerik.com/fiddler)、[Charles HTTP プロキシ](http://www.charlesproxy.com/)、または [Wireshark](https://www.wireshark.org/) などのツールを使用して、拡張機能で実行する要求や応答を調査します。拡張機能が要求しているのがどのコンテンツかを把握するようにしてください。拡張機能が、その目的に直接関連しないデータやコードを読み取っていないことを確認するために、トラフィックを確認してください。