Soucis qd on se logue sur mon site

sameva 3 Messages postés dimanche 30 septembre 2012Date d'inscription 23 mars 2017 Dernière intervention - 23 mars 2017 à 16:56 - Dernière réponse :  sameva
- 1 avril 2017 à 19:00
Bonjour,
J'ai un site fait en php avec mysql et c...
Depuis quelques jours je m'aperçois que pour se loguer dessus, dans la case mot de passe, il y a ce message qui se met en popups:
"cette connexion n'est pas sécurisée.Les identifiants saisis ici pourraient être compromis."
De plus dans la barre d'adresse (sous Firefox notamment)
a gauche de l'adresse est apparu un cadenas barré de rouge avec le même message.
Ce que je n'avais pas il y a un mois en gros.
Que dois je faire afin que les membres puissent "se sentir en sécurité" tout en sachant que mon site est ouvert a tout public (site pointant sur un serveur de tchat hébergé chez OVH).
merci d'une réponse si quelqu’un connait une solution simple :)

Afficher la suite 

5 réponses

Répondre au sujet
jordane45 19256 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 15 décembre 2017 Dernière intervention - 23 mars 2017 à 17:21
0
Utile
Bonjour,

https://blog.doyousoft.com/sites-non-securises-firefox-ajoute-une-alerte-sur-les-formulaires/

Ce message apparait dans les formulaire d'authentification ( donc dans des balises <form et sur les champs input de type password )
Pour contourner ça... tu peux gérer ton authentification en AJAX au lieu de le faire via un "submit" de formulaire html
Commenter la réponse de jordane45
sameva 3 Messages postés dimanche 30 septembre 2012Date d'inscription 23 mars 2017 Dernière intervention - 23 mars 2017 à 22:28
0
Utile
Bonsoir
merci de ta réponse mais AJAX et moi c'est monsieur propre :)
Je connais vraiment pas ...
Après faut que ça rentre en mysql aussi
pf pff

Commenter la réponse de sameva
jordane45 19256 Messages postés mercredi 22 octobre 2003Date d'inscriptionModérateurStatut 15 décembre 2017 Dernière intervention - Modifié par jordane45 le 24/03/2017 à 01:21
0
Utile
2
Après faut que ça rentre en mysql aussi

L'ajax c'est :
Un script Javascript .. qui appel une page PHP ... page php qui interragit avec la base de données !

Tu peux le faire en "pur" javascript, via XMLHTTPREQUEST ... mais je te conseille vivement d'utiliser la librairie JQUERY

Commence par télécharger ( enregistrer/sous ) le fichier : https://code.jquery.com/jquery-3.2.0.min.js

Inclus le dans ton site
<script src="jquery-3.2.0.min.js"></script>


Puis, dans ta page de login:
<form>
<input type="text" id="login" placeholder="login">
<input type="password" id="pwd" placeholder="password">
<button onclick="valider();">OK</button>
</form>

<script type="text/javascript">
function valider(){
  var login = $("#login").val();
  var pwd = $("#pwd").val();
  
  var datas = {login:login,pwd:pwd};
  
  $.ajax({ 
      type: "POST",
      url: "connexion.ajx.php",
      data: data,
      async: false,
      dataType: "json",
      success: function(reponse){
        //si connexion ok...
        //par exemple :
        if(reponse.connexion == true){
          alert("connexion ok !");
        }else{
           alert(reponse.error);
         }
       },
      error:function(jqXHR, textStatus){
        alert('error :' + jqXHR.responseText);      
     });
}

</script>

tu créés un fichier php : connexion.ajx.php


<?php
//fichier connexion.ajx.php

//démarrage des sessions
session_start();

//connexion à la BDD
//ici tu inclus le code de connexion à la bdd.. par exemple :
require_once "cnxBdd.php";



//récupération des variables POST
$login = !empty($_POST['login']) ? $_POST['login'] : NULL;
$pass = !empty($_POST['pwd']) ? $_POST['pwd'] : NULL;


//si login et password sont renseingés :
if($login && $pwd){
   //ici tu code ta connexion au site via tes requêtes ...
   // ...
   
   //exemple en PDO :
   $sql = " SELECT id,login,pass 
            FROM tatableuser
            WHERE login = :login";
   $datas = array(":login"=>$login);
   try{
      $prep = $bdd->prepare($sql);
      $prep->execute($datas);
      $row = $prep->fetch(PDO::FETCH_ASSOC);
      
       if (password_verify($pass, $row['pass'])) {
         $_SESSION['id_user'] = $row['id'];
         //...etc...
       }
      
   }catch(Exception $e){
    $result['connexion'] = false; 
    $result['error'] = $e->getMessage();      
   }
     
  $result['connexion'] = true; 
  $result['error'] = false;  
}else{
   $result['connexion'] = false; 
   $result['error'] = "Login et/ou password vide(s)";    
}

echo json_encode($result);

?>

CecilCordheley 31 Messages postés mercredi 8 novembre 2006Date d'inscription 17 juillet 2017 Dernière intervention - 28 mars 2017 à 17:02
Bon moyen de contourner le problème. Mais c'est effectivement comme ça que l'on compromet la sécurité des données.
Je n'ai pas de détails sur le projet. Ce message sur firefox apparaît lorsque le domaine n'est pas sécurisé avec un certificat SSL ou TLS.

De plus le message de sécurité apparaît à chaque input type="password"

Il faut trouver un autre moyen de saisir les mot de passe (clavier virtuel, mot de passe temporaire par mail ou SMS, Captcha ...)
sameva > CecilCordheley 31 Messages postés mercredi 8 novembre 2006Date d'inscription 17 juillet 2017 Dernière intervention - 1 avril 2017 à 19:00
Bonjour
je reviens en retard . car j’étais absent.
Ok je vais tester ce que tu me proposes jordane45, en faisant une page test afin de controler le bon appel de la mysql.

En réponse a CecilCordheley, oui surement mais pour un site avec 500 inscrits, je vois mal comment les utilisateurs pourraient se "loguer" via sms ou captcha (sans avoir rentré son password et login)

je repasserai dès que possible pour voir si la modif fonctionne, mais on pourrait aussi peut être appeler en input type="password" par un autre nom que password ...?
Je vais tester dès que je peux afin de voir comment ça réagit
Merci
Commenter la réponse de jordane45

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.