티스토리 뷰
이 글은 우리FISA 클라우드 서비스 개발자 굿프렌즈팀 `H_M`가 작성했습니다.
(굿프렌즈팀이 궁금하다면, Goodfriends의 Github wiki에 놀러와 주세요~)
현재 굿프랜즈의 프로필정보에서는 은행/계좌번호, 닉네임, 주소를 입력하는데요.
이 구성들로는 굿프랜즈의 안심거래를 이끌어내기에는 부족하다고 판단되었습니다.
그래서 빠르게 도입할 수 있고 사용자들에게 안심서비스를 제공하기 위한 방법으로 SMS 인증을 생각하게 되었습니다.
SMS API를 연동하기 위해 Naver Cloud Platform 의 Simple & Easy Notification Service를 이용하였습니다.
(네이버 클라우드 플랫폼 : https://www.ncloud.com/)
해당 서비스를 이용하기 위해 goodfriends 프로젝트를 생성해주었습니다.
SMS API를 사용하기 위해 서비스 ID, accessKey, secretKey 필요합니다.
그리고 발신번호는 네이버 클라우드 플랫폼 계정에 등록한 저의 번호로 진행하였습니다.
해당 API를 사용하기 위해 각종 필요한 패키지의 클래스들을 구성해주어 네이버 클라우드에서 가이드해준 바디값으로 요청을 진행할 것 입니다.
(네이버 SMS API: https://api.ncloud-docs.com/docs/ai-application-service-sens-smsv2)
MessagesDto 에 to, subject, content 으로 구성되어있는데, to(SMS인증을 할 사람) 값만 받도록 하였고
subject, content 값은 저희만의 서비스를 위해 sendSms 메소드에 직접 담아주었습니다.
또한, 인증번호도 서버에서 직접 난수를 생성하여 content에 담아 발신 되도록 진행하였습니다.
body 에 값을 담아 요청을 보내게 되면 문자를 송신할 수 있게 됩니다.
SMS 예시결과)
백엔드에서의 처리는 여기까지이고,
그러면 휴대폰인증을 어디서 하느냐!
굿프랜즈의 마이페이지에서 처리 할려고 합니다.
휴대폰 입력란이 있으며 인증하기 위해 인증번호 전송 버튼을 누릅니다.
그러면 위의 사진과 같이 반복적인 SMS 인증번호 전송을 불가능하게 재시도 카운트다운을 120초로 처리를 하였습니다.
인증이 완료되면 성공 팝업을 표시하고 휴대폰 번호란이 수정이 안되게 잠금 처리가 됩니다.
저희는 회원가입을 하고 프로필 등록을 할때 SMS 인증을 통해 중복으로 등록된 휴대폰이 있는지 판단하도록 하였습니다. 이로써 SMS API를 사용함으로써 휴대폰 인증도 하고 안심거래를 유도할 수 있게 되었습니다.
'backend' 카테고리의 다른 글
Set-Cookie의 보안 속성 적용기 (0) | 2023.11.21 |
---|---|
다양한 예외 처리들을 관리하기 위해 @RestControllerAdvice 도입 (0) | 2023.10.10 |
- Total
- Today
- Yesterday
- @Query
- 우리FISA
- frontend
- 네이버클라우드플랫폼
- agile
- JPQL
- goodfriends
- 굿프랜즈
- git-flow
- nativeQuery
- ci/cd
- Scrum
- 파이프라인
- 백엔드
- SMS
- Jenkins
- 개발
- 팀프로젝트
- SMS인증
- 굿프렌즈
- docker
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |