私のasp.netアプリケーションから電子メールを送信しようとしています。それはWebサーバー上で、私はエラーが発生しました:SMTPサーバーが安全な接続を必要とするか、クライアントが認証されていません。サーバーの応答は:5.5.1認証が必要、SMTPサーバーが安全な接続を必要とするか、クライアントがasp.netから電子メールを送信中に認証されていないエラー
いずれかが役に立ちますか?ありがとう
私のasp.netアプリケーションから電子メールを送信しようとしています。それはWebサーバー上で、私はエラーが発生しました:SMTPサーバーが安全な接続を必要とするか、クライアントが認証されていません。サーバーの応答は:5.5.1認証が必要、SMTPサーバーが安全な接続を必要とするか、クライアントがasp.netから電子メールを送信中に認証されていないエラー
いずれかが役に立ちますか?ありがとう
あなたはドメインの一部であり、SMTPサーバーもこのドメインにあります。この場合、Windows認証によって自動的に認証されている可能性があり、IISが実行されているユーザーは、おそらくそのコンピュータがローカルにいるローカルになっている可能性があります。ドメインユーザーの下でアプリケーションプールを実行し、偽装(テストされていませんが動作するはずです)を使用するか、電子メールを送信するときにプログラムによってSMTPサーバーに資格情報を追加することができます。
上でSSLを有効にするためのリンクがあることは、この
private void MailSendThruGmail()
{
MailAddress fromAddress = new MailAddress("[email protected]", "From Name");
MailAddress toAddress = new MailAddress("[email protected]", "To Name");
const string subject = "test";
const string body = @"Using this feature, you can send an e-mail message from an application very easily.";
System.Net.Mail.MailMessage msg = new System.Net.Mail.MailMessage(fromAddress.Address, toAddress.Address, subject, body);
msg.IsBodyHtml = true;
var client = new SmtpClient("smtp.gmail.com", 587)
{
Credentials = new NetworkCredential("username", "password"),
EnableSsl = true
};
try
{
client.Send(msg);
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
}
メールサーバーにアクセスし、ファイアウォールの設定を確認してください。その後gmailに行き、gmailのセキュリティで保護されたクライアントリストにあなたのサーバーアドレスをアカウント設定から追加します。
ありがとうございました。受け入れられた回答の下の手順を使用して修正できました。おそらく、あなたの手順は他のシナリオで役立つかもしれません。ありがとう –
ローカルに同じsmtpサーバーで確認しましたか?あなたのsmtpサーバーがsslを有効にしていますか? –
はい、私はenablesslを持っている=私のコードで真実 –