現在、PHPにてDBの情報をブラウザで閲覧するプログラムを作成しています。
SQLインジェクション対策を勉強中ですが、下記の疑問に関しご教授いただければ幸いです
ユーザー入力値をSQL文に使用しない下記の例の場合、
識別子に変数を利用することで、インジェクション攻撃の危険性はあるのでしょうか。
例)SQLに使用するDBが複数あります。
DataBase_A
DataBase_B
DataBase_C
DataBase_D
ユーザーによって使用するDBが異なるため(DataBase部分が異なりA~Bは同じ)、
INIファイルにDataBase部分を定義し、SQLを下記のように記述
;iniファイル DataBaseName = DataBase
PHP
1 2$dataBaseName = $ini['DataBaseName'] 3 4$sql = <<<SQL 5SELECT A.COL,B.COL 6FROM {$dataBaseName}_A AS A JOIN {$dataBaseName}_B AS B ON A.COL = B.COL 7SQL;
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/29 00:57 編集
2017/03/29 02:40 編集
2017/03/29 07:17