IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Envoyer login et mdp en SSL


Sujet :

Android

  1. #1
    Membre habitué
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2012
    Messages : 9
    Par défaut Envoyer login et mdp en SSL
    Salut tout le monde, je suis entrain de tester le tutoriel login sur un webservice de develppez et je me demandais s'il y avait oyen d'envoyer son login mdp avec du ssl plutot que des POST comme ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    								ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>();
     
    									nameValuePairs.add(new BasicNameValuePair("pwd", etPwdConf.getText().toString()));
     
     
    									try {
     
    										HttpClient httpclient = new DefaultHttpClient();
     
    										HttpPost httppost = new HttpPost(MenuPrincipal.ressources.getString(R.string.serveraddress)+"/subscribe.php");
     
    										httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
     
    										HttpResponse response = httpclient.execute(httppost);

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Le fait que le message soit sécurisé (SSL) ne dépend pas du type de requête http (POST).

    Si l'URL du service est préfixée par "https://" HttpClient va automatiquement encrypter le message http.

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur Java
    Inscrit en
    Novembre 2011
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Finance

    Informations forums :
    Inscription : Novembre 2011
    Messages : 67
    Par défaut
    Je rebondi sur la question car elle me semble intéressante et aborde une problématique à laquelle je vais être confronté rapidement :-)

    Quid de la gestion d'un certificat ? Car ajouter un S à http ne suffit pas ...
    Quid d'une connexion à l'aide du protocol handshake SSL

    (Mes questions sont vagues et larges car je m'intéresse au sujet dans sa globalité avant de choisir une solution plutôt qu'une autre).

    Bien à vous.

    Lionel

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    Citation Envoyé par Largo13 Voir le message
    Quid de la gestion d'un certificat ? Car ajouter un S à http ne suffit pas ...
    Quid d'une connexion à l'aide du protocol handshake SSL
    L'ajout du S suffira du côté client.
    L'implémentation HttpClient gère automatiquement la négociation de la transaction SSL avec le serveur.

    Côté serveur, bah tout dépend du serveur http (apache, IIS, ...). Il faut lire la documentation.

  5. #5
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    HTTPS = HTTP over SSL

    SSL = Secured Socket Layer, c'est à dire un socket TCP sécurisé...

    Le handshake se fait avant même de commencer une transaction HTTP (à l'ouverture de session TCP quoi !)

    Quand le client voit "https://..." il sait qu'il va devoir faire du HTTP non pas sur un socket "TCP" de base (port 80 par défaut), mais sur un socket "SSL" (port 443 par défaut). Le reste (protocole HTTP) est absolument inchangé, que ce soit coté serveur ou coté client...

    Le même code PHP, le même code client...
    Il faut juste que le client "sache" ouvrir une connexion SSL (c'est le cas de DefaultHttpClient), et que le serveur "sache" écouter des connexions SSL (à voir la documentation du serveur).
    Attention, du fait du handshake initial, il faut que le certificat (attaché à un nom de domaine) et l'adresse IP du serveur (utilisé pour la connexion SSL) soient en phase => 1 certificat = 1 IP.

  6. #6
    Membre habitué
    Homme Profil pro
    etudiant
    Inscrit en
    Août 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : etudiant

    Informations forums :
    Inscription : Août 2012
    Messages : 9
    Par défaut
    Merci de vos réponses ! Et est il préférable de crypter le mdp en md5 avant de l'envoyer au serveur ou bien le crypter une fois sur le serveur pour l'enregistrer dans la base de données ?

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    64
    Détails du profil
    Informations personnelles :
    Localisation : France, Moselle (Lorraine)

    Informations forums :
    Inscription : Décembre 2008
    Messages : 64
    Par défaut
    Citation Envoyé par Nudger Voir le message
    Bonjour,



    L'ajout du S suffira du côté client.
    L'implémentation HttpClient gère automatiquement la négociation de la transaction SSL avec le serveur.

    Côté serveur, bah tout dépend du serveur http (apache, IIS, ...). Il faut lire la documentation.
    Je ne suis pas tout à fait d'accord, dans le cas d'un certificat auto-signé il faudra le gérer aussi côté client.

  8. #8
    Expert confirmé

    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2007
    Messages
    4 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2007
    Messages : 4 253
    Billets dans le blog
    3
    Par défaut
    Citation Envoyé par Nickonet Voir le message
    Merci de vos réponses ! Et est il préférable de crypter le mdp en md5 avant de l'envoyer au serveur ou bien le crypter une fois sur le serveur pour l'enregistrer dans la base de données ?
    Le cryptage en md5 rajoute une sécurité du coté serveur: Même si le serveur est compromis, les mots de passe sont sécurisés...
    Attention bien utiliser un md5+salt, sinon, rien n'est sur (il existe des 'rainbow table' pour 'cracker' le md5).
    Par contre, il a pour inconvénient l'impossibilité d'envoyer son mdp à l'utilisateur, la fonction "forget password" devient alors "reset password".

Discussions similaires

  1. FrontPage 2000 - Login et MDP
    Par DamKre dans le forum Débuter
    Réponses: 5
    Dernier message: 21/09/2008, 11h45
  2. Création de login et mdp
    Par DownHill dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 13/04/2008, 23h10
  3. [ODBC] problème au niveau de la comparaison des login et mdp
    Par vanou dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 03/06/2007, 21h37
  4. Réponses: 10
    Dernier message: 26/07/2006, 07h52
  5. Accéder à une page web sans passer par login et mdp
    Par benthebest dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 21/07/2006, 01h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo