-
프로젝트 구상 ::
"클라우드 시스템을 사용할 때, 카카오톡의 PC 로그인 시 1회용 인증 서비스를 구현해서 클라우드 시스템의 보안성을
향상시켜 클라우드에 저장된 파일들을 더 안전하게 지키는 시스템과 클라우드 시스템을 구현하고자 함."
개발도구 및 환경은 [01. 설치~환경설정]에 서술.
DB와 서버 구현, MySQL에 사이트의 구현까지. 실습하였다.

해당 화면에서 회원가입의 버튼을 누르면,

다음과 같은 화면에서 회원가입을 진행할 수 있다.

이에 따라 MySQL에서 확인 가능한 저장된 데이터는 다음과 같다. 이는 models/user.js 에서 내가 설정한 컬럼들이다.
▶기능 생각하기
이제 내가 초기에 생각했던 카카오톡의 PC 1회용 로그인 시스템을 구현하기 위하여, 회원가입을 할 때,
사용자가 이 기능을 이용할 것인지에 대한 여부를 판단해야 한다.
그에 대한 값으로 seculogin을 설정했다. on/off 값을 이용할 예정이다. on인 경우 회원가입한 이메일과 비밀번호로 사이트에 로그인할 때, 추가적인 카카오톡 1회 로그인 인증 서비스를 제공하고자 한다.
off의 경우 기존과 동일하게 로그인하게 되므로, 추가적인 기능이 필요하지 않다.
▶무엇이 필요한가?
- 사용자가 카카오 인증 시스템에 대한 여부를 판단할 수 있어야 한다. (DB에서의 판단) → (2020.11.28추가) if문과 회원가입 시의 추가적인 변수 할당으로 실현 가능하다.
- 사용자가 카카오 인증 시스템을 사용한 경우, 사용자는 해당 카카오톡의 계정으로 인증을 진행하여 로그인한다. → (2020.11.28추가) 위의 if문과 추가적인 변수 할당을 이용하여, 추가적인 카카오톡 계정 인증을 요구하여 실현이 가능했다.
▶여기서의 고난과 역경은?
- 사용자가 카카오 인증 시스템을 사용하는 경우 DB에 사용자의 SNS아이디와 kakaonick의 대한 값을 저장해야한다. 이에 사용자에게 메시지 형태로 전달할 수 있어야한다.
(사실 카카오닉은 중요하지 않다.)
(1) 데이터를 추가적으로 넣는다라는 개념으로 DB에 저장할 수 있는 방안이 필요함. → (2020.11.28추가) passport와 findone 혹은 findall을 이용하여 DB에 저장된 row의 값을 특정하여 저장하는 방식을 이용한다.
(2) DB에 저장된 경우, 웹 서버에서 로그인 시도시, ON임을 판단하고 그에 따라 인증 시스템을 연결해야 한다. →(2020.11.28추가) 이것 역시 추가적인 if문과 변수 할당으로 조건을 걸어서 설정이 가능하다.
생각해보기.
▷1안) 로그인과 카카오 인증 시스템을 회원가입에서 한 번에 하지 않고, 로그인을 우선한 후, 로그인 상태에서 추가적인 인증 시스템 연결로 진행한다. ▶개인적으로 실현 가능성이 높아 보임.▷2안) 카카오톡 회원가입을 체크한 후 회원가입 버튼을 누르는 경우에 그 데이터 값은 DB에 저장되고 이에 새로운 로그인 인증 시스템 연결로 진행하여 그 값 역시 저장한다. ▶ 즉시 DB에 저장하고 카카오API 진행시 그 값을 해당하는 올바른 DB의 ID값에 저장시킬 수 있을까? ▶ 긴가민가 하다.▷3안) 대중적인 사이트에서 사용하는 알고리즘 방향으로, 선 카카오 인증을 진행한 후, 추가적인 ID값과 PW값 등을 받는 회원가입을 진행한다. ▶ 이것 역시 실현 가능성이 높아 보인다.▷카카오톡은 제 3자의 서버에서 개인에게 메시지를 전송하는 API를 제공하지 않아, 메일의 전송 예제를 통한 URL 인증 시스템을 통해 테스트를 하는 방향으로 순회한다.
'개발 > WEB' 카테고리의 다른 글
WEB_Servlet get() 이용한 아이디 비밀번호 실습 (0) 2021.09.07 JavaScript_NodeJS. Nodemailer를 이용해 메일을 보내자. (0) 2020.11.22 JavaScript_Project 기록 일지_04. DB의 원하는 row에 값을 저장하기. (20.11.28.최종수정) (0) 2020.11.19 JavaScript_Project 기록 일지_03. NodeJS KAKAO 메세지 전송 (0) 2020.11.19 JavaScript_Project 기록 일지_01. 설치~ 환경 세팅 (0) 2020.11.18 댓글 (비로그인 댓글 허용하지 않습니다.)