Google OAuth 인증을 이용한 애플리케이션 개발

구글 oAuth2 인증을 이용하는 웹 애플리케이션을 개발하려고 한다. oAuth2를 이용하는 이유는 아래와 같다. 유저는 각 서비스 별로 ID/Password 방식으로 로그인 하는 것을 싫어한다. 그 많은 아이디 패스워드를 어떻게 기억하나. 서비스 제공자 입장에서는 구글, 페이스북, 카카오, 네이버의 유저들을 "원 버튼 클릭으로" 서비스를 사용 하도록 ...

Atlassian crowd를 이용한 SSO

Atlassian Crowd는 Jira, Confluence, Bitbucket 등을 통합운용하기 위한 SSO(Single Sign-On) 솔류션이다. Atlassian 제품외에도 GitLab, nexus3와 같은 솔류션을 통합 할 수도 있다. Crowd SSO를 지원하지 않는 애플리케이션이라면 Crowd API를 이용해서 직접 개발해도 된다. 물론 Act...

NginX Password Authentication 설정

웹 서버를 설정할 때 종종 액세스 자체를 제한해야 하는 경우가 있다. 물론 많은 웹 애플리케이션들이 독자적인 인증/권한 관리 시스템을 제공한다. 하지만 그러한 애플리케이션을 이용 할 수 없거나 "그냥 간단하게 웹 서버가 제공하는 기능을 이용해서" 접근제어를 하고 싶을 때가 있다. 회사 내부에서 사용하는 관리자 페이지가 이런 경우다. Nginx 웹 서버를 이...

Naver oAuth2 로그인

oAuth2는 외부 서비스에게 자신의 자원을 이용 할 수 있도록 인증과 권한을 관리해주는 시스템이다. 페이스북, 구글, 다음, 네이버등의 거대 인터넷회사들은 oAuth2를 이용해서 자신들이 가지고 있는 자원들을 이용할 수 있도록 허가하고 있다. 자세한 내용은 문서를 참고하자. 여기에서는 네이버의 oAuth2를 이용해서 네이버의 자원을 사용하는 방법에 대해서...

JWT

는 단순하고 이해하기 쉬운 프로토콜이다. 대충 읽어도 이게 뭐하는 녀석인지 감을 잡을 수 있을 정도로 쉽다. 1요청 1응답 이로 직관적이고, 때문에 응용 프로그램을 만들기도 쉽다. 웹 브라우저를 비롯해서 수많은 지원 애플리케이션과 라이브러리들이 차고 넘친다.HTTP는 연결을 유지하지 않는다. 각 요청은 서로 독립적이다. 따라서 상태정보를 유지 할 수가 없다...

디바이스 인증

디바이스를 인증하기 위한 방법을 고민한다. 이 방법은 아래의 조건을 만족해야 한다. 해당 디바이스가 유저의 것임을 인증 할 수 있어야 한다. 인증 정보는 안전하게 보관할 수 있어야 한다. 인증 정보는 주기적으로 갱신되야 하며, 이 과정은 자동으로 이루어져야 한다. 인증정보가 누출 될 수 있을 것이다. 누출될 경우 인지 할 수 있어야 하며, 초기화 및 복구를...

oAuth2에 대하여

oAuth(이하 oAuth는 oAuth2를 의미한다.)는 외부 서비스(3rd party)로 하여금 자신이 가지고 있는 자원에 대한 사용을 허용하기 위한 범용인증 표준이다. 여기에서 자원이라 함은 서비스가 가지고 있는 모든 것이다. 예를 들어 네이버라면 유저정보, 네이버가 가지고 있는 이미지, 음악, 위치정보, 블로그, 메일, 인공지능 등 모든 것을 의미한다...