2017-01-14 5 views
0

자동화 된 이메일을 보내야하는 Java 응용 프로그램을 구축 중입니다. 비공개 입찰, 낙찰 또는 경매가 끝나면 사용자에게 이메일을 보내고 싶습니다.JAVA MAIL을 사용하여 Gmail에서 SMTP를 사용하여 인증 할 때 오류가 발생했습니다.

저는 JAVA MAIL을 사용하여 프로그래밍 방식으로 SMTP를 통해 Gmail 전자 메일 계정에서 전자 메일을 사용자에게 전송하는 방법을 실험했습니다.

나는 다음과 같은 특성을 가진 세션을 만든 :는 Gmail의 SMTP 서버에 연결을 시도 할 때이 그러나 다음과 같은 오류를 제공

mailProps.put("mail.transport.protocol", "smtp"); 
mailProps.put("mail.host", "smtp.gmail.com"); 
mailProps.put("mail.from", "[email protected]"); 
mailProps.put("mail.smtp.starttls.enable", "true"); 
mailProps.put("mail.smtp.port", "587"); 
mailProps.put("mail.smtp.auth", "true"); 

을 :

2017-01-14T15:10:00.437+0000|Info: DEBUG SMTP: Attempt to authenticate using mechanisms: LOGIN PLAIN DIGEST-MD5 NTLM 
2017-01-14T15:10:00.437+0000|Info: DEBUG SMTP: AUTH LOGIN command trace suppressed 
2017-01-14T15:10:00.688+0000|Info: DEBUG SMTP: AUTH LOGIN failed 
534-5.7.14 <https://accounts.google.com/signin/continue?sarp=1&scc=1&plt=AKgnsbuw 
534-5.7.14 EfaT2fDb2sjOrLupYNLlyOHb9lE38eDaz5aUiuBq92gl3 
534-5.7.14 kZTEQkua_PZIUyxIdz49T58PTKSKOyzdqCX0gkcSFz6uz-lh 
534-5.7.14 33n4s01a1H4jmxgJcm9tU-re9mmzW_YRno-F6DkwnVJKJVSVwYnMzxmwBE 
534-5.7.14 EQrJwrflGIGvyv_ShBDkHLFwGrzf0> Please log in via your web browser and 
534-5.7.14 then try again. 
534-5.7.14 Learn more at 
534 5.7.14 https://support.google.com/mail/answer/78754 c202sm13382879wmd.10 - gsmtp 

오류의 링크 '보안 수준이 낮은 앱 허용 : 2 단계 인증을 사용하지 않는 경우 보안 수준이 낮은 앱이 계정에 액세스하도록 허용해야 할 수도 있습니다.'라는 내용의 코드가 있습니다. 또한 이것이 내 계정의 보안을 약하게 만들 것이라고 말하면서 그렇게하지 않으려합니다.

2 단계 인증을 사용해야합니까? 그렇다면 누군가가 설명 된 리소스를 가리킬 수 있습니까?

또한 Gmail을 사용하여 SMTP를 통해 이메일을 보내는 데 제한이 있습니다. 이 방법이 Java 응용 프로그램에서 알림 전자 메일을 보내는 데 사용할 적절한 유형의 접근 방법인지 궁금합니다. 신뢰할 수있는 이메일 발신자가되고 제한을 늘릴 수있는 방법이 있습니까? 또는 여기에 잘못된 트랙 사전에 모두

감사합니다 ...

답변

0

귀하의 질문에 대답 할 수이 링크 https://support.google.com/accounts/answer/185833에 I를 생각합니다. "비밀번호 생성 및 앱 생성 방법"섹션을 참조하십시오. 그런 다음 "앱"을 선택하고 Gmail, 드라이브 등을 말한 다음 Java 응용 프로그램에서 Gmail을 보내고받는 데 사용할 "앱 비밀번호"를 생성합니다.