티스토리 뷰

반응형

이번에 서비스를 개발을 하면서 휴대폰 인증을 도입하게 되었습니다.

 

개발을 해보면서 페이스북 연동, 이메일 인증, Nice를 이용한 인증 등등을 이용해봤는데

SMS를 이용한 인증 같은 거를 하려면 SMS 호스팅이나 그런 기능을 서비스하는 업체와 제휴를 맺어 한 건당 10~60 가량의 비용이 드는 걸로

 

하지만 현재 제가 있는 회사는 스타트 업이며, 서비스를 론칭하더라도 바로 유저가 증가한다는 보장이 없기에 이러한 서비스를 이용하기보다는 가능하면 무료 서비스를 이용해야 합니다.

 

그렇다면 휴대폰 인증을 위한 방법들이 뭐가 있는지 찾아봐야 하는데 Android, IOS 두 플랫폼에서 사용할 수 있는 서비스를 찾아야 합니다.

 

1. Google Retriever API (이동)

 

SMS Retriever API를 사용하면 사용자가 수동으로 인증 코드를 입력할 추가 앱 권한 없이도 Android 앱에서 SMS 기반 사용자 확인을 자동으로 수행할 수 있습니다.

 

 

Retriever API를 이용하여 자사 서버에 요청을 하고 Retriever에서 요청한 규격의 SMS 데이터 메시지를 받으면

Google Play 서비스는 앱 해시를 사용하여 메시지가 앱용임을 확인하고 SMS Retriever API를 통해 앱에 메시지 텍스트를 제공합니다.

그다음 자사 서버의 로직을 거쳐 인증이 되는 과정인데요. 여기서 SMS 데이터 메시지는 다음과 같은 Rule이 있습니다.

 

  • 140 바이트 이하
  • <#>로 시작
  • 클라이언트가 서버로 다시 보내서 확인 절차를 완료하는 일회성 코드를 포함합니다 (일회성 코드 생성 참조 ).
  • 앱을 식별하는 11 자의 해시 문자열로 끝납니다.

예를 들면 다음과 같아요.

<#> ExampleApp 코드 : 123ABC78
FA + 9qCX9VSu

 

진짜 괜찮은 방법의 서비스입니다. 하지만 IOS에서는 지원이 안돼서 패스....

 

 

2. Firebase (이동)

 

 

Google에서 서비스 중인 Firebase입니다.

여러 가지 기능들이 있는데 제가 필요한 기능은 SMS를 이용한 휴대번호 인증인데 이 기능을 위해서 Friesbase를 이용하기에는 무료는 한 달에 10,000건 무료, 유료는 건당 0.06 달러인데 대략 70 원 정도면 매우 비싸죠...

여러 가지 기능을 사용한다면 이용해 볼 수 있으나, 인증만을 위한 FireBase는 Pass

 

3. Account Kit (이동)

 

마지막으로 찾은 대안입니다.

Facebook에서도 이러한 서비스를 제공하고 있는데요. Account Kit이라는 서비스입니다!

예전에 페이스북 로그인을 구현을 하면서 개발 페이지에서 봤었는데 이번에 보게 알아보게 되네요.

그리고 무엇보다 Android, IOS에서 둘 다 구현이 가능하며 무료로 사용하기에는 다음과 같은 제약이 있습니다!

 

19. Account Kit

  1. Facebook 기술 설명서에 명시적으로 허용된 경우를 제외하고 Account Kit 사용자 인터페이스의 요소를 가리거나 수정하지 마세요.

  2. 사용자가 이메일 주소 또는 전화번호를 사용하여 로그인할 경우 데이터 사용에는 개인정보처리방침과 모든 관련 법률 또는 규정이 적용됩니다.

  3. 월간 SMS 수가 10만 회를 넘는 경우 특별 조항이 적용될 수 있습니다.

  4. 이메일 주소 또는 전화번호를 사용하여 로그인한 사용자가 자신의 계정을 삭제하거나 해당 계정을 삭제하도록 요청할 경우 삭제 API를 통해 Facebook에 알려야 합니다.

  5. Account Kit 서비스에 대한 액세스 권한이 제거된 경우 사용자가 Account Kit 서비스를 통해 제공한 계정 데이터와 회원님이 기본 설정 API를 통해 Facebook에 저장한 데이터를 30일 동안 요청할 수 있습니다. 법률에 따라 금지되는 경우를 제외하고 Facebook은 이 정보를 제공합니다.

이러한 제약을 지킨다면 스타트 업에서 사용하기에는 이만한 서비스가 없는거 같습니다!

Oauth2 방식의 인증방식을 사용하며 인증시 생성되는 Access Token은 기존 FB로그인의 Access Token과 똑같아서 이해하기 한층 더 쉬울거 같아 저에게는 최고의 방법 인거 같습니다!

 

그래서 이번에는 Facebook Account Kit을 이용하여 휴대번호 인증을 구현해볼 예정입니다!

 

2019-09-13 추가

Facebook Account Kit을 이용해 휴대폰 인증을 하려 했으나, Facebook이 Data를 수집해 간다는 글을 읽고

결국 가비와 SMS를 계약을 해 직접 휴대폰 인증 로직을 만들었습니다.

 

개인 프로젝트나, Data 수집을 해도 상관 없는 분들은 이용하셔도 괜찮을 듯 합니다!

반응형

'기타 > 기타 글들' 카테고리의 다른 글

우분투에서 카톡설치  (0) 2020.04.12
Redis 일괄 삭제  (0) 2019.03.14
powershell 벨 소리 끄기  (0) 2018.12.17
UX 와 UI의 차이  (0) 2018.12.11
AR이란?  (0) 2018.12.05
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
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 31
글 보관함