先日、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/186cf9c609c204b0041afbd0722577b7087a69ce/height=288;version=1;width=512/https%3A%2F%2Ffanyv88.com%3A443%2Fhttps%2Fblogger.googleusercontent.com%2Fimg%2Fb%2FR29vZ2xl%2FAVvXsEg-TmkKW2e4opFt2GsSsqWW5a1aUdEjejZaRmXBbwayHyqMiyJRwSwsXbOrx-Y4taGLSHS1ZMSvTpEsYpuVuMYGJlFS9-n5rOY-fcITbHtvKs3ozmYve6Ops8v-UYA0Z0s9igxuejE4zTM%2Fw1200-h630-p-k-no-nu%2Fsql_firewall.png)