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

ASP.NET Discussion :

c# Envoi mail - erreur "Le certificat distant n'est pas valide selon la procédure de validation."


Sujet :

ASP.NET

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Points : 47
    Points
    47
    Par défaut c# Envoi mail - erreur "Le certificat distant n'est pas valide selon la procédure de validation."
    Bonjour à tous,

    J'ai développé dans mon application Web C#, une fonction d'envoi d'un email toute simple.
    Par contre impossible de trouver une solution pour le problème cité dans le titre (je précise que j'ai passé la journée à parcourir google avec le libellé de l'erreur et les mots clé gmail, c#,stmp, ssl et j'en passe sans trouver de solution...

    Voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    public Boolean EnvoiEmail(string MonMessage, string MonObjet, string EmailEnvoi, string MdPEnvoyeur, string EmailReception)
            {
     
                MailMessage mail = new MailMessage();
     
                mail.From = new MailAddress(EmailEnvoi); 
                mail.To.Add(EmailReception); 
                //contenu du message
                mail.Subject = MonObjet;
                mail.Body = MonMessage; 
                mail.IsBodyHtml = false;
     
                //send the message
                SmtpClient client = new SmtpClient("smtp.gmail.com", 587);   // ou "smtp.googlemail.com", 587
                client.EnableSsl = true;
     
                NetworkCredential myCreds = new NetworkCredential(EmailEnvoi, MdPEnvoyeur, ""); 
                client.Credentials = myCreds;
                try
                {
                    client.Send(mail);
                    return true;
                }
                catch (Exception ex)
                {
                    return false;
                }
            }
    Je précise que
    // EmailEnvoi et EmailReception sont des adresses gmail
    // EmailEnvoi est une adresse qui autorise l'accès des applications moins sécurisées

    Erreur obtenue :
    "Le certificat distant n'est pas valide selon la procédure de validation."

    Autre précision : cette fonction marchait il y a 6 mois, google a t il renforcé ses contrôles ???

    Merci pour votre aide ...

  2. #2
    Modérateur
    Avatar de DotNetMatt
    Homme Profil pro
    CTO
    Inscrit en
    Février 2010
    Messages
    3 611
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : CTO
    Secteur : Finance

    Informations forums :
    Inscription : Février 2010
    Messages : 3 611
    Points : 9 743
    Points
    9 743
    Billets dans le blog
    3
    Par défaut
    Si tu cherches sur Google avec le libellé de l'erreur en Francais, accroche-toi... Il n'y a que très peu d'aide disponible en Francais, la grande majorité des ressources est en Anglais.

    Sinon pour ton problème c'est quelque chose de classique avec les certificats. A moins d'avoir des raisons de vouloir les valider, en général on les accepte tous. Place donc ceci quelque part avant d'appeler client.Send(mail);:
    Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
    ServicePointManager.ServerCertificateValidationCallback = delegate(object s, X509Certificate certificate, X509Chain chain, SslPolicyErrors sslPolicyErrors) { return true; };
    Less Is More
    Pensez à utiliser les boutons , et les balises code
    Desole pour l'absence d'accents, clavier US oblige
    Celui qui pense qu'un professionnel coute cher n'a aucune idee de ce que peut lui couter un incompetent.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Points : 47
    Points
    47
    Par défaut
    Merci DotNetMatt... le problème est résolu avec la ligne de code fourni qui si j'ai bien saisi permet d'accepter tous les certificats susceptibles de devoir être validés ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 4
    Dernier message: 25/03/2016, 20h28
  2. CDO envoie mail, erreur STARTTLS
    Par AcidWily dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 24/09/2009, 16h30
  3. [Automation]envoi mail : erreur composant ActiveX
    Par offspring dans le forum VBA Access
    Réponses: 6
    Dernier message: 08/05/2008, 16h02
  4. Réponses: 2
    Dernier message: 28/11/2007, 14h34
  5. erreur 1722 le serveur RPC n'est pas disponible
    Par StyleXP dans le forum Windows XP
    Réponses: 1
    Dernier message: 13/11/2005, 20h23

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