등록된 사용자의 로그인을 시작하려면, 먼저 암호화된 일회용 토큰을 발급받아 복호화한 뒤 인증을 요청합니다.
1단계 — 암호화된 일회용 토큰 요청
POST /ap/rest/auth/getTokenForOneTime
응답 예시
{"result":true,"msg":"ok","code":"000","data":{"token":"NFguzOCLg5H/hOqwtfb4F2gl/AYyXLdlhZRQfJbLAJtPh0c53fj9LE1DR6dpFe4g"}}
응답 데이터
| 필드 | 설명 |
|---|---|
| token | 암호화된 일회용 토큰 |
* 토큰은 AES128(CBC, PKCS8Padding)로 암호화되어 있으며, 암호화 키와 IV는 서버 키를 사용합니다. 복호화한 토큰 값을 2단계 요청에 사용합니다.
2단계 — 인증 요청 (서비스 패스워드 발급)
POST /ap/rest/auth/getSp
요청 파라미터
| 필드 | 설명 |
|---|---|
| userId | 인증을 요청하는 계정 |
| token | 복호화한 일회용 토큰 |
| random | 인증 결과 검증용 랜덤 값 |
| sessionId | 애플리케이션 접속마다 부여되는 고유 값 |
| clientIp | 애플리케이션 서버에서 추출한 클라이언트 IP |
응답 예시
{"result":true,"msg":"OK.","code":"000.0","data":{"term":60,"pushConnectorUrl":"ws://...","pushConnectorToken":"...","servicePassword":"924824","userId":"testuser01"}}
응답 데이터
| 필드 | 설명 |
|---|---|
| term | 인증 대기 시간(초) |
| pushConnectorUrl | 푸시 요청 서버 URL |
| pushConnectorToken | 푸시 요청에 필요한 토큰 값 |
| servicePassword | 서비스 패스워드(OTP 값) |
| userId | 인증을 요청한 계정 |
오류 코드
| 필드 | 설명 |
|---|---|
| 000.1 | 알 수 없는 오류 |
| 100.6 | 잘못된 파라미터 오류 |
| 999.5 | 서버 키 오류 |
| 200.1 | 미등록 계정 |
| 200.2 | 차단된 IP에서의 접속 |
| 200.3 | 잘못된 모바일 정보 입력 |
| 200.4 | 인증기 만료 시간 초과 |
| 200.5 | 미등록 휴대폰 |
| 200.6 | 동일 계정으로 인증 시도 중 |
| 200.7 | 정지된 계정 |
응답받은 서비스 패스워드(OTP)와 남은 시간을 화면에 표시합니다. 대기 시간이 만료되거나 사용자가 앱에서 '거부'를 클릭하면 팝업으로 결과를 안내합니다.