Share via


ユーザー入力の検証

JDBC ドライバーのダウンロード

データにアクセスするアプリケーションを作成する場合は、すべてのユーザー入力について、悪意がないと確認されるまでは、悪意があるものと見なす必要があります。 攻撃に対する脆弱性をアプリケーションから取り除くことはできません。 発生する可能性のある攻撃の 1 つに、SQL インジェクションと呼ばれるものがあります。 この攻撃により、解析および実行される SQL Server のインスタンスに渡される文字列に悪意のあるコードが追加されます。 この攻撃を防ぐには、パラメータを持つストアド プロシージャを可能な限り使用し、ユーザー入力を常に検証する必要があります。

サーバーへの無駄なラウンド トリップを行わないようにするには、ユーザー入力の検証をクライアント コードで行うことが重要です。 サーバー上のストアド プロシージャのパラメーターを検証することも同様に重要です。 そうすれば、クライアント側の検証をバイパスする入力を捕捉することができます。

SQL インジェクションと、この攻撃を避ける方法の詳細については、「SQL インジェクション」を参照してください。 ストアド プロシージャのパラメーターの検証の詳細については、「ストアド プロシージャ」と関連記事を参照してください。

関連項目

JDBC ドライバー アプリケーションのセキュリティ保護