1. Mecanismo de autorização de token Após o usuário efetuar login usando o nome de usuário e senha, o servidor retorna o Token ao cliente.
2. Mecanismo de tempo limite do carimbo de data e hora, cada solicitação do usuário trará o carimbo de data e hora atual.
Depois que o servidor recebe o carimbo de data e hora, ele o compara com a hora atual. Se a diferença de horário for maior que um determinado horário (por exemplo, 5 minutos), a solicitação será considerada inválida. O mecanismo de tempo limite de carimbo de data/hora é um meio eficaz de defesa contra ataques DOS.
3. Mecanismo de assinatura.
Adicione outros parâmetros de solicitação ao token e ao carimbo de data/hora e criptografe-os com o algoritmo MD5 ou SHA-1.
Exemplo
/** * @desc Aceita processamento de parâmetros */ função privada dealParam(){ //Aceita parâmetros de cabeçalho--parâmetros do sistema $systemParam=getAllHeadersParam(); //Aceita dados corporais - parâmetros de negócios (formato json) $data=file_get_contents('php://input'); //Leia as informações da chave privada no arquivo de configuração $api_apiKey=C('api_apiKey'); $privatekey=$api_apiKey[$systemParam['token']]; $arr['token'] =$systemParam['token']; //O identificador atribuído pelo servidor (clientes diferentes precisam usar identificadores diferentes) $arr['timestamp']=$systemParam['timestamp']; //Carimbo de hora, horário UTC, baseado no horário de Pequim, Oitavo Distrito Leste (+8) $arr['version'] =$systemParam['version' ] ; //Número da versão $arr['sign'] =$systemParam['sign']; //Assinatura $arr['source'] =$systemParam['source']; IOS/2-H5/3-PC/4-php/5-java) $arr['data'] =json_decode($data,true); //Formato json do parâmetro de negócio $arr['method'] =$data['method']; //Interface de acesso, formato: nome do modelo.nome do método retornar $arr; }
Os itens acima são os três mecanismos de segurança da interface PHP. Espero que sejam úteis para todos. Mais guia de aprendizagem de PHP: rede de código fonte