Classe SmtpPermission et SmtpClient

Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009
- - Dernière réponse : pintux
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009
- 28 oct. 2008 à 15:38
Bonjour à tous,
Selon La doc Microsoft au sujet du framework .NET:
- La classe [T_System_Net_Mail_SmtpClient.htm SmtpClient] exige un
SmtpPermission lors de l'envoi du courrier électronique à l'hôte SMTP.
Maiis comment faire passer un SmtpPermission à une classre SmtpClient ???
J'ai instancier un objet de type smtpPermission, mais je n'arrive pas à le lier à mon objet smtpClient, et visiblement sur le site de chez Bricosoft, le sujet n'est pas très claire!!!!

Merci pour toute aide apportée

Philippe
Afficher la suite 

9 réponses

Messages postés
2377
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
16
0
Merci
Bonjour,
Regarde du côté de la propriété Credentials de la classe SmtpClient.

Petit exemple:
Dim client as new SmtpClient("smtp.toto.fr")
.....
client.Credentials = System.Net.CredentialCache.DefaultNetworkCredentials
ou
client.Credentials = new System.Net.NetworkCredentials("TonUsername","TonPwd")
....
client.Send(...)

++
Commenter la réponse de cs_Willi
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009
0
Merci
Bonjour Willy,
Avant toute chose je te remercie pour le temps que tu as passé.
J'ai essayé en passant par la propriétée Credentials, mais sans succès. En effet,
La propriété Credentials de la classe SmtpClient, obtient ou définit les informations d'identification utilisées pour authentifier
l'expéditeur.Or je passe par un serveur smtp qui ne nécessite pas l'authentification de l'expéditeur,c'est pourquoi je suis d'autant plus étonné d'avoir un message d'erreur, qui me signifie que la classe SmtpClient a besoin de la classe smtpPermission. La classe SmtpPermission permet juste un contrôle l'accès aux serveurs SMTP, par un boolean et non pas par une authentification de compte, ce qui amène une nuance sur les conditions d'accès au serveur.
Bref, mon sentiment est qu'un objet de type smtpClient réclame un objet de type smtpPermission, comme le souligne le message d'erreur ainssi que la doc Microsoft, et ce sur tout type de serveur smtp, y compris ceux qui ne nécessite pas d'authentification.

Encore merci Willy

Cordialement

Philippe
Commenter la réponse de pintux
Messages postés
2377
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
16
0
Merci
Peux-tu essayer la méthode que je te propose ci-dessous en remplacant bien évidement les paramètres par les tiens.
Autre question. As-tu regardé du côté de ton antivirus ?

Using mail
As
New Net.Mail.MailMessage(
"from@toto.fr",
"to@toto.fr",
"sujet",
"body...")

Dim smtpPerm
As
New Net.Mail.SmtpPermission(Security.Permissions.PermissionState.Unrestricted)smtpPerm.Assert()

Dim client
As
New Net.Mail.SmtpClientclient.DeliveryMethod = Net.Mail.SmtpDeliveryMethod.Network

client.Host =

"smtp.toto.fr"client.Send(mail)

End
Using
Commenter la réponse de cs_Willi
Messages postés
24
Date d'inscription
vendredi 19 mai 2006
Statut
Membre
Dernière intervention
3 août 2009
0
Merci
Dim smtp As New SmtpClient("smtp.free.fr", 25)
        smtp.Credentials = New Net.NetworkCredential("USER", "PASWD") 'network credentials
        smtp.Send("Home", _
                   "Jonathan Picques <jonathan.picques@free.fr>, Jonathan Picques <jonathan.picques@free.fr>", _
                   "Contact", "Message")

Jonathan
Commenter la réponse de HTMLer
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009
0
Merci
Philippe
Merci pour ta suggestion HTMLer, pour l'instant je suis passé à autre chose, car je bosse sur un autre projet, mais je compte bien y revenir dessus, je garde donc ta suggestion  sous le coude.

MERCI encore

A+

Philippe
Commenter la réponse de pintux
Messages postés
2377
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
16
0
Merci
J'en profite pour te demander pintux si la solution qui t'avait été donné a résolu ton problème ?
Commenter la réponse de cs_Willi
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009
0
Merci
Philippe

Salut Willi, tout ceci est un peu vieux, d'autant que j'ai dû lâché un peu tout ça, car j'ai dû subir une hospitalisation de plusieurs mois.
Autant que je m'en souvienne cela n'avait pas règlé le problème dés lors que j'essaye de passer par un serveur exchange, je pense que cela doit être lier à la politique de sécurité du serveur exchange.En effet il est par exemple possible de bloquer tout courrier entrant de l'extérieur du réseau d'entreprise et qui présenterai une adresse lié à l'entreprise, ce qui contraint les employés d'envoyer leurs mails professionnels depuis le réseau d'entreprise. Cela est une bonne solution pour s'assurer que les employés soient bien sur leurs lieux de travail durant leurs heures de travail. Par contre, cela pénalise ceux qui souhaitent emmener du travail à la maison.
Cependant, si je passe par un serveur classique n'ayant pas de politique de sécuritéje ne rencontre aucun problème, cela fonctionne même sans passer par la propriété Credential.

A+

Philippe
Commenter la réponse de pintux
Messages postés
24
Date d'inscription
vendredi 19 mai 2006
Statut
Membre
Dernière intervention
3 août 2009
0
Merci
Si tu as des questions sur le code n'hésite pas a me les poser
Cordialement

Jonathan
Commenter la réponse de HTMLer
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009
0
Merci
Salut HTMLer,

MERCI pour ta sollicitude, je prends bonne note de ta proposition.

Cordialement

Philippe
Commenter la réponse de pintux