【问题标题】:javax.mail.AuthenticationFailedException: 535-5.7.8 Username and Password not acceptedjavax.mail.AuthenticationFailedException:535-5.7.8 用户名和密码不被接受
【发布时间】:2016-05-22 16:44:40
【问题描述】:

当我尝试使用 JavaMail API 发送邮件时收到此错误:

javax.mail.AuthenticationFailedException: 535-5.7.8 Username and Password not accepted

我该如何解决这个问题?

【问题讨论】:

标签: java jakarta-mail


【解决方案1】:

对我来说,更改为@Heisenberg 推荐的属性“mail.host”。

documentation 说要使用“smtp.gmail.com”,但只适用于我使用“smtp.googlemail.com”。

PS:我的 Allow Less Secure App 配置已经开启

【讨论】:

    【解决方案2】:

    像这样更改 Google 中的设置:

    【讨论】:

    • 请用文字说明如何更改设置。
    【解决方案3】:

    请点击谷歌安全面板内的切换按钮开启。 然后它也将允许不太安全的应用程序。

    【讨论】:

      【解决方案4】:

      第 1 步:登录您的 gmail 帐户

      第 2 步:点击设置

      第 3 步:点击“帐户和导入”标签 > 其他 Google 帐户设置

      第 4 步:点击安全

      • 滚动到页面底部在不太安全的应用访问下,点击开启访问

      第 5 步:将允许不太安全的应用设置为开启

      【讨论】:

      • 这也是我的解决方案!祝大家好运
      【解决方案5】:

      我有同样的错误,但是当我从终端运行应用程序时,它就消失了。提供了我的邮箱配置:

      spring.mail.host=smtp.googlemail.com
      spring.mail.username=weddingcard9999@gmail.com
      spring.mail.password=Weddingcard.1
      spring.mail.port=587
      spring.mail.properties.mail.smtp.starttls.enable=true
      spring.mail.properties.mail.smtp.auth=true
      spring.mail.properties.mail.smtp.starttls.required=true
      

      【讨论】:

        【解决方案6】:

        它适用于我,您必须按照以下步骤配置您的 Gmail 帐户:

        在安全部分:

        您需要将“允许不太安全的应用:关闭”更改为“允许不太安全的应用:打开”

        【讨论】:

        • 我已经做了,但是还是不行
        • 您必须验证您的凭据或停用两步验证
        【解决方案7】:

        1.允许不太安全的应用程序(应该打开)。

        2.检查Gmail用户名和密码..

         public static void main(String[] args) {
        
                final String username = "YourMailId";
                final String password = "password";
        
                Properties prop = new Properties();
                prop.put("mail.smtp.host", "smtp.gmail.com");
                prop.put("mail.smtp.port", "587");
                prop.put("mail.smtp.auth", "true");
                prop.put("mail.smtp.starttls.enable", "true"); //TLS
        
                Session session = Session.getInstance(prop,
                        new javax.mail.Authenticator() {
                            protected PasswordAuthentication getPasswordAuthentication() {
                                return new PasswordAuthentication(username, password);
                            }
                        });
        
                try {
        
                    Message message = new MimeMessage(session);
                    message.setFrom(new InternetAddress("Tarunsunny143@gmail.com"));
                    message.setRecipients(
                            Message.RecipientType.TO,
                            InternetAddress.parse("balachandralucky2@gmail.com, to_username_b@yahoo.com")
                    );
                    message.setSubject("Testing Gmail TLS");
                    message.setText("Dear Mail Crawler,"
                            + "\n\n Please do not spam my email!");
        
                    Transport.send(message);
        
                    System.out.println("Done");
        
                } catch (MessagingException e) {
                    e.printStackTrace();
                }
            }
        
        }
        

        【讨论】:

          【解决方案8】:

          这对我有用:

          1. 登录到您发送邮件的 gmail 帐户
          2. 转到管理您的 Google 帐户 -> 安全 -> 不太安全的应用访问 -> 开启访问(不推荐)
            要么
            访问网址:
            https://www.google.com/settings/security/lesssecureapps
          3. 将“允许不太安全的应用:关闭”改为“允许不太安全的应用:打开”

          【讨论】:

          • 为我工作。谢谢
          【解决方案9】:

          登录gmail帐户,在Account ->

          点击安全 -> 关闭两步验证并开启“不太安全的应用访问”

          可能是因为上面的事情,希望对你有帮助

          【讨论】:

            【解决方案10】:

            按照以下步骤操作:

            1. 禁用防病毒软件
            2. 允许不太安全的应用开启
            3. 应该关闭两步验证。

            【讨论】:

            • 看在上帝的份上,不要禁用您的防病毒软件
            【解决方案11】:
            1. 首先确保所有属性都应定义如下:-

            mail.smtp.host=smtp.gmail.com, mail.smtp.port=25, mail.smtp.auth=true mail.smtp.starttls.enable=true

            1. 现在,确保关闭两步验证

            2. 允许不太安全的应用程序 (ON) 点击此链接:-

            https://myaccount.google.com/lesssecureapps

            1. 另外,请检查您的用户名和密码是否正确。

            【讨论】:

              【解决方案12】:

              抱歉,派对迟到了。如果您使用的是 Gmail 服务器,这些可能是您任务中的问题。

              1. Two Step Verification should be turned off
              2. Allow Less Secure App(should be turned on)
              3. 请检查您的用户名和密码。
              4. 检查代码(这是我的问题),以上三个您可以更改谷歌帮助中心和您自己最后一个我可以与您分享的经验。 您需要在传递消息之前验证邮件服务器,因为它是挑战响应系统,您通过邮件进行通信。I am sharing code snippets file you 可以参考无法通过 ctrl+K 格式化我的代码。

              【讨论】:

              • 允许不太安全的应用是这里最常见的问题
              • 开启Allow Less Secure Apps 只是我的解决方案
              • 为了加快诊断速度,发送给自己并检查收件箱。如果第 2 点 - 非 Google 发件人应用程序(如在我的情况下由 Jenkins 邮件程序调用的 JavaMail)是原因,您将看到来自 Google 的邮件说 "Someone just used your password to try to sign in to your account from a non-Google app. Google blocked them, but you should check what happened. Review your account activity to make sure no one else has access."
              • 像魅力一样工作。这里最常见的问题是“允许安全性较低的应用”设置,因为默认情况下所有 Google 帐户都关闭了该设置。
              • 第二个对我有用。如果不使用,Google 会自动关闭此设置
              【解决方案13】:

              您可能收到此错误,因为来自邮件 ID 的用户名和密码不匹配。请重新检查您的密码和邮件 ID(用户名)。可能是笔误。

              在某些情况下,Gmail 会阻止通过未经授权的外部应用程序或程序登录。 同时登录您的 gmail 帐户以检查 gmail 是否阻止通过您的 Java Mail API 程序登录您的帐户。

              如果不起作用,您可以尝试其他一些 SMTP 服务器(如 yahoo、yandex)。

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2021-08-05
                • 2023-03-22
                • 2022-08-12
                • 1970-01-01
                • 1970-01-01
                • 2016-07-05
                相关资源
                最近更新 更多