パススルー関数は名前が RAWSQL_ または SCRIPT_ で始まります。
特定の状況では、パススルー式が SQL インジェクション攻撃のためのベクターとなる可能性があります。つまり、攻撃者がそれらに不正なコマンドを値として含めることができる可能性があります。このようなことは、これらの条件をすべて満たす計算がワークブックに含まれる場合に発生する可能性があります。
計算には SCRIPT_ または RAWSQL_ 関数が含まれている。
式が、ワークブックのパラメーターから計算へパスされる値を使用する。
パラメーターが文字列として入力される。
パラメーターは計算にパスされる最初のパラメーターである。
パラメーターが引用符で囲まれていない。
たとえば、次の式では、Parameter 1 に small、medium、または large などの文字列値を含むように意図されている場合があります。
RAWSQL_STR([Parameter 1])
ただし、ユーザーが Parameter 1 の値を任意のテキストに設定可能な場合、そのユーザーは潜在的に SQL インジェクション攻撃を作成する可能性があります。
このような式には不正なコマンドが含まれる可能性があるため、安全でないスクリプトと呼ばれます。
最後の条件に注意してください。安全でないパラメーターには引用符のないパラメーターが含まれます。次の例を考えてみましょう。
RAWSQL_BOOL("%1", [Parameter 1])
この例では、Parameter 1 の値が引用符で囲まれており、SQL が値をコマンドとして処理しないため、安全なスクリプトを構成しています。
既定では、ユーザーは安全でないスクリプトを含むワークブック (前述の条件をすべて満たす計算を含むワークブック) を Tableau Server にパブリッシュすることは許可されていません。ユーザーがワークブックをパブリッシュしようとすると、サーバーから次の応答が表示されます。
"This worksheet contains custom user scripts or SQL with injectable string parameters, which may be vulnerable on the target platform."
ユーザーが Tableau Desktop を使用して tabcmd publish コマンドをパブリッシュしようとするか、REST API でワークブックをパブリッシュしようとすると、パブリッシュがブロックされます。
次の tsm configuration set コマンドを使用して、ユーザーに対し、安全でないスクリプトを含むワークブックのパブリッシュを許可できます。
tsm configuration set vizqlserver.allow_insecure_scripts true
vizqlserver.allow_insecure_scripts 設定は、ユーザーがパラメーター値を使用して承認されていない SQL コマンドまたは Rserve コマンドを送信しようとするシナリオ向けに設計されています。安全な Tableau Server インストールをサポートするため、ユーザーが安全でないスクリプトを含むワークブックを発行できないよう、既定の設定は false になっています。vizqlserver.allow_insecure_scripts 設定について、次の点を考慮してください:
ユーザーがカスタム SQL 式または R 式を作成したことがない場合、ユーザーがワークブックをパブリッシュする能力に影響を与えずに、vizqlserver.allow_insecure_scripts が false に設定されていることを確認できます。
ユーザーがカスタム SQL 式または R 式を含む計算を作成しても、他のユーザーがデータ ソースへコマンドをパスしようとはしないと確信している場合は、安全でないスクリプトのパブリッシュを有効にする (vizqlserver.allow_insecure_scripts を true に設定する) ことができます。
vizqlserver.allow_insecure_scripts 設定は Tableau Server インストール全体に影響します。設定が false の場合、安全でないスクリプトを含むワークブックのパブリッシュは、サーバー上のすべてのサイトおよびプロジェクトに対してブロックされます。
RAW や SCRIPT_ で始まる関数の式を含む計算が許可されていません。したがって、vizqlserver.allow_insecure_scripts の既定値 false はこれらの製品には影響しません。vizqlserver.allow_insecure_scripts の設定を false に変更し、設定を変更する前に安全でないスクリプトでパブリッシュされたワークブックにアクセスしようとすると、Tableau Server にもこのエラー メッセージが直接表示されます。001473396

We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings.
Privacy Statement
Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies.
Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual.
Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising.