12
votes

Obtenir SMTPCLIPT pour travailler avec un certificat SSL SODE SIGNÉ

Je tente d'utiliser la classe system.net.mail.smtpClient pour relier un email via le serveur de messagerie de mon entreprise. Toutes les connexions SMTP au serveur de messagerie doivent être SSL et utilise un certificat auto-signé. C'est bon pour Outlook où vous pouvez simplement cliquer sur OK sur le dialogue d'avertissement, mais quelqu'un connaît-il un moyen d'obtenir SmtpClient d'accepter un certificat auto-signé?

Je prévois de l'utilisation de cette application sur la plate-forme Windows Azure, donc je ne pourrai pas installer le certificat auto-signé en tant que racine de confiance.


0 commentaires

3 Réponses :


14
votes

2 commentaires

J'ai examiné un peu l'angle de service un peu, mais j'ai vu ce commentaire sur la page DocPoint Servicepoint / Membres "fournit une gestion de la connexion pour les connexions HTTP", donc j'ai l'impression qu'elle ne sera pas utilisée pour SMTP. De plus, lorsque j'essaie et mettez un message de journal dans le rappel, il n'est jamais appelé.


Vous devez mettre ceci avant Faire des tentatives pour instancier la classe SMTPClient , idéalement dans une section d'initialisation globale de votre application.



5
votes

Mon problème a fini par être que la classe SMTPClient .NET SMTPCLIENT ne prend apparemment pas en charge l'utilisation du port 465 pour les connexions SSL SMTP. Utilisation du port 25 avec un certificat SSL auto-signé fonctionnant correctement.

MSDN System.net Forum Question Peut être configuré SMTPCLIENT pour fonctionner avec un certificat auto-signé? .


0 commentaires

1
votes

Si vous voulez être plus sécurisé, vous voudrez peut-être examiner ce qui suit: xxx

dans ce code, nous approuvons automatiquement des certificats uniquement pour le client SMTP spécifique en question; Nous avons un chemin de code de stub que vous devriez passer à rétablir explicitement la validation de certificat par défaut si vous trouvez que quelque chose d'autre dans votre application est en utilisant.

Une autre approche différente et utile de l'approbation des certificats que dans des contextes où vous souhaitez réellement être dans . Réponse .


0 commentaires