Spring boot Gmail 연동하여 stmp로 메일보내기
2024. 8. 14. 17:12ㆍJava/Spring Boot
Maven
<!-- https://mvnrepository.com/artifact/javax.mail/javax.mail-api -->
<dependency>
<groupId>javax.mail</groupId>
<artifactId>javax.mail-api</artifactId>
<version>1.6.2</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.sun.mail/javax.mail -->
<dependency>
<groupId>com.sun.mail</groupId>
<artifactId>javax.mail</artifactId>
<version>1.6.2</version>
</dependency>
Properties 설정
Properties props = System.getProperties();
# 공통
props.put("mail.smtp.host", "smtp.gmail.com");
props.put("mail.smtp.ssl.trust", "smtp.gmail.com"); // "*"도 가능
# ssl인 경우
props.put("mail.smtp.port", 465);
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.ssl.enable", "true");
# tls인 경우
props.put("mail.smtp.port", 587);
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.starttls.enable", "true");
props.put("mail.smtp.ssl.protocols", "TLSv1.2"); // 지원하는 TLS 다 가능
javax.mail.AuthenticationFailedException: 535-5.7.8 Username and Password not accepted. For more information
'보안 수준이 낮은 앱 액세스' 액세스가 거부되어서 발생한 에러
App password를 설정해줘야 함
그러기 위해서는 2단계 인증이 허용되어 있어야 함
계정 > 보안 > 2단계 인증 > 하단의 '앱 비밀번호' 메뉴
'앱 비밀번호' 메뉴가 없는 경우, 계정 상단의 검색에서 '앱 비밀번호' 검색
사용할 앱 이름 등록하고, 핸드폰 인증하면 비밀번호가 생성됨
'Java > Spring Boot' 카테고리의 다른 글
FastAPI에서 이미지 가져오기 (0) | 2024.10.19 |
---|---|
Spring boot mapping 설정 (0) | 2024.10.01 |
Spring boot application.yml 변수 처리 (0) | 2024.08.14 |
Spring boot static method에서 @Autowired field를 호출해야 하는 경우 (0) | 2024.08.13 |
Spring boot 정적 파일 위치 셋팅 (0) | 2024.08.11 |