
1. トークン認証メカニズム。ユーザーがユーザー名とパスワードを使用してログインすると、サーバーはトークンをクライアントに返します。
2. タイムスタンプ タイムアウト メカニズム。各ユーザー要求は現在のタイムスタンプ タイムスタンプをもたらします。
サーバーはタイムスタンプを受信した後、それを現在時刻と比較し、時間差が一定時間 (たとえば、5 分) を超える場合、リクエストは無効であると見なされます。タイムスタンプ タイムアウト メカニズムは、DOS 攻撃を防御する効果的な手段です。
3. 署名メカニズム。
他のリクエスト パラメーターをトークンとタイムスタンプに追加し、MD5 または SHA-1 アルゴリズムで暗号化します。
例
/**
* @desc パラメータ処理を受け入れます */
プライベート関数 dealParam(){
// ヘッダー パラメーター -- システム パラメーターを受け入れる $systemParam=getAllHeadersParam();
//本文データを受け入れる - ビジネスパラメータ(json形式)
$data=file_get_contents('php://input');
//設定ファイル内の秘密鍵情報を読み取る $api_apiKey=C('api_apiKey');
$privatekey=$api_apiKey[$systemParam['token']];
$arr['token'] =$systemParam['token']; //サーバーによって割り当てられた識別子 (異なるクライアントは異なる識別子を使用する必要があります)
$arr['timestamp']=$systemParam['timestamp']; //北京時間の東第 8 区 (+8) に基づくタイムスタンプ、UTC 時間 $arr['version'] =$systemParam['version' ] ; // バージョン番号 $arr['sign'] =$systemParam['sign']; // 署名 $arr['source'] =$systemParam['source']; IOS/2-H5/3-PC/4-php/5-java)
$arr['data'] =json_decode($data,true); // ビジネスパラメータ json 形式 $arr['method'] =$data['method']; // アクセスインターフェイス、形式: モデル名.メソッド名
$arr を返します。
}以上が PHP インターフェースのセキュリティの 3 つのメカニズムです。皆さんの参考になれば幸いです。その他の PHP 学習ガイド: ソースコードネットワーク