■63115 / inTopicNo.1) |
MVC4 WebAPIにおけるODataのセキュリティ? |
□投稿者/ C#恐怖症 (1回)-(2012/07/19(Thu) 21:14:33)
|
分類:[ASP.NET (C#)]
何時もお世話になっています。
早速ですが、掲題の件につきましてご存知の方が居ましたらご教授下さい。
MVC4 WebAPIにおいて、コントローラにてQueryable属性を付与し戻り値の型をIQueryable<T>とするとODataとして使用出来る事は 様々なWebサイト等においてご存知の事と思います。
EFを使用し http://www.odata.org/developers/protocols/uri-conventions に記載されているようなパラメータを使用し、 データベース(SQLServer)をモニタしたところSQLが動的に変更され、必要なデータのみが抽出出来る事を確認しました。
しかし、OData には $expand というSQLの結合のような記述ができ、これを使用した場合、 例え1つのテーブル(実際にはEFのEntity)を返すような処理を記述していても、適切にリレーションが張られている場合、 テーブル構造がある程度分かる(外部キー列からある程度類推可能)場合、ユーザに見せたくないデータやテーブルまで閲覧されてします場合があります。
これらを解消するため、例えばあるテーブルは参照させない等のオプションや設定等は出来ないものでしょうか?
|
|