【问题标题】:5.7.57 Client not authenticated to send mail5.7.57 客户端未通过身份验证发送邮件
【发布时间】:2022-01-12 02:56:45
【问题描述】:

我是一名公司员工。 作为我工作的一部分,我需要从我的 C# 代码发送电子邮件。

通过以下代码,我可以使用不太安全的 gmail ID 成功发送电子邮件。但我无法对基于公司 Outlook Exchange 的电子邮件 ID 做同样的事情。 我得到以下异常。

" SMTP 服务器需要安全连接或客户端未通过身份验证。服务器响应为:5.7.57 客户端未通过身份验证发送邮件。错误:535 5.7.139 身份验证不成功,邮箱禁用了 SmtpClientAuthentication。访问https://aka.ms/smtp_auth_disabled 了解更多信息。 [BN9PR03CA0659.namprd03.prod.outlook.com]"

我该怎么办?有没有办法让我的公司 Outlook Exchange 电子邮件 ID 不那么安全,无法发送电子邮件。 (就像我为 gmail 所做的那样。)

下面是我正在使用的代码。

MailMessage message = new MailMessage(from, to);

        string mailbody = "In this article you will learn how to send a email using Asp.Net & C#";
        message.Subject = "Sending Email Using Asp.Net & C#";
        message.Body = mailbody;
        message.BodyEncoding = Encoding.UTF8;
        message.IsBodyHtml = true;         
        client.EnableSsl = true;
        client.UseDefaultCredentials = false;
        client.Credentials = new NetworkCredential("name@corporatecompany.com", "$password");            
        client.Host = "smtp.office365.com";
        client.Port = 587;
        client.DeliveryMethod = SmtpDeliveryMethod.Network;          
        try
        {
            client.Send(message);
        }

【问题讨论】:

标签: .net email office365


【解决方案1】:

您需要确保 smtp 地址正确。尽管使用 O365 并且可能是端口号,但您的组织可能会有所不同。请与负责此问题的公司电子邮件管理团队/AD 团队联系,然后重试。

可能 smtp 主机可以是您的 org 域名主机,而不是通用域名主机。我根据我们所拥有的经验提出建议,因为我们也将 O365 用于我们的公司电子邮件,并且我将我们的 smtp 主机设置为带有端口号的“mail..com”。并且可能有一个服务帐户已授予适当的使用权限,否则使用 smtp 中继将变得不那么安全。

【讨论】:

    猜你喜欢
    • 2015-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-02
    • 1970-01-01
    • 1970-01-01
    • 2019-06-05
    • 2019-09-15
    相关资源
    最近更新 更多