Login com PHP e ssl.
Bom dia pessoal.
Desta vez não é uma dúvida, mas gostaria de uma análise sobre minha ideia.
Eu criei uma verificação para fazer login com SSL.
Vou descrever aqui como é:
$orignal_parse = parse_url(currentUrl($_SERVER), PHP_URL_HOST); // a função traz a url com http/https
$get_ssl_par = stream_context_create(array("ssl" => array("capture_peer_cert" => TRUE)));
$read_ssl_par = @stream_socket_client("ssl://".$orignal_parse.":443", $errno, $errstr, 30, STREAM_CLIENT_CONNECT, $get_ssl_par);
// As etapas acima são para verificar se existe o SSL.
if(!$read_ssl_par){
header("location: index.php?e=2"); // Caso não tenha ssl emite um aviso.
}else{
// Se tiver ssl avança ...;
$cert = stream_context_get_params($read_ssl_par);
$certinfo = openssl_x509_parse($cert['options']['ssl']['peer_certificate']);
$cn_ssl = ($certinfo['subject']['CN']); // Exibe o nome do ssl.
$url_sem_cert = preg_replace('#^(http(s)?://)?w{3}\.#', '$1', $_SERVER['HTTP_HOST']); // Remove o http/https
if($cn_ssl == $url_sem_cert){
//E o nome for o mesmo continua a fazer o script de login
}
}
O que vocês acham?
Tem sentido o que fiz, está bom.
Obrigado pela atenção!Discussão (2)
Carregando comentários...