先日、sql_firewallというPostgreSQLの拡張モジュール(EXTENSION)をリリースしました。 https://news.ycombinator.com/item?id=10109566 https://github.com/uptimejp/sql_firewall このモジュールは、PostgreSQL上で実行可能なSQLを制限することで、SQLインジェクションを防ぐことを目的としたものです。 今回はこの sql_firewall について、その仕組みと使い方を簡単にご紹介します。 ■sql_fiewallの仕組み sql_firewallには、以下の3つの動作モードがあります。 学習モード(learning) 警告モード(permissive) 防御モード(enforcing) 学習モードではPostgreSQL上で実行可能なSQL文を学習させることができます。
![PostgreSQL用SQLファイアーウォール「sql_firewall」リリース](https://cdn-ak-scissors.b.st-hatena.com/image/square/3f046faec5b2846100a6f39ffa741c8317bb1a6e/height=288;version=1;width=512/http%3A%2F%2F4.bp.blogspot.com%2F-ttJLVQS5fFg%2FVd7YtZTGxQI%2FAAAAAAAAA5s%2Fcf0ZBF27wpE%2Fw1200-h630-p-k-no-nu%2Fsql_firewall.png)