aws ses 이메일 보내기 받기 송신 수신
TRANSCRIPT
---------- 1
AWS SES 로이메일보내기연습
https://fb.com/me.adunhansahttps://twitter.com/arahansahttp://adunhansa.tistory.com/
ABOUT
CONTACT
SOURCE
1
1. 작성자소개 2-----------------------
- - ------------------------------------------평소정리를즐겨합니다. 한때
동영상강좌도
만들다보니.. 비실명과만화캐릭터를쓰네요
양해부탁드립니다ㅎㅎ
알아본 것들 3
- AWS SES 의설정• 도메인간의설정• 테스트이메일• 자바이메일코드• AWS Credential 설정• 보내지나?
개요 4
• 최근에어쩌다보니인프라&클라우드서비스류들에관심이많이생기게되었습니다...
• 이메일을보낼일이생겼었는데, 이메일을보내는법은많지만그중하나를골라서했던작업을정리가 안된채로 기록합니다... 잘못된것이있다면얘기해주세요~
• 초초보AWS 입문자아라한사의, 그냥의식의흐름대로적습니다.ㅎㅎ
다 적고 나서 추가한 내용 5
• 다 적고 나니…한글 문서가 있다는 걸 뒤늦께 깨달았다.(털썩).. https://docs.aws.amazon.com/ko_kr/ses/latest/DeveloperGuide/Welcome.html
• 그래도 정리하면서 본 내용이 아까워서 적는다.
도메인을사자! 6
• 우선도메인을사겠습니다. 알아본도메인업체로는 1) GODADDY, 2) FREENOM 3) 호스팅케이알이있었는데
GODADDY 는장기적으로볼때비싼것같고, FREENOM(http://www.freenom.com/) 은 tk로끝나는도메인을공짜로살수있는데이슬라이드를적기전에메일설정실패를해서 .. 패쓰(해보실분은해보셔도됩니다)
• 그래서세번째로호스팅케이알로고르게되었습니다. 도메인사는과정은생략합니다.
그러면 EC2를생성해보자. 그전에!
7
• EC2를생성하는과정은너무뻔하니..이또한생략합니다. http://pyrasis.com/aws.html를보시면됩니다. 단 !
• 아이메일인증도여기를봅시다.http://pyrasis.com/book/TheArtOfAmazonWebServices/Chapter27/01
여기서중요한점은 EC2 인스턴스를만들기전에 IAM 에서 SES를위한ROLE을만들어서미리설정을하겠습니다. 해당관련내용은여기 (http://wildpup.cafe24.com/archives/673) 에잘나타나져있습니다. 해당블로그에나온대로 Roles 와 Users를만들어줬습니다
자그럼 EC2생성을...! 하기전 8
• 아차, 근데저의경우는블로그들과뭔가다른것이.. EC2를생성하면서 SES가설정된 ROLE을지정을해도이메일이가지지가않았습니다. 알고보니 Users 에서 key/secret을생성해야했던것이죠!! 그리고이미삽질이다끝났으니적지만여기서Attach Policy 에서 SES policy를추가해줬습니다.
테스트부터.. 9
• 자그럼자바로 SES보내는코드를구해봅니다. 검색하니금방나옵니다.https://docs.aws.amazon.com/ko_kr/ses/latest/DeveloperGuide/send-using-sdk-java.html
• 하지만그대로실행해보면뭔가문제가발생합니다. Key 같은것이없다고나옵니다. 소스를보면설정하는곳이없습니다.. 후..^^; 저는맨첨에 EC2를만들면서 role설정을하면자동으로찾는줄알고삽질을ㅠㅠ게다가문서를대충읽고저 client 객체에는생성자아규먼트가필요가없는것인가!! 하고생각을ㅠㅠ..아무튼. . 이왕본김에소스의주석에나와있는링크를조금자세히보겠습니다.
AWS Credintials 를알게되었다! 10
• 아그러니까.. SDK에 credentials을줘야하는데여러가지방법이있다이이야기로군요… Root account aws access를사용하는대신에IamUsers 를사용하기를권장하고또기본 provider chain 을사용하기를권장하는군요..
음방법이여러갠데몇가지만;; 11
• Environment Variable 에등록을해보겠습니다;
env 등록해보기 -> 실패ㅠ 12
• env 로등록해봤는데… 잘안됐다-_-; 다른방법도많으니굳이 recommend 가아니더라도다른방법을해보자.
Recommend 는아니지만, 직접credential을넣어줘보자; 13
• 소스주석에나온를잠깐대충읽어서맨처음에는이메일클라이언트생성자에아무것도못넣는줄알았는데.. API 문서를보니그건또아니었다.
14
• 아..흠… 아무튼잠깐테스트코드에액세스키와시크릿키를적어주고( IAMUsers에서 받았음) 돌려보면성공.. (단 인증받지 않은 이메일로 보내는 경우에는 직접 아마존에 case를 문의해야합니다)
이야기거리들 15
• Mvnrepository+ 스프링?
• Credential : https://blogs.aws.amazon.com/security/post/Tx3D6U6WSFGOK2H/A-New-and-Standardized-Way-to-Manage-Credentials-in-the-AWS-SDKs
• Api docs : http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/simpleemail/AmazonSimpleEmailServiceClient.html
• http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/AWSCredentials.html
Aws key 생성 :http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSGettingStartedGuide/AWSCredentials.html=
Amazon SES 설정 16
뭐랄까소스파보기가아니라인프라같은쪽은보는거라-_- PPT 에서는쉽게됐는데막상해보니이상하게삽질한점도좀많았다… (첨에서버에서만되는줄알고서버에올려서테스트를한다던가..;;먼산)
아무튼로컬에서도잘되니.. 빠른테스트를통해빠른구현!!
SES 메일수신 17
• 으로끝내려고했는데-_- 메일을보내면응답을받아야한다;;이왕본거메일수신까지알아보자!
• 구글에서 검색하면 친절한(?) AWS안내 페이지가 나온다.
18
• 아…근데 찾아보니… 한글 문서가 있었다. • (털썩)
https://docs.aws.amazon.com/ko_kr/ses/latest/DeveloperGuide/receiving-email-concepts.html
• 찾아보면서 따라하면 그대로 메일도 온다.. 아 근데 내용이 암호화된건가.. 제목만 원문으로 보인다.. 이 이상은 나중에 하는 걸로;;
한가지 더.. 19
• 이메일 많이 보낼때는 SES가 안 좋다고… • 광복절 주말의 정리는 여기까지… 코딩하러 이만..
20
THANK YOU !즐거운개발됩시다.아라한사올림
arahansa------
------
페북 : https://fb.com/me.adunhansa트위터 : https://twitter.com/arahansa블로그: http://adunhansa.tistory.com/