SmtpClient.UseDefaultCredentials does not work in Authenticated SM

V

vik

I use SmtpClient to send email in my program, and I set the
UserDefaultCredentials to true to use the logged on user's credentials.
However it doesn't work on authenticated SMTP server. It will throws
exception saying 'System.Net.Mail.SmtpException: The SMTP server requires a
secure connection or the client was not authenticated. The server response
was: 5.7.3 Client was not authenticated'

However if I set UserDefaultCredentials to false and hard-coded my login and
password for SmtpClient.Credentials, it works. It seems as if the
UseDefaultCredentials does not set loggon user's credentials correctly.

Any help would really appreciated.

Vik
 
H

Henning Krause [MVP - Exchange]

Hello,

what SMTP server are you using?

If you use the credential of the currently logged on user, the mail server
must support NTLM authentication. If it just supports the LOGIN method, it
won't work.
To check if the server supports this, open a command prompt and type
telnet servername 25

this will open a connection to the smtp server. Then type
ehlo

This will send an extended helo request to the server. The server will now
list all supported commands. If you find a line stating
250-AUTH NTLM

the server has NTLM authentication enabled. If not - you can't use the
default credentials.

Kind regards,
Henning Krause
 
V

vik

Hi Henning,

Thank you very much for your reply to my question. You are right; it was the
SMTP server not supporting NTLM issue, and after we have SMTP server's
settings changed to support NTLM, the email client was able to send email
sucessfully.

Again, I really appreciate your help.

Best Regards,
Vik
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top