不正操作防止機能の誤検知
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「...
-[[戻る>不正操作防止機能]]
*目次 [#a33288fb]
#contents
*概要 [#kdaa5923]
[[不正操作防止機能]]では以下を抑止します。
-二重送信
-リロード
-バック・サブミット
-キャッシュの参照
上記に該当するような操作を行っていないか、~
[[fiddler - http debugging proxy>http://www.telerik.com/f...
また、以下のような操作で、不正操作と誤検知されることがあ...
*誤検知 [#fda591d0]
**HTTP電文欠損による誤検知 [#pe85e905]
IEでは(NW帯域幅が狭い場合など)、
-Responseを受信し切る前に次のPOSTバック(Submit)を実行で...
-その場合、次のRequestからResponseに含まれる筈のFormの項...
結果として、不正操作と識別されることがありますが、これは...
-この問題は、[[二重送信防止機能]]をONにすることで防ぐこと...
**Sessionタイムアウト・消去による誤検知 [#s4b06a06]
Sessionにブラウザ・ウィンドウ毎のRequestチケットを格納し...
Sessionタイムアウト発生や、Session消去後に残存画面からPOS...
不正操作と誤検知されることがあります。
**AJAXによる誤検知 [#u15ee0a3]
-ASP.NET AJAXではHTTPリクエストの内容から、~
AJAXの要求であることを識別して、不正操作防止機能を動作さ...
--BaseController.Page_Load()~
https://github.com/OpenTouryoProject/OpenTouryo/blob/deve...
-しかし、SPREAD等のASPXに対してAJAXでPOSTを行うような、~
サードパーティ製UIコンポーネントを使用する場合、~
不正操作防止機能と干渉し合うことがあります。
-ASPXではなく、WCFやWebAPIのモジュールとAJAX通信を行う場...
*不正操作防止機能の局所化 [#d6aa249d]
**概要 [#l82b4ccd]
他の処理と干渉し合う場合、不正操作防止機能を部分的にOFFに...
-不正操作防止機能を画面レベルでOFFにするには、Page_Initで
this.CanCheckIllegalOperation = false;
>と[[this.CanCheckIllegalOperationプロパティ]]にfalseのフ...
**詳細 [#z3df98d5]
ボタン単位等の局所化が必要な場合は、以下の方法に従ってく...
***一部のボタンだけ不正操作防止機能を「無効」にする方法 [...
ポストバックのダウンロード処理などで有効
/// <summary>不正操作防止機能の局所化</summary>
void Page_Init(object sender, EventArgs e) {
foreach (string key in Request.Form.Keys) {
if (key.IndexOf("btnIllegalOperationCheckOFF") != -1...
// btnIllegalOperationCheckOFFボタンで
// サブミットされた場合、不正操作防止機能をOFFにす...
this.CanCheckIllegalOperation = false;
}
}
}
***一部のボタンだけ不正操作防止機能を「有効」にする方法 [...
更新ボタンだけに適用したい場合などに有効
--設定
---app.config の appSettingsセクションで、~
https://github.com/OpenTouryoProject/OpenTouryo/blob/deve...
<!-- 不正操作防止機能のon・off(操作履歴の最大数) -->
<add key="FxRequestTicketGuidMaxQueueLength" value="0"/>
"FxRequestTicketGuidMaxQueueLength=0"(0以下の値)を設定...
--実装
/// <summary>不正操作防止機能の局所化</summary>
void Page_Init(object sender, EventArgs e) {
// 当該画面だけ、不正操作防止機能をONにする(*.config...
this.CanCheckIllegalOperation = true;
foreach (string key in Request.Form.Keys) {
if (key.IndexOf("btnIllegalOperationCheckON") != -1) {
// btnIllegalOperationCheckONボタンで
// サブミットされた場合、不正操作防止機能をONにす...
this.CanCheckIllegalOperation = true;
}
}
}
**参考 [#za4d3edb]
-.NET用アプリケーション フレームワーク ”棟梁” 利用ガイド...
https://github.com/OpenTouryoProject/OpenTouryoDocuments/...
--2.3節:不正操作防止機能の局所化
終了行:
「[[Open棟梁 wiki>https://opentouryo.osscons.jp]]」は、「...
-[[戻る>不正操作防止機能]]
*目次 [#a33288fb]
#contents
*概要 [#kdaa5923]
[[不正操作防止機能]]では以下を抑止します。
-二重送信
-リロード
-バック・サブミット
-キャッシュの参照
上記に該当するような操作を行っていないか、~
[[fiddler - http debugging proxy>http://www.telerik.com/f...
また、以下のような操作で、不正操作と誤検知されることがあ...
*誤検知 [#fda591d0]
**HTTP電文欠損による誤検知 [#pe85e905]
IEでは(NW帯域幅が狭い場合など)、
-Responseを受信し切る前に次のPOSTバック(Submit)を実行で...
-その場合、次のRequestからResponseに含まれる筈のFormの項...
結果として、不正操作と識別されることがありますが、これは...
-この問題は、[[二重送信防止機能]]をONにすることで防ぐこと...
**Sessionタイムアウト・消去による誤検知 [#s4b06a06]
Sessionにブラウザ・ウィンドウ毎のRequestチケットを格納し...
Sessionタイムアウト発生や、Session消去後に残存画面からPOS...
不正操作と誤検知されることがあります。
**AJAXによる誤検知 [#u15ee0a3]
-ASP.NET AJAXではHTTPリクエストの内容から、~
AJAXの要求であることを識別して、不正操作防止機能を動作さ...
--BaseController.Page_Load()~
https://github.com/OpenTouryoProject/OpenTouryo/blob/deve...
-しかし、SPREAD等のASPXに対してAJAXでPOSTを行うような、~
サードパーティ製UIコンポーネントを使用する場合、~
不正操作防止機能と干渉し合うことがあります。
-ASPXではなく、WCFやWebAPIのモジュールとAJAX通信を行う場...
*不正操作防止機能の局所化 [#d6aa249d]
**概要 [#l82b4ccd]
他の処理と干渉し合う場合、不正操作防止機能を部分的にOFFに...
-不正操作防止機能を画面レベルでOFFにするには、Page_Initで
this.CanCheckIllegalOperation = false;
>と[[this.CanCheckIllegalOperationプロパティ]]にfalseのフ...
**詳細 [#z3df98d5]
ボタン単位等の局所化が必要な場合は、以下の方法に従ってく...
***一部のボタンだけ不正操作防止機能を「無効」にする方法 [...
ポストバックのダウンロード処理などで有効
/// <summary>不正操作防止機能の局所化</summary>
void Page_Init(object sender, EventArgs e) {
foreach (string key in Request.Form.Keys) {
if (key.IndexOf("btnIllegalOperationCheckOFF") != -1...
// btnIllegalOperationCheckOFFボタンで
// サブミットされた場合、不正操作防止機能をOFFにす...
this.CanCheckIllegalOperation = false;
}
}
}
***一部のボタンだけ不正操作防止機能を「有効」にする方法 [...
更新ボタンだけに適用したい場合などに有効
--設定
---app.config の appSettingsセクションで、~
https://github.com/OpenTouryoProject/OpenTouryo/blob/deve...
<!-- 不正操作防止機能のon・off(操作履歴の最大数) -->
<add key="FxRequestTicketGuidMaxQueueLength" value="0"/>
"FxRequestTicketGuidMaxQueueLength=0"(0以下の値)を設定...
--実装
/// <summary>不正操作防止機能の局所化</summary>
void Page_Init(object sender, EventArgs e) {
// 当該画面だけ、不正操作防止機能をONにする(*.config...
this.CanCheckIllegalOperation = true;
foreach (string key in Request.Form.Keys) {
if (key.IndexOf("btnIllegalOperationCheckON") != -1) {
// btnIllegalOperationCheckONボタンで
// サブミットされた場合、不正操作防止機能をONにす...
this.CanCheckIllegalOperation = true;
}
}
}
**参考 [#za4d3edb]
-.NET用アプリケーション フレームワーク ”棟梁” 利用ガイド...
https://github.com/OpenTouryoProject/OpenTouryoDocuments/...
--2.3節:不正操作防止機能の局所化
ページ名: