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

Sécurité Java Discussion :

connexion a un server mail via TLS/SSL


Sujet :

Sécurité Java

  1. #1
    Membre à l'essai
    Inscrit en
    Juin 2006
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 11
    Points : 11
    Points
    11
    Par défaut connexion a un server mail via TLS/SSL
    Bonjour a tous;
    il y a une semaine que je boucle sur un probleme de connection a un server mail en mode TLS et SSL mais sans resultas.j'ai pas compris l'astuce.
    mon bout de code:
    public void sendmail(){

    try {
    //System.setProperty("javax.net.debug", "all");
    String protocol = "smtp";
    String mailSmtpHost = "mon_servermail";
    String socketFactory = "javax.net.ssl.SSLSocketFactory";
    String port = "25";
    String login = "toto";
    String password = "****";
    String from = "toto@****.***";
    String smtpAuth = "true";

    Properties props = new Properties();
    props.put("mail.smtp.starttls.enable","true");
    props.put("mail.smtp.auth", smtpAuth);
    props.put("mail.smtp.socketFactory.class", socketFactory);
    props.put("mail.smtp.socketFactory.port", port);
    props.put("mail.smtp.port", port);
    //props.put("mail.smtp.auth.plain.disable" ,"true");

    // Creating mail session
    session = Session.getDefaultInstance(props, new Authenticator() {
    protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
    return new javax.mail.PasswordAuthentication(login, password);
    }
    });
    URLName url = new URLName(protocol, mailSmtpHost, Integer.parseInt(port), "", userName, password);
    com.sun.mail.smtp.SMTPSSLTransport transport = new com.sun.mail.smtp.SMTPSSLTransport(session, url);
    transport.setStartTLS(true);
    // Constructing Message object
    Message msg = new MimeMessage(session);
    msg.setFrom(new InternetAddress(from));
    msg.setRecipients(Message.RecipientType.TO, InternetAddress.parse("xxxx@xxxx.xx", false));
    msg.setSubject("test");
    msg.setText("mail for test");
    Transport.send(msg);
    transport.close();
    }
    catch (MessagingException me)
    {
    me.printStackTrace();
    System.out.println("Unable to send mail");
    }
    }
    quelqu'un pourra m'aider?
    merci.

  2. #2
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Connection au serveur de mail sécurisé
    Bonjour,
    Après beaucoup de temps passé à rechercher une solution à mon problème au travers de différents forums, je me tourne vers celui-ci pour savoir si l'un d'entre vous aurait une solution, une idée, une hypothèse.. bref n'importe quoi qui puisse me faire avancer sur mon problème exposé ci après.

    J'utilise Javamail pour me connecter à un serveur de mail (création d'un POPClientAuthenticator, récupération de l'instance de la Session et récup du "magasins" d'email (Store) avant de faire un connect().).
    Avec le protocole pop3 "normal", aucun souci, je récupère les mails présents sur le serveur.
    Dès lors que je veux passer en mode sécurisé (SSL), une exception est levée lors de la phase de connection de type
    "javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: No trusted certificate found"..

    Un certificat est utilisé sur le serveur. Je l'ai donc aussi ajouté au fichier 'cacerts' du jdk avec l'outil keytool. c'est pour cela que je ne comprend pas le message d'erreur. C'est comme s'il ne trouvait pas le certificat...

    En gros, voici ce que je fais :

    // Paramétrage de la session
    parametres = System.getProperties();
    parametres.put(POPClient.JAVAMAIL_SECURED_HOST,
    POPClient.POPS_HOST); //mon serveur sécurisé

    POPClientAuthenticator authentificateur = new
    POPClientAuthenticator(POPClient.POPS_USER, POPClient.POPS_PASSWORD);
    //user et password associé au serveur sécurisé

    session = Session.getInstance(parametres, authentificateur);
    try {
    store =
    session.getStore(POPClient.JAVAMAIL_SECURED_STORE); //pop3s

    store.connect(); -> Exception !!
    ...

    Je ne sais plus du tout quoi essayé..
    Merci d'avance pour vos suggestions, idées, questions?
    Fabrice

Discussions similaires

  1. Erreur de connexion à SQL Server 2000 via Sage V15
    Par Andry dans le forum Administration
    Réponses: 6
    Dernier message: 10/08/2009, 07h59
  2. Problème de connexion à SQL SERVER 2005 via un script
    Par ben_harper dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 23/06/2009, 19h09
  3. [SQL-Server] Connexion SQL Server 2005 via PHP
    Par zemeckis dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 27/02/2009, 14h58
  4. connexion sql server 2000 via VC 2008
    Par miloon dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 22/02/2009, 09h23
  5. [VB.NET] connexion à Sql server 2005 via script vb
    Par grandslam dans le forum Windows Forms
    Réponses: 6
    Dernier message: 21/06/2006, 11h13

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