2. 용어
〮 인증 (Authentication) : 사용자 식별
〮 권한 (Authorization) : 리소스 이용권한 결정
API
Server
Authentication
Server
WWW
User
Info
Who
Access
3. 웹 (와캠/엠와이즈) 인증 방식
〮 쿠키/세션
〮 앱에는 부적합
Authentication
Server
세션유지
하이브리드 앱의 WEBVIEW 활용 => 잘 안되거나 문제가 많아서 어렵다
4. 너구리연구소 앱 인증방식
〮 Android Smart Phone UUID
〮 모바일 플랫폼 별로 상이한 코드 패턴
〮 다른 플랫폼에서는 사용 불가 (웹, 태블릿)
Authentication
Server
(1) ID/PW, UUID
(2) 인증결과
(3) UUID
(4) 승인결과
Authorization
Server
6. 프로토타입 정의
〮 너구리연구소 회원 가입
〮 로그인
〮 로그아웃
〮 리소스(컨덴츠) 사용권한 처리
ㄴ < Server 개발 환경 >
Visual Studio Express 2013 => SSL + WEB API 2 + LocalDB
< Client 개발 환경 >
Visual Studio Express 2013 => MVC 5
7. 주요 프로세스
〮 커스텀 문제 (버전업, 버그, 복잡)
〮 운영 적합성 (자료, 난이도, 효율)
소셜 로그인까지
(Google, Facebook, Twitter)
기본지원 되고 있지만...
1) Model Class 확장 작업
- 추가 속성 정의(수정) : Model, View, Controller
2) 회원 가입
- 회원가입 WEB API (ASP.NET Identity System 객체)
3) 회원 인증
- Ajax SSL 통신 (+Jquery, ID/PW)
- 로그인 성공시 클라이언트에게 Bearer Token 발급
- 클라이언트는 Bearer Token 을 Cookie 로 보관 함
4) 리소스 사용권한 허가 (컨덴츠 페이지 접근+사용)
- Ajax SSL 통신 (+Jquery, Bearer Token)
- 클라이언트가 제출한 Bearer Token 값과 서로 비교
- Token 값이 변조되거나 유효기간이 지나면 401에러
8. 대안
〮 풍부한 자료
〮 신뢰성 높은 레퍼런스
〮 비교적 낮은 진입 장벽 Authentication Server API Server
Client
DB Server