Security クラス
			Security クラスは、あなたのアプリケーションを CSRF から守ります。
			
				設定
				
					Security クラスは、app/config/config.php 設定ファイルのセキュリティセクションで設定できます。
				
				以下のセキュリティ設定が定義可能です。
				
					
						
						
							| token_salt | string | 'put your salt value here...'
 | 安全なトークンを生成するためにソルトを使用します。この文字列はランダムにし、容易に推測されないようにしてください。 | 
						
							| csrf_token_key | string | 'fuel_csrf_token'
 | CSRF トークンクッキーの名前。トークンを含むフィールド名としても使用。 | 
						
							| csrf_expiration | integer | 0
 | CRSF トークンクッキーの有効期限。デフォルトでは、ブラウザセッション終了時まで有効。 | 
						
							| csrf_bad_request_on_fail | boolean | false
 | true にすると、 CSRF トークンの検証が失敗したときに HttpBadRequestException が投げられます。
								false にすると、一般的な SecurityException が投げられます。後方互換のためデフォルトは false です。 | 
						
							| uri_filter | array | array('htmlentities')
 | URI をフィルタするのに使用する呼び出し可能なアイテム(PHP 関数、オブジェクトメソッド、静的クラスメソッド)の配列。デフォルトでは、PHP のビルトイン関数 htmlentities を使用。 | 
						
							| input_filter | array | array()
 | $_GET、$_POST、$_COOKIE をフィルタするのに呼び出し可能なアイテム(PHP 関数、オブジェクトメソッド、静的クラスメソッド)の配列。デフォルトでは、未定義。 | 
						
							| output_filter | array | array('Security::htmlentities')
 | View または Presenter に送信する変数をフィルタするのに呼び出し可能なアイテム(PHP 関数、オブジェクトメソッド、静的クラスメソッド)の配列。
								セキュリティ上、出力フィルタ(output filter)は必ず定義する必要がある。 | 
						
							| htmlentities_flags | integer | null
 | HTML エンティティをエンコーディングするときに使用するフラッグ。デフォルトは ENT_QUOTES。 | 
						
							| htmlentities_double_encode | boolean | null
 | エンコードされたものを再エンコードするかどうか。デフォルトは false。 | 
						
							| auto_filter_output | boolean | true
 | true にすると、ビューに渡すオブジェクトはすべて自動的にエンコードされる。 | 
						
							| whitelisted_classes | array | array('stdClass', 'Fuel\\Core\\View','Fuel\\Core\\Presenter', 'Closure')
 | ビューに渡す変数の自動エンコーディングが有効なとき、オブジェクトを渡すときに問題が生じることがある。
								この配列で定義したクラスは自動エンコードされない。 | 
						
							| csrf_autoload | boolean | false
 | true にすると、check_token() を使用して CSRF トークンを自動的にチェックする。チェックに失敗すると SecurityException 例外が投げられる。 | 
						
							| csrf_autoload_methods | array | array('post', 'put', 'delete')
 | csrf_autoload を true にすると、この配列にある http メソッドすべてで CSRF トークンが検証される。 | 
						
							| csrf_auto_token | boolean | false
 | When true, Form::open() adds CSRF token hidden field automatically. | 
					
				
				"csrf_autoload" を有効にすると、指定したタイプの HTTP リクエストすべてで CSRF トークンを含める必要があります。さもないと、検証に失敗し、SecurityException 例外が投げられます。
				オートロードが有効な場合で CSRF 検証失敗を自前で処理したい場合は、index.php で SecurityException 例外をキャッチすることができます。
			
			
				check_token($value = null)
				check_token メソッドは、CSRF トークンをチェックします。
				check_token はトークンが存在することを保証します。また、チェックする値を受け取ったとき、(チェックの結果に関わらず)
				トークンを再生成します。
				
					
					
						| 静的 | はい | 
					
						| パラメータ | 
								
									| パラメータ | デフォルト | 説明 |  
									| $value | null
 | チェックする CSRF トークン、未指定の場合は POST または JSON からの値をチェックする。 |  | 
					
						| 返り値 | boolean | 
					
						| 例 | Security::check_token();
 | 
					
				
			
			
				fetch_token()
				fetch_token メソッドはクッキーから CSRF トークンを取得します。
				
					
					
						| 静的 | はい | 
					
						| パラメータ | なし | 
					
						| 返り値 | string | 
					
						| 例 | $csrf_token = Security::fetch_token();
 | 
					
				
			
			
				js_fetch_token()
				js_fetch_token メソッドは、現在の CSRF トークンを返す JavaScript fuel_csrf_token() 関数を作成します。AJAX 操作のためにフォーム送信時に適切なフィールドに挿入します。
				
					
					
						| 静的 | はい | 
					
						| パラメータ | なし | 
					
						| 返り値 | string | 
					
						| 例 | // javascript 関数を出力する
echo Security::js_fetch_token();
// 生成された javascript コードをページで使用できる
<script type="text/javascript">
	var current_token = fuel_csrf_token();
</script>
 | 
					
				
			
			
				js_set_token()
				
					js_set_token メソッドは、JavaScript fuel_set_csrf_token() 関数を生成します。
					この関数は呼び出されたフォームに CSRF トークンフィールドをセットします。
					onsubmit (フォーム送信)にこれを用いて、
					csrf クッキーの値を更新します。
					複数のウィンドウを開きたい場合、これを使う必要があります。
					また CSRF トークンを厳密に更新する必要があります。
				
				
					
					
						| 静的 | はい | 
					
						| パラメータ | なし | 
					
						| 返り値 | string | 
					
						| 例 | // javascript 関数を出力する
echo Security::js_set_token();
// 生成された関数を onsubmit 時に実行します。
// 「this」パラメータを忘れないでください。更新するフォームを関数が知るために必要です。
<form onsubmit="fuel_set_csrf_token(this);">
	<!-- do your stuff here -->
</form>
 | 
					
				
			
			
				generate_token()
				
					generate_token メソッドは、セキュリティトークンを生成します。
					このメソッドは、CSRF トークンを生成するのに使用します。セキュアでランダムなトークンが必要な場合、このメソッドを
					アプリケーションの任意の場所で使用できます。
				
				
					
					
						| 静的 | はい | 
					
						| パラメータ | なし | 
					
						| 返り値 | string | 
					
						| 例 | $token = Security::generate_token();
 | 
					
				
			
			
				clean($value, $filters = null)
				clean メソッドは、提供されるフィルタを用いてデータを綺麗にします。
				
					
					
						| 静的 | はい | 
					
						| パラメータ | 
								
									| パラメータ | デフォルト | 説明 |  
									| $value | 必須 | 綺麗にされる値。文字列または文字列からなる配列。 |  
									| $filters | null
 | 文字列を綺麗にするのに使用するフィルタ。フィルタは単一の値、または値からなる配列。それぞれの値は、妥当な PHP コールバック。
										関数 ('htmlentities'), オブジェクト ($this), 静的メソッド ('Classname::method') を指定可能。 |  | 
					
						| 返り値 | string | 
					
						| 例 | // まず strip tags を適用し、残った html エンティティを変換し、さらに特別なメソッドを適用する
$filters = array('strip_tags', 'htmlentities', '\\cleaners\\soap::clean');
$text = Security::clean($text, $filters);
 | 
					
				
			
			
				
				strip_tags メソッドは、文字列から HTML および PHP タグを取り除きます。
				
					
					
						| 静的 | はい | 
					
						| パラメータ | 
								
									| パラメータ | デフォルト | 説明 |  
									| $value | 必須 | タグを取り除かれる文字列 |  | 
					
						| 返り値 | string | 
					
						| 例 | $text = '<p>Test paragraph.</p>';
$text = Security::strip_tags($text);
 | 
					
				
			
			
				xss_clean($value, array $options = array())
				xss_clean メソッドは、HTMLawed ライブラリを使用して、文字列から危険な HTML タグを取り除きます。
				
					
					
						| 静的 | はい | 
					
						| パラメータ | 
								
									| パラメータ | デフォルト | 説明 |  
									| $value | 必須 | タグを取り除かれる文字列 |  
									| $options | array()
 | htmLawed の追加のオプション設定の配列。綺麗にする規則をカスタマイズする場合に使用する。 |  | 
					
						| 返り値 | string | 
					
						| 例 | $text = '<SCRIPT>alert("XSS attack!")</SCRIPT>';
$text = Security::xss_clean($text);
 | 
					
				
			
			
				htmlentities($value, $flags = null, $encoding = null, $double_encode = null)
				
					htmlentities メソッドは、HTML 文字を実体参照に変換します。 このメソッドは、PHP の htmlentities() 関数と同じ操作ですが、
					配列やオブジェクトにも適用できます。
				
				
					
					
						| 静的 | はい | 
					
						| パラメータ | 
								
									| パラメータ | デフォルト | 説明 |  
									| $value | 必須 | 変換される文字列。 |  
									| $flags | null
 | htmlentities() に渡すフラグ。未指定の場合、デフォルト値は ENT_QUOTES。 |  
									| $encoding | null
 | 値の文字エンコーディング。未指定の場合、デフォルト値は FuelPHP のデフォルト文字エンコーディング。 |  
									| $double_encoding | null
 | true の場合、エンコードされた文字列をさらにエンコードしない。未指定の場合、デフォルト値は false。 |  | 
					
						| 返り値 | mixed | 
					
						| 例外 | 文字列にキャストできないオブジェクトを渡すと、RuntimeException が投げられる。 | 
					
						| 例 | $text = '<p>Test paragraph.</p>';
$text = Security::htmlentities($text);
 | 
					
				
			
			手続き型ヘルパ
			
				e($string)
				e 関数は、Security::htmlentities の別名。
				
					
					
						| パラメータ | 
								
									| パラメータ | デフォルト | 説明 |  
									| $string | 必須 | タグを取り除かれる文字列。 |  | 
					
						| 返り値 | string、Security::htmlentities の返り値 | 
					
						| 例 | $text = '<p>Test paragraph.</p>';
$text = e($text);
 |