ค้นหาเว็บไซต์

แก้ไข: "Send-MailMessage: SmtpClientAuthentication ถูกปิดใช้งานสำหรับผู้เช่า" ข้อผิดพลาด


ปัญหา :

เมื่อพยายามส่งอีเมลจาก PowerShell โดยใช้ Microsoft 365 SMTP Server ฉันได้รับข้อความแสดงข้อผิดพลาดนี้:


Send-MailMessage -To "Helpdesk@Crescent.com" -From "Monitoring@Crescent.com" -Subject "Hello from PowerShell" -Body "This is a test email sent from PowerShell." -SmtpServer "smtp.office365.com" -Port 587 -Credential (Get-Credential) -UseSsl

Send-MailMessage : เซิร์ฟเวอร์ SMTP ต้องการการเชื่อมต่อที่ปลอดภัย หรือไคลเอ็นต์ไม่ได้รับการรับรองความถูกต้อง การตอบสนองของเซิร์ฟเวอร์คือ: 5.7.57 ไคลเอนต์ไม่ได้รับการรับรองความถูกต้องในการส่งอีเมล ข้อผิดพลาด: 535 5.7.139 การรับรองความถูกต้องไม่สำเร็จ SmtpClientAuthentication ถูกปิดใช้งานสำหรับผู้เช่า ไปที่ https://aka.ms/smtp_auth_disabled เพื่อดูข้อมูลเพิ่มเติม
[VI1PR06CA0101.eurprd06.prod.outlook.com 2023-08-20T12:06:39.600Z08DB9FCA92567226]
At line:1 char:1

  • ส่งข้อความเมล -ถึง “Helpdesk@Crescent.com” -จาก “การตรวจสอบ@ …
  • ~~~~~~~~~~~~~ ~~~~

    • CategoryInfo: InvalidOperation: (System.Net.Mail.SmtpClient:SmtpClient) [ส่ง MailMessage], SmtpException
    • FullyQualifiedErrorId : SmtpException, Microsoft.PowerShell.Commands.SendMail

สารละลาย:

ตามที่ข้อความแสดงข้อผิดพลาดระบุ สาเหตุของข้อผิดพลาดเกิดจากการที่โปรโตคอล SMTP ถูกปิดใช้งานใน Exchange Online เมื่อต้องการแก้ไขข้อผิดพลาด คุณต้องเปิดใช้งานโปรโตคอล SMTP ใน Microsoft 365 Exchange Online Admin Center นี่คือวิธีการ:

  1. เข้าสู่ระบบ Exchange Online Admin Center ที่: https://admin.exchange.microsoft.com
  2. คลิกที่การตั้งค่า >> การรับส่งจดหมาย

  3. ในการตั้งค่า Mail Flow ภายใต้ความปลอดภัย: ยกเลิกการเลือกช่องทำเครื่องหมาย “ปิดโปรโตคอล SMTP AUTH สำหรับองค์กรของคุณ” แล้วคลิกปุ่ม “บันทึก”

นั่นคือทั้งหมด! คุณควรจะสามารถส่งอีเมลโดยใช้ PowerShell Send-MailMessage cmdlet กับ Office 365 SMTP Server

บทความที่เกี่ยวข้อง