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

C++Builder Discussion :

HTTPS et borland


Sujet :

C++Builder

  1. #1
    Membre à l'essai
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 5
    Par défaut HTTPS et borland
    Hello tout le monde,
    Je suis en train de reprendre une application interagissant avec un serveur http dont la connectivité fonctionnait très bien jusqu'alors
    Pour ajouter un peu de sécu j'ai mis une authentification ainsi qu'un certificat self signed (https). J'ai essayé depuis mon navigateur cela semble bien fonctionner malgré le message d'alerte disant que l'autorité n'est pas connue, normal vu que j'ai signé moi même le certificat.
    Malheureusement le problème est bien différent sur mon application developpée sous c++builder6 avec comme component pour la communication http acHTTP d'appcontrol.
    Immédiatement après que la requête soit envoyée en HTTPS je récupère un événement Host Unreachable pourtant l'URL est la bonne....
    J'ai mis à true le flag ignore certificate invalid, mais cela ne semble rien changer.
    Pour info, mon test avec authentification et sans HTTPS a fonctionné parfaitement...
    Si quelqu'un a déjà tenté l'expérience d'HTTPS avec CB6 merci de partager !!

    Merci d'avance à vous !

    Julien

  2. #2
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 081
    Par défaut
    utilise un TIdHTTP et TIdConnectionInterceptOpenSSL.SSLOptions.CertFile
    C'est ce que j'ai dans mon BCB6

    Certificat HTTPS avec indy+OpenSSL pour Indy 10 (c'est la 9 en BCB6)

    Voir un exemple en Delphi 7 (Indy 9) de TIdSSLIOHandlerSocket
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Membre à l'essai
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2011
    Messages : 5
    Par défaut
    Citation Envoyé par ShaiLeTroll Voir le message
    utilise un TIdHTTP et TIdConnectionInterceptOpenSSL.SSLOptions.CertFile
    C'est ce que j'ai dans mon BCB6

    Certificat HTTPS avec indy+OpenSSL pour Indy 10 (c'est la 9 en BCB6)

    Voir un exemple en Delphi 7 (Indy 9) de TIdSSLIOHandlerSocket
    Félicitations pour ta réponse rapide, c'est d'ailleurs toujours toi qui répond à mes questions et je t'en remercie. Si je comprends bien tu m'invites à changer de component, remplacer TacHTTP par TidHTTP, Ce VCL est vraiment meilleur que le précédent ?
    Je me pose cette question car cela risque d'impliquer pas mal de modifications dans mon projet existant qui est au stade de finalisation, mais aussi parce que le composant acHTTP est sensé supporter le SSL => http://www.appcontrols.com/manuals/a...ml?tachttp.htm.
    Désolé si je te contrarie un peu mais je cherche une solution assez peu lourde.
    Bonne jourée !

  4. #4
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 081
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 081
    Par défaut
    Indy est plutôt réputé, ce package est toujours d'actualité avec XE, c'est qu'Embaracadero leur fait confiance (ce n'est pas le cas des outils de Report ou couche OR)

    Maintenant pour TacHTTP, tu as une documentation de qualité, c'est rare, c'est déjà un bon point pour ce composant !
    Tu as donc utiliser "ioIgnoreUnknownCertificateAuthority" ou "ioIgnoreCertificateInvalid" ?
    Le Certificat, tu l'as accepté manuellement lors de ta 1er connexion avec ton Navigateur ?
    Tu ne l'as pas installé avant (comme on le fait avec des X509 contenu sur clé USB ou Carte à Puce comme la CPS)


    Pour ma part, j'ai réussi à faire du HTTPS avec THTTPRIO pour mes WebService je configure des mes options de mon appli "https://www.monserver.fr/dir/app/ws.php" ce qui sera utilisé comme URL du THTTPRIO et cela fonctionne sans aucun additif donc je t'avoue que je n'ai jamais cherché très loin (tant que cela fonctionnait, je ne sais même pas si ça faisait vraiment du HTTPS)
    Dans le HTTPRIO.HTTPWebNode.InvokeOptions, tu as pareil, l'option soIgnoreInvalidCerts qui modifie les Options API Net de Windows INTERNET_FLAG_IGNORE_CERT_DATE_INVALID et INTERNET_FLAG_IGNORE_CERT_CN_INVALID
    Et c'est par défaut ! du coup, je pense qu'il y avait surement une redirection HTTPS vers HTTP, et que cela ne dérangeait personne !
    Après tout, pendant des années, le serveur SFTP était accessible en simple FTP (alors que ce n'était pas censé l'être )

    J'ai un peu bidouillé tout ça mais en tatonnant, mes connaissances sont la conséquence de nombreuses erreurs et echecs, petit à petit, cela fonctionnait maintenant, le réseau, le net et ces technos reste pour moi quelques choses d'obscures !
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. Choisir Visual c++ ou Borland C++Builder ?
    Par DevEric dans le forum Choisir un environnement de développement
    Réponses: 31
    Dernier message: 14/06/2007, 23h48
  2. Outils, cours et NOUVEAUX tutoriels pour Borland C++Builder
    Par hiko-seijuro dans le forum C++Builder
    Réponses: 10
    Dernier message: 12/03/2006, 22h33
  3. Tutoriels et liens pour le Borland Database Engine
    Par Community Management dans le forum Paradox
    Réponses: 0
    Dernier message: 25/03/2002, 10h23

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