Error de Gmail: el servidor SMTP requiere una conexión segura o el cliente no fue autenticado. La respuesta del servidor fue: 5.5.1 Se requiere autenticación

Resuelto vcs asked hace 10 años • 21 respuestas

Estoy usando el siguiente código para enviar correo electrónico. El Código funciona correctamente en mi Máquina local. Pero en el servidor de producción recibo el mensaje de error.

var fromAddress = new MailAddress("[email protected]");
var fromPassword = "xxxxxx";
var toAddress = new MailAddress("[email protected]");

string subject = "subject";
string body = "body";

System.Net.Mail.SmtpClient smtp = new System.Net.Mail.SmtpClient
{
    Host = "smtp.gmail.com",
    Port = 587,
    EnableSsl = true,
    DeliveryMethod = System.Net.Mail.SmtpDeliveryMethod.Network,
    UseDefaultCredentials = false,
    Credentials = new NetworkCredential(fromAddress.Address, fromPassword)       
};

using (var message = new MailMessage(fromAddress, toAddress)
{
    Subject = subject,
    Body = body
})

smtp.Send(message);

Y en mi aire acondicionado de Gmail recibí el siguiente correo electrónico después de ejecutar el código desde el servidor de producción.

Hola ,

Alguien usó recientemente su contraseña para intentar iniciar sesión en su cuenta de Google [email protected] . Esta persona estaba utilizando una aplicación como un correo electrónico, un cliente o un dispositivo móvil.

Impedimos el intento de inicio de sesión en caso de que se tratara de un secuestrador que intentaba acceder a su cuenta. Revise los detalles del intento de inicio de sesión:

Viernes 3 de enero de 2014 13:56:08 en punto UTC Dirección IP: xxx.xx.xx.xxx (abcd.net.) Ubicación: Filadelfia PA, Filadelfia, PA, EE. UU.

Si no reconoce este intento de inicio de sesión, es posible que otra persona esté intentando acceder a su cuenta. Debe iniciar sesión en su cuenta y restablecer su contraseña inmediatamente.

Restablecer la contraseña

Si era usted y tiene problemas para acceder a su cuenta, complete los pasos de solución de problemas que se enumeran en http://support.google.com/mail?p=client_login

Atentamente, El equipo de Cuentas de Google

vcs avatar Jan 03 '14 21:01 vcs
Aceptado

Cuando intenta enviar correo desde el código y encuentra el error "El servidor SMTP requiere una conexión segura o el cliente no fue autenticado. La respuesta del servidor fue: 5.5.1 Se requiere autenticación", el error puede ocurrir debido a los siguientes casos.

caso 1: cuando la contraseña es incorrecta

caso 2: cuando intentas iniciar sesión desde alguna aplicación

Caso 3: cuando intenta iniciar sesión desde un dominio distinto de su zona horaria/dominio/computadora (este es el caso en la mayoría de los escenarios cuando se envía correo desde código)

Hay una solución para cada

solución para el caso 1: ingrese la contraseña correcta.

Solución 1 para el caso 2 : vaya a la configuración de seguridad en el siguiente enlace https://www.google.com/settings/security/lesssecureapps y habilite las aplicaciones menos seguras. Para que pueda iniciar sesión desde todas las aplicaciones.

solución 2 para el caso 2 : (consulte https://stackoverflow.com/a/9572958/52277 ) habilite la autenticación de dos factores (también conocida como verificación de dos pasos) y luego genere una contraseña específica de la aplicación. Utilice esa contraseña recién generada para autenticarse mediante SMTP.

Solución 1 para el caso 3: (Esto podría ser útil) necesita revisar la actividad. pero revisar la actividad no será útil debido a los últimos estándares de seguridad, el enlace no será útil. Pruebe el siguiente caso.

Solución 2 para el caso 3 : si ha alojado su código en algún lugar del servidor de producción y tiene acceso al servidor de producción, establezca una conexión de escritorio remoto al servidor de producción e intente iniciar sesión una vez desde el navegador del servidor de producción. Esto agregará una excepción para iniciar sesión en Google y se le permitirá iniciar sesión desde el código.

Pero, ¿qué pasa si no tienes acceso al servidor de producción? prueba la solución 3

Solución 3 para el caso 3: debe habilitar el inicio de sesión desde otra zona horaria/ip para su cuenta de Google.

para ello siga el enlace https://g.co/allowaccess y permita el acceso haciendo clic en el botón continuar.

Y eso es. Aquí tienes. Ahora podrá iniciar sesión desde cualquier computadora y mediante cualquier aplicación en su cuenta de Google.

Roshan Parmar avatar Nov 03 '2014 07:11 Roshan Parmar

Esto generalmente sucede cuando intenta iniciar sesión desde una zona horaria o dirección IP diferente en la computadora. Su servidor de producción y la identificación de correo que ha utilizado se encuentran en zonas horarias diferentes. Elija cualquiera de estas dos soluciones:

1) Inicie sesión en el servidor de producción mediante acceso remoto e inicie sesión en Gmail una vez con sus credenciales. Le pedirán la confirmación, la confirmarán y cerrarán sesión.

O 2) inicie sesión en Gmail en su computadora local, siga este enlace y elija revisar esta actividad y tomar las medidas adecuadas.

Mohammad Arshad Alam avatar Jan 03 '2014 15:01 Mohammad Arshad Alam

ACTUALIZACIÓN 2022

El método de aplicaciones menos seguras ya no funciona

Deberías migrar a la API SMTP de GMail

Enviar correo electrónico con solo una identificación y contraseña de Gmail ya no funciona. Debe configurar la API desde Google Cloud Console y crear credenciales de OAuth para hacerlo.

Enlace a la consola de Google Cloud

Enlace a la guía oficial

Enlace a Una guía fácil

ingrese la descripción de la imagen aquí

RESPUESTA ORIGINAL

Es una cuestión de seguridad. De forma predeterminada, Gmail impide el acceso a su cuenta de correo electrónico desde aplicaciones personalizadas. Puede configurarlo para aceptar el inicio de sesión desde su aplicación.

Después de iniciar sesión en su correo electrónico, HAGA CLIC AQUÍ

Esto lo llevará a la siguiente página.

Página de aplicaciones menos seguras

Abdul Saleem avatar Jan 12 '2015 10:01 Abdul Saleem