Classe SmtpPermission et SmtpClient

Signaler
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009
-
pintux
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009
-
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

9 réponses

Messages postés
2376
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
19
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(...)

++
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009

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
Messages postés
2376
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
19
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
Messages postés
24
Date d'inscription
vendredi 19 mai 2006
Statut
Membre
Dernière intervention
3 août 2009

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
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009

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
Messages postés
2376
Date d'inscription
jeudi 12 juillet 2001
Statut
Modérateur
Dernière intervention
15 décembre 2018
19
J'en profite pour te demander pintux si la solution qui t'avait été donné a résolu ton problème ?
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009

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
Messages postés
24
Date d'inscription
vendredi 19 mai 2006
Statut
Membre
Dernière intervention
3 août 2009

Si tu as des questions sur le code n'hésite pas a me les poser
Cordialement

Jonathan
Messages postés
21
Date d'inscription
mardi 23 juin 2009
Statut
Membre
Dernière intervention
23 juin 2009

Salut HTMLer,

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

Cordialement

Philippe