본문으로 건너뛰기

OTP 인증

이 문서는 BSA-JS 에서 OTP 인증을 사용하기 위한 방법을 안내합니다.

기능 설명#

아이디를 입력하지 않고 otp code를 입력하여 인증하는 구현 방법을 설명합니다.
BSA 앱에서 메인화면 => OTP 인증 을 선택하여 otp code를 생성 후
otp code를 입력하여 인증을 진행합니다.

OTP 인증 요청#

OTP 인증을 요청합니다. 사용자가 otp code를 입력하면 requestOtpCallback() 으로 API를 호출합니다. OTP 인증을 요청하면 앱으로 푸시 알림이 전달 되며, 앱을 통해 인증 성공 시 onSuccess 통해 결과가 반환됩니다.

requestOtpCallback(otpInput, successCallback, errCallback, codeSuccessCallback, codeErrCallback)

Parameter#

NameTypeDescription
otpInputElement사용자가 OTP CODE를 입력한 <input/> element

Example#

<div>  <Input /></div>
const bsa = new BSA("{Client Key}");bsa.requestOtpCallback(otpInput, (data) => {  console.log('onSuccess');  console.log('accessToken : ', data.accessToken);  console.log('refreshToken : ', data.refreshToken);}, (errorCode, errorMsg) => {  console.log('onError');  console.log('errorCode : ', errorCode);  console.log('errorCode : ', errorMsg);}, () => {  console.log('onCodeSuccess');}, (errorCode, errorMsg) => {  console.log('onCodeError');  console.log('errorCode : ', errorCode);  console.log('errorCode : ', errorMsg);});

onSuccess#

KeyTypeDescription
accessTokenStringAccess Token
refreshTokenStringRefresh Token

인증이 성공 하면 토큰이 반환 되며, 토큰은 BSA 기능 활용 시 사용 됩니다.

onError#

KeyTypeDescription
errorCodeInt에러코드
errorMsgString에러 메시지

인증 실패 시 에러코드와 에러메시지가 반환됩니다. 반환 될 수 있는 에러코드는 다음과 같습니다.

ErrorCodeDescriptionSolution
2000클라이언트 키가 잘못 된 경우발급 받은 클라이언트 키를 확인합니다.
2008가입 되어 있지 않은 사용자 인 경우BSA 가입 여부를 확인바랍니다.
3201클라이언트 연동이 되어 있지 않은 경우BSA 가입 완료 후 메뉴 => 사이트 연동을 통해 연동을 진행해주시기 바랍니다.
3301클라이언트 로그인 타입이 정해져 있지 않은 경우클라이언트 설정 오류인 경우로 관리자에게 문의바랍니다.
5001인증 시간이 만료 된 경우인증 시간이 만료 된 경우로 인증 재 요청이 필요합니다.
5005승인되지 않은 사용자승인되지 않은 사용자로 관리자에게 문의바랍니다.
5006일시 정지된 사용자일시 정지된 사용자로 관리자에게 문의바랍니다.
5007영구 정지된 사용자영구 정지된 사용자로 관리자에게 문의바랍니다.
5008탈퇴 사용자탈퇴한 사용자로 일정 기간 내에 계정 복구 기능을 통해 복구가 가능합니다.
2010인증이 진행 중인 사용자인 경우인증이 진행 중인 사용자로 상황에 따라 인증취소 후 재 인증 요청 바랍니다.
5011인증이 취소 된 경우재 인증 요청 바랍니다.
5015채널 생성 실패파라미터가 부족한 경우 발생할 수 있습니다.
지속적으로 발생하는 경우 문의바랍니다.
5017푸시 알림 전송 실패FCM 등에 문제가 발생한 경우입니다.
지속적으로 발생하는 경우 문의바랍니다.
5022검증이 실패 한 경우노드 검증이 실패 한 경우 발생 할 수 있습니다.
지속적으로 발생하는 경우 문의바랍니다.

onCodeSuccess#

otp code 검증에 성공하면 해당 함수를 호출합니다. null값 또는 생략이 가능합니다.

onCodeError#

KeyTypeDescription
errorCodeInt에러코드
errorMsgString에러 메시지

otp code 검증 실패 시 에러코드와 에러메시지가 반환됩니다. null값 또는 생략이 가능합니다.
반환 될 수 있는 에러코드는 다음과 같습니다.

ErrorCodeDescriptionSolution
2000클라이언트 키가 잘못 된 경우발급 받은 클라이언트 키를 확인합니다.
3005OTP CODE 검증에 실패할 경우OTP CODE 재 검증 요청 바랍니다.
3201클라이언트 연동이 되어 있지 않은 경우BSA 가입 완료 후 메뉴 => 사이트 연동을 통해 연동을 진행해주시기 바랍니다.

OTP 인증 취소#

OTP 인증 취소를 요청합니다. 인증 취소를 한 경우 진행 중인 인증이 취소되며
다시 재인증을 요청할 수 있습니다.

인증 취소 요청 성공 시 인증 요청의 onError5011 errorCode가 반환됩니다.

onOtpCancel(otpInput, errCallback)

Parameter#

NameTypeDescription
otpInputElement사용자가 otp code를 입력한 <input/> element

Example#

<div>  <Input /></div>
const bsa = new BSA("{Client Key}");bsa.onOtpCancel(otpInput, (errorCode, rtMsg) => {    console.log('onError');    console.log('errorCode : ', errorCode);    console.log('errorCode : ', errorMsg);});

onError#

KeyTypeDescription
errorCodeInt에러코드
errorMsgString에러 메시지

인증 취소 요청 실패 시 에러코드와 에러메시지가 반환됩니다. 반환 될 수 있는 에러코드는 다음과 같습니다.

ErrorCodeDescriptionSolution
3100가입 된 유저가 아닌 경우요청한 유저키를 확인바랍니다.
5019진행 중인 인증이 없는 경우이미 취소 된 인증이거나 해당 유저로 진행 중인 인증이 없습니다.

OTP 인증 타이머 등록#

OTP 인증 유효시간을 확인할 수 있는 Callback 을 등록합니다.
인증에 남은 시간을 확인할 수 있으며 유효 시간이 끝난 후에는 재 인증을 요청해야 합니다.

setOtpTimer(onCallBack)

Parameter#

  • none

Example#

const bsa = new BSA("{Client Key}");bsa.setOtpTimer((time) => {    console.log('onTime');    console.log('time : ' + time);});

onTime#

KeyValueDescription
timeInt인증 유효 시간

인증 유효 시간이 callback 으로 반환됩니다.


OTP 인증 상태 등록#

OTP 인증 상태 확인할 수 있는 Callback 을 등록합니다. 인증 요청 부터 완료 까지에 인증 상태를 확인할 수 있습니다.

setOtpMessage(onCallBack)

Parameter#

  • none

Example#

const bsa = new BSA("{Client Key}");bsa.setOtpMessage((message) => {    console.log('onMessage');    console.log('AuthStatus : ' + message);});

onMessage#

KeyValueDescription
messageString인증 진행 상태

인증 진행 상태가 callback 으로 반환됩니다.