J'ai besoin d'envoyer un e-mail via une application Web, mais l'adresse que l'e-mail va requiert une authentification SMTP. Le code fonctionne pour les boîtes aux lettres qui n'ont pas besoin d'authentification. Je voudrais passer à travers les informations d'identification de l'utilisateur Windows (le site utilise l'authentification Windows) et pensé que cela serait réalisé avec mon code, mais malheureusement, je reçois des erreurs sur le client n'ayant pas la permission d'envoyer. Je suppose qu'il utilise les informations d'identification de l'utilisateur du pool d'applications plutôt que l'utilisateur connecté.System.Net.Mail.SmtpClient - Le client n'a pas l'autorisation d'envoyer en tant que cet expéditeur
Dim mailMessage As System.Net.Mail.MailMessage = New System.Net.Mail.MailMessage()
mailMessage.IsBodyHtml = True
Dim strBody As String = "<font size='2' font face='Tahoma'>" & _
"<br><br><b>Date: </b>" & Me.txtDate.Text
mailMessage.From = New System.Net.Mail.MailAddress(fromAddress) 'Logged in user's email address
' More code here to build the email body etc...
' Then attempt to send it:
Dim smtpClient As System.Net.Mail.SmtpClient = New System.Net.Mail.SmtpClient
smtpClient.UseDefaultCredentials = True
smtpClient.Send(mailMessage)
Web.config ne contient que le nom du serveur SMTP sous system.net
(mailsettings-> smtp)
Comment puis-je obtenir l'application à utiliser les informations d'identification de l'utilisateur?
WinForms? WPF? ASP.NET? –
Désolé, c'est asp.net! –
Je ne sais pas beaucoup sur ASP.NET, mais peut-être le problème se produit en raison de ce que le code du serveur est exécuté sur le Serverside, ainsi les informations d'identification de compte du serveur est utilisé? Ou est-ce censé être comme ça? –