5.7.57 SMTP Client n'est pas authentifié pour envoyer des messages anonymes au cours de MAIL D'erreur
Je dois envoyer des mails à l'aide de mon application web. Étant donné le code ci-dessous montrant The SMTP server requires a secure connection or the client was not authenticated. The server response was:
5.7.57 SMTP; le Client n'est pas authentifié pour envoyer des messages anonymes pendant des e-mails.
M'aider à trouver une solution appropriée. Merci.
Code:
protected void btnsubmit_Click(object sender, EventArgs e)
{
Ticket_MailTableAdapters.tbl_TicketTableAdapter tc;
tc = new Ticket_MailTableAdapters.tbl_TicketTableAdapter();
DataTable dt = new DataTable();
dt = tc.GetEmail(dpl_cate.SelectedValue);
foreach (DataRow row in dt.Rows)
{
string eml = (row["Emp_Email"].ToString());
var fromAddress = "emailAddress";
var toAddress = eml;
const string fromPassword = "*****";
string body = "Welcome..";
//smtp settings
var smtp = new System.Net.Mail.SmtpClient();
{
smtp.Host = "smtp.office365.com";
smtp.Port = 587;
smtp.EnableSsl = true;
smtp.DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network;
smtp.Credentials = new NetworkCredential(fromAddress, fromPassword);
smtp.UseDefaultCredentials = false;
smtp.Timeout = 600000;
}
//Passing values to smtp object
smtp.Send(fromAddress, toAddress, subject, body);
}
}
}
- pourquoi ne pas augmenter le Délai d'attente?
- Avez-vous anonymiser ce, ou êtes-vous en train d'essayer d'envoyer plus de office.com avec cette connexion?
- Quels changements avez-vous fait? Face à la même question.
- J'ai été ableto envoyer un e-mail avec le SMTP de config montré, mais j'ai déménagé smtp.UseDefaultCredentials = false; avant smtp.Les informations d'identification = ... comme Kiquenet écrire ci-dessous
Vous devez vous connecter pour publier un commentaire.
Je ne pourrais pas être un bon programmeur, mais vous semblez être en train de passer l'adresse De l'expéditeur en tant que "emailAddress" qui n'est pas une bonne adresse email et pour Office365 la de doit être une adresse réelle sur le Office365 système.
Vous pouvez vérifier si vous coder en dur votre adresse email et de votre mot de passe office 365. Ne le laissez pas là bien sûr.
@Reshma - Dans le cas où vous n'avez pas compris encore, voici les choses que j'ai essayé et cela a résolu le même problème.
Assurez-vous que NetworkCredentials vous définissez sont corrects. Par exemple dans mon cas, depuis qu'il a été SMTP du bureau, id utilisateur devait être utilisée dans le NetworkCredential avec nom de domaine et pas d'e-mail de l'id.
Vous devez régler "UseDefaultCredentials" false en premier et ensuite définir les informations d'Identification. Si vous réglez "UseDefaultCredentials" après cela, il réinitialise le NetworkCredential à null.
Espère que cela aide.
J'ai passé beaucoup trop de temps sur ce sujet et la solution a été super simple.
J'ai dû utiliser mon "MX", comme l'hôte et le port 25.
You need to set "UseDefaultCredentials" to false first and then set Credentials. If you set "UseDefaultCredentials" after that it resets the NetworkCredential to null.
domain-com.mail.protection.outlook.com
etsmtp.office365.com
? Puis-je envoyer à xxx@anotherDomain destinataires ?- Je utiliser pour le même problème.
Ajouter le domaine résolu..
NetworkCredential(email, password);
Deux raisons principales seulement comme mentionné dans les commentaires ci-dessus
UseDefaultCredentials
de faux en premier et ensuite définir les informations d'IdentificationOu
Mettre
smtp.UseDefaultCredentials = false;
au-dessus de lasmtp.Credentials assignment
.C'est une vieille question, mais puisque c'est le premier résultat dans google pour cette erreur, j'ai pensé que je voudrais mettre à jour mon progrès dans ce numéro.
J'ai passé trop peut heures sur cette question. En fin de compte, j'ai dû changer mon compte Office 365 de mot de passe à quelques reprises jusqu'à ce que mon code a réussi à envoyer des mails.
N'avez pas à apporter des modifications dans le code.
Si vous utilisez office 365, suivez ces étapes:
Espère que cela aide!
Dans mon cas, 2 Facteur d'Authentification a été activée pour le compte Office 365. Une fois que cela a été éteint, l'e-mail envoyé avec succès.
J'ai changé le Office365 mot de passe, puis essayé d'envoyer un e-mail de test et cela a fonctionné comme un charme pour moi.
J'ai utilisé l'extrémité avant (messagerie de base de données en option) et les paramètres comme smtp.office365.com numéro de port 587 et coché l'option connexion sécurisée. utiliser l'authentification de base et de stocker les informations d'identification. Espérons que cela s'avère utile pour quelqu'un.
Commencé à travailler après l'ajout de la propriété:
À l'aide de:
Dans mon cas, j'ai été en utilisant le MailMessage constructeur qui prend deux chaînes de caractères (à, de) et obtenir la même erreur. Lorsque j'ai utilisé le constructeur par défaut et ensuite ajouté un MailAddress objet de la propriété de la MailMessage il a bien fonctionné.
Définie par l'Utilisateur defauilt credencials à "True"
smtp.UseDefaultCredentials = True;
Avant que vous entrez vos informations d'identification
smtp.Les informations d'identification = new NetworkCredential(fromAddress, fromPassword);
Cela devrait être fonctionne bien