ストアドプロシージャ

ストアドプロシージャとは、ひとことで言えば、データベース内に事前に保存・コンパイルされたSQL処理のひとまとまりで、アプリケーションから名前を指定して呼び出せる仕組みです。たとえば、注文登録処理を1つのストアドプロシージャにまとめておけば、アプリケーションは引数を渡すだけで複雑な処理を実行できます。セキュリティ面では、クライアントに直接テーブルへのアクセス権を与えずプロシージャ実行権限のみ付与することで、最小権限を実現できます。また、パラメータ化により多くのSQLインジェクション攻撃を防止できます。一方で、プロシージャ内に動的SQLがあると依然として脆弱になる点に注意が必要です。