
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']; //การประทับเวลา, เวลา UTC ตามเวลาปักกิ่ง East Eighth District (+8) $arr['version'] =$systemParam['version' ] ; //หมายเลขเวอร์ชัน $arr['sign'] =$systemParam['sign']; //Signature $arr['source'] =$systemParam['source']; IOS/2-H5/3-PC/4-php/5-java)
$arr['data'] =json_decode($data,true); //รูปแบบพารามิเตอร์ธุรกิจ json $arr['method'] =$data['method']; //Access interface, format: model name.method name
ส่งคืน $arr;
-ข้างต้นคือกลไกสามประการของการรักษาความปลอดภัยอินเทอร์เฟซ PHP ฉันหวังว่ามันจะเป็นประโยชน์กับทุกคน คู่มือการเรียนรู้ PHP เพิ่มเติม: เครือข่ายซอร์สโค้ด