BcQueryParameterTrait
Trait BcQueryParameterTrait
リクエスト由来のクエリパラメータを、ORM へ渡す前に安全化するためのトレイト。
Table of Contents
Methods
- removeOrmStructure() : array<string|int, mixed>
- リクエスト由来のクエリパラメータから ORM 内部構造キーを除去する
Methods
removeOrmStructure()
リクエスト由来のクエリパラメータから ORM 内部構造キーを除去する
public
removeOrmStructure(array<string|int, mixed> $queryParams) : array<string|int, mixed>
contain / conditions / fields などの ORM 内部構造は、本来サーバ側で
のみ組み立てるものであり、フロントの未信頼入力から受け取ると SQL
インジェクションの sink になる(GHSA-ch8f-q957-r9xm / GHSA-2ghw-gwvv-mv56)。
公開フロントのコントローラは、リクエストのクエリパラメータをサービスへ
渡す前に本メソッドを通し、これらのキーを取り除くこと。
Parameters
- $queryParams : array<string|int, mixed>
-
リクエスト由来のクエリパラメータ
Tags
Return values
array<string|int, mixed> —ORM 内部構造キーを除去したクエリパラメータ