首頁 > 後端開發 > C++ > 需要 SMTP 身份驗證:如何修復「5.5.1 需要身份驗證」錯誤?

需要 SMTP 身份驗證:如何修復「5.5.1 需要身份驗證」錯誤?

Susan Sarandon
發布: 2025-01-17 22:44:13
原創
838 人瀏覽過

SMTP Authentication Required: How Do I Fix

追蹤「需要 SMTP 驗證」錯誤:保護電子郵件連線

從應用程式發送電子郵件有時會導致錯誤:「SMTP 伺服器需要安全連線或用戶端未經過驗證。伺服器回應為:5.5.1 需要驗證。」這表示SMTP 伺服器拒絕未經驗證的連接或提供的憑證不正確。

解決此問題的方法如下:

  1. 啟用安全登入:Google 可能會阻止不符合目前安全標準的應用程式進行不安全登入嘗試。存取您的 Google 帳戶設定並啟用「安全性較低的應用程式存取」(或類似選項,取決於您的 Google 帳戶配置)。 注意:出於安全原因,通常不鼓勵這樣做。 考慮使用應用程式密碼(如果可用)。

  2. 驗證 SMTP 憑證: 仔細檢查您的 SMTP 憑證(使用者名稱、密碼和伺服器位址)的準確性。 確保這些設定與您的應用程式的配置精確匹配。

程式碼範例(具有安全性改善):

以下程式碼示範了安全電子郵件發送。 至關重要的是,它避免使用「安全性較低的應用程式存取」。 相反,它突出顯示使用應用程式密碼的首選方法(用您的實際憑證替換佔位符)。

<code class="language-csharp">MailMessage msg = new MailMessage();

msg.From = new MailAddress("mymailid@gmail.com");
msg.To.Add("receipientid@example.com");
msg.Subject = "test";
msg.Body = "Test Content";
msg.Priority = MailPriority.High;

SmtpClient client = new SmtpClient();

// Use App Password here instead of your actual Gmail password
client.Credentials = new NetworkCredential("mymailid@gmail.com", "YOUR_APP_PASSWORD"); 
client.Host = "smtp.gmail.com";
client.Port = 587;
client.DeliveryMethod = SmtpDeliveryMethod.Network;
client.EnableSsl = true;
client.UseDefaultCredentials = false;

client.Send(msg);</code>
登入後複製

Web.config 設定(使用應用程式密碼):

同樣,更新您的 Web.config 檔案以使用應用程式密碼而不是常規密碼:

<code class="language-xml"><appSettings>
  <add key="smtpServer" value="smtp.gmail.com" />
  <add key="EnableSsl" value="true" />
  <add key="smtpPort" value="587" />
  <add key="smtpUser" value="mymailid@gmail.com" />
  <add key="smtpPass" value="YOUR_APP_PASSWORD" />  <!-- Use App Password here -->
  <add key="adminEmail" value="adminemail@example.com" />
</appSettings>
<system.net>
  <mailSettings>
    <smtp from="mymailid@gmail.com">
      <network enableSsl="true" host="smtp.gmail.com" password="YOUR_APP_PASSWORD" port="587" username="mymailid@gmail.com" /> <!-- Use App Password here -->
    </smtp>
  </mailSettings>
</system.net></code>
登入後複製

透過實施這些安全配置,您將建立強大且受保護的 SMTP 連接,以實現可靠的電子郵件傳送。 請記住從您的 Google 帳戶安全設定中產生並使用應用程式密碼以增強安全性。

以上是需要 SMTP 身份驗證:如何修復「5.5.1 需要身份驗證」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板