1. Token-Autorisierungsmechanismus Nachdem sich der Benutzer mit Benutzername und Passwort angemeldet hat, gibt der Server das Token an den Client zurück.
2. Zeitstempel-Timeout-Mechanismus: Jede Benutzeranforderung bringt den aktuellen Zeitstempel mit.
Nachdem der Server den Zeitstempel erhalten hat, vergleicht er ihn mit der aktuellen Zeit. Wenn die Zeitdifferenz größer als eine bestimmte Zeit ist (z. B. 5 Minuten), wird die Anfrage als ungültig betrachtet. Der Zeitstempel-Timeout-Mechanismus ist ein wirksames Mittel zur Abwehr von DOS-Angriffen.
3. Signaturmechanismus.
Fügen Sie dem Token und dem Zeitstempel weitere Anforderungsparameter hinzu und verschlüsseln Sie diese dann mit dem MD5- oder SHA-1-Algorithmus.
Beispiel
/** * @desc Parameterverarbeitung akzeptieren */ private Funktion dealParam(){ //Header-Parameter akzeptieren – Systemparameter $systemParam=getAllHeadersParam(); //Körperdaten akzeptieren – Geschäftsparameter (JSON-Format) $data=file_get_contents('php://input'); //Lesen Sie die privaten Schlüsselinformationen in der Konfigurationsdatei $api_apiKey=C('api_apiKey'); $privatekey=$api_apiKey[$systemParam['token']]; $arr['token'] =$systemParam['token']; //Der vom Server zugewiesene Bezeichner (verschiedene Clients müssen unterschiedliche Bezeichner verwenden) $arr['timestamp']=$systemParam['timestamp']; //Zeitstempel, UTC-Zeit, basierend auf der Pekinger Zeit East Eighth District (+8) $arr['version'] =$systemParam['version' ] ; //Versionsnummer $arr['sign'] =$systemParam['sign']; //Signatur $arr['source'] =$systemParam['source']; IOS/2-H5/3-PC/4-php/5-java) $arr['data'] =json_decode($data,true); //Business-Parameter-JSON-Format $arr['method'] =$data['method']; //Zugriffsschnittstelle, Format: Modellname.Methodenname return $arr; }
Die oben genannten drei Mechanismen der PHP-Schnittstellensicherheit werden hoffentlich für alle hilfreich sein. Weitere PHP-Lernanleitungen: Quellcode-Netzwerk