OAuth 2.0 쿡북
도서+교보Only(교보배송)을 함께 15,000원 이상 구매 시 무료배송
15,000원 미만 시 2,500원 배송비 부과
20,000원 미만 시 2,500원 배송비 부과
15,000원 미만 시 2,500원 배송비 부과
1Box 기준 : 도서 10권
알림 신청하시면 원하시는 정보를
받아 보실 수 있습니다.
해외주문/바로드림/제휴사주문/업체배송건의 경우 1+1 증정상품이 발송되지 않습니다.
패키지
북카드
키워드 Pick
키워드 Pick 안내
관심 키워드를 주제로 다른 연관 도서를 다양하게 찾아 볼 수 있는 서비스로, 클릭 시 관심 키워드를 주제로 한 다양한 책으로 이동할 수 있습니다.
키워드는 최근 많이 찾는 순으로 정렬됩니다.
작가정보
저자(글) 아돌포 엘로이 나시멘토
저자 아돌포 엘로이 나시멘토(Adolfo Eloy Nascimento)는 Elo7의 소프트웨어 엔지니어로서 컴퓨터 과학 학사 학위를 취득했고, 1999년부터 소프트웨어 개발 업무를 수행해왔다. 2003년에 ASP, PHP4/5, 자바스크립트와 자바(때로는 루비 온 레일즈 애플리케이션의 유지 보수 작업도 수행)를 이용한 웹 애플리케이션 개발을 시작했다. 마이크로서비스 아키텍처를 이용한 애플리케이션 설계와 퍼블릭 API를 모델링하고 상호작용하기 위해 2년 전부터 OAuth 2.0을 사용하기 시작했다.
기술 애호가로서 프로그래밍 언어와 새로운 기술에 대한 것을 읽고 배우는 것을 좋아한다. 또한 새로운 애플리케이션을 만드는 것뿐만 아니라 자신이 습득한 지식을 공유하는 것도 중요하다고 믿기 때문에 개인 블로그에 글을 쓰고 브라질에 있는 자바 매거진에 기사를 쓰거나 기술 도서를 집필하고 있다.
번역 윤우빈
역자 윤우빈은 기존의 IT 기술과 새로 만들어지고 있는 최신 기술을 보안이라는 관점에서 이해하고, 새로운 기술, 비즈니스 영역의 새로운 보안 위협과 그에 대한 대응 기술에 대해 고민하며, 에이콘출판사를 통해 다양한 보안 관련 지식을 공유하고자 노력 중이다. 지금도 여전히 새로운 분야에 대한 보안 기술 연구와 다양한 보안 기술 개발을 위해 진땀 흘리고 있다.
작가의 말
OAuth 2.0은 인가를 위한 표준 프로토콜이며, 클라이언트 개발자가 웹 애플리케이션과 데스크톱 애플리케이션, 모바일 폰 등을 위한 인가 플로우를 간단히 개발할 수 있게 하는 데 초점을 맞추고 있다. OAuth 스펙 문서가 있지만 복잡하다고 생각할 수도 있다. 이 책은 간단한 예제를 통해 OAuth 2.0을 이용할 수 있도록 도움을 준다. 흥미로운 예제를 통해 다양한 애플리케이션에 대한 특정 인가 플로우를 설명하며, Spring Security를 이용하고 안드로이드 애플리케이션을 만들어 실제적인 문제를 해결할 수 있는 유용한 방법을 제공한다.
목차
- 1장. OAuth 2.0 기본
__소개
__기반 환경 준비
__클라이언트 측에서 페이스북 사용자의 연락처 읽기
__서버 측에서 페이스북 사용자의 연락처 읽기
__링크드인의 보호된 리소스에 접근
__사용자 세션에 바이딩된 구글의 보호된 리소스에 접근
2장. OAuth 2.0 프로바이더 구현
__소개
__인가 코드 그랜트 타입을 이용한 리소스 보호
__암시적 그랜트 타입 지원
__OAuth 2.0으로의 전환을 위한 리소스 소유자 패스워드 자격증명 그랜트 타입
__클라이언트 자격증명 그랜트 타입
__리프레시 토큰 지원
__토큰과 클라이언트 정보를 저장하기 위한 관계형 데이터베이스 이용
__Redis를 이용한 토큰 저장
__클라이언트 등록 구현
__중간에서 OAuth 2.0 프로바이더 분리
__공유된 데이터베이스를 이용한 토큰 유효성 검사 과정을 Gatling으로 테스트
3장. OAuth 2.0보호 API
__소개
__인가 코드 그랜트 타입을 이용하는 OAuth 2.0 클라이언트
__암시적 그랜트 타입을 이용하는 OAuth 2.0 클라이언트
__리소스 소유자 패스워드 자격증명 그랜트 타입을 이용하는 OAuth 2.0 클라이언트
__클라이언트 자격증명 그랜트 타입을 이용하는 OAuth 2.0 클라이언트
__클라이언트에서의 리프레시 토큰 관리
__RestTemplate으로 OAuth 2.0의 보호된 API에 대한 접근
4장. OAuth 2.0 프로파일
__소개
__발급된 토큰 폐기
__토큰 인트로스펙션을 이용한 원격 검증
__캐시를 이용한 원격 검증 성능 향상
__Gatling을 이용한 원격 토큰 검증에 대한 부하 테스트
__동적 클라이언트 등록
5장. JWT
__소개
__JWT 액세스 토큰 만들기
__리소스 서버에서 JWT 토큰 검증
__JWT에 사용자 정의 클레임 추가
__JWT 토큰의 비대칭 서명
__비대칭 서명된 JWT 토큰 검증
__JWT 토큰을 암호화해서 보호하기 위한 JWE
__리소스 서버에서의 JWE 사용
__OAuth 2.0 프로바이더에서 소유 증명 키 사용
__클라이언트에서 소유 증명 키 사용
6장. 인증을 위한 OpenID Connect
__소개
__구글 OpenID Connect를 통한 구글 사용자의 인증
__ID 프로바이더로부터 사용자 정보 획득
__사용자 인증을 위한 페이스북 이용
__Spring Security 5로 구글 OpenID Connect 이용
__Spring Security 5로 마이크로소프트와 구글 OpenID 프로바이더 함께 이용
7장. 모바일 클라이언트 구현
__소개
__안드로이드 개발 환경 준비
__시스템 브라우저로 인가 코드를 이용하는 안드로이드 OAuth 2.0 클라이언트 만들기
__시스템 브라우저로 암시적 그랜트 타입을 이용한 안드로이드 OAuth 2.0 클라이언트 만들기
__내장 브라우저를 이용하는 안드로이드 2.0 클라이언트 만들기
__OAuth 2 서버가 제공하는 패스워드 그랜트 타입을 이용하는 클라이언트 앱
__PKCE로 안드로이드 클라이언트 보호
__모바일 애플리케이션으로 동적 클라이언트 등록 이용
8장. 보안 취약점 방지
__소개
__리소스 서버에 대한 요청자 검증
__권한 범위 검증을 통한 리소스 서버 보호
__사용자의 리소스를 보호하기 위한 사용자 역할과 권한 범위 바인딩
__인가 코드 삽입으로부터 클라이언트 보호
__잘못된 리다이렉션으로부터 인가 서버 보호
출판사 서평
★ 이 책에서 다루는 내용 ★
■ 발급된 액세스 토큰과 리프레시 토큰을 저장하기 위해서 레디스(Redis)와 관계형 데이터베이스를 이용하는 방법
■ Spring Security를 이용하는 OAuth 2.0 프로바이더로 보호되는 리소스에 대한 액세스 방법
■ 인가 서버에 자신을 동적으로 등록하는 웹 애플리케이션 구현 방법
■ 동적 클라이언트 등록을 이용해서 모바일 클라이언트의 안전성을 향상시키는 방법
■ PKCE를 이용한 안드로이드 클라이언트 보호 방법
■ 잘못된 리다이렉션으로부터 인가 서버를 보호하는 방법
★ 이 책의 대상 독자 ★
API 보안과 OAuth 2.0에 대한 기술을 향상시키고자 하는 소프트웨어 엔지니어와 보안 전문가를 대상으로 한다. 안드로이드 모바일 애플리케이션뿐만 아니라, Spring Boot 애플리케이션을 위한 OAuth 2.0 지원을 프로그램적으로 추가하고자 하는 개발자에게도 도움을 주고자 한다. 프로그래밍 지식과 기본적인 웹 개발에 대한 이해가 필요하다. 이 책 전반에 걸쳐 Spring Security OAuth2를 이용하기 때문에 사전에 Spring 프레임워크에 대한 경험이 있다면 도움이 될 것이다.
★ 이 책의 구성 ★
1장, ‘OAuth 2.0 기본’에서는 독자가 페이스북이나 링크드인, 구글 같이 공개된 OAuth 2.0 API와 상호작용할 수 있도록 간단한 예제를 통해 OAuth 2.0의 기본을 설명한다.
2장, ‘OAuth 2.0 프로바이더 구현’에서는 OAuth 2.0 프로바이더 구현 방법을 설명하며, 인가 서버와 리소스 서버가 다른 OAuth 2.0 그랜트 타입을 고려하는 것에도 도움을 준다. 또한 다른 데이터베이스에 액세스 토큰을 저장함으로써 리프레시 토큰을 효과적으로 처리하는 방법도 설명한다.
3장, ‘OAuth 2.0 보호 API’에서는 OAuth 2.0 스펙에서 설명하는 모든 그랜트 타입과 상호작용할 수 있는 OAuth 2.0 클라이언트 애플리케이션 만드는 방법을 설명한다. 또한 클라이언트에서 리프레시 토큰을 관리하는 방법도 설명한다.
4장, ‘OAuth 2.0 프로파일’에서는 몇 가지 OAuth 2.0 프로파일과 Spring Security OAuth2를 이용해 그것을 구현하는 방법을 설명한다. 프로파일은 토큰 폐기와 토큰을 원격에서 확인할 수 있게 해주는 토큰 인트로스펙션처럼 OAuth 2.0 스펙에서 다루고 있지 않는 특정 시나리오를 처리하는 데 이용된다. 또한 원격에서 토큰을 확인할 때 캐시를 사용하는 시기와 방법에 대한 몇 가지 가이드를 제공한다.
5장, ‘JWT’에서는 OAuth 2.0 액세스 토큰으로 JWT를 사용하는 방법을 설명하며, JWT 액세스 토큰에 의해 전달되는 내용을 보호하기 위해서 서명과 암호화를 제공하는 JWS와 JWE 같은 확장된 JWT의 구현 방법을 설명한다. 또한 OAuth 2.0에서 소유 증명키를 이용해 애플리케이션의 보안성을 향상시킬 수 있는 좋은 방법도 설명한다.
6장, ‘인증을 위한 OpenID Connect’에서는 인가와 인증의 차이점, OAuth 2.0이 어떻게 인증 프로토콜을 구축하는지 설명한다. OpenID Connect의 사용 방법을 설명하기 위해 모든 예제는 OpenID Connect 프로바이더가 아닌 클라이언트 애플리케이션을 대상으로 한다.
7장, ‘모바일 클라이언트 구현’에서는 안드로이드용 OAuth 2.0 네이티브 모바일 클라이언트 구현 방법을 다룬다. 네이티브 앱을 위한 OAuth 2.0이라는 이름으로 최근에 공개된 스펙에서 기술하고 있는 몇 가지 가이드라인도 설명한다.
8장, ‘보안 취약점 방지’에서는 OAuth 2.0 생태계에서 고려해야 하는 OAuth 2.0의 주요 구성 요소를 좀 더 효과적으로 보호할 수 있는 방법을 설명한다.
★ 옮긴이의 말 ★
OAuth 2.0은 현재 광범위하게 사용되고 있는 인가(Authorization) 프로토콜이다. 상대적으로 구현이 간단할 뿐만 아니라 다양한 확장성을 제공하고 있기 때문에 많이 사용된다고 할 수 있다. 즉, 데스크톱 애플리케이션, 모바일 앱, 그리고 웹 애플리케이션 등 다양한 형태의 애플리케이션에서 인가 플로우를 간단히 개발할 수 있게 해준다.
이 책을 통해 매우 다양한 형태의 OAuth 2.0 애플리케이션과 그 확장된 기능 구현에 대해 배울 수 있다. 즉, Spring Security를 이용해 다양한 형태의 OAuth 2.0 인가 플로우뿐만 아니라 동적 클라이언트 등록, 토큰 인트로스펙션, PKCE, JWT 액세스 토큰, OpenID Connect 같은 확장된 주제와 기능을 어떻게 구현하면 되는지 예제 코드를 기반으로 실질적으로 가이드한다. 또한 OAuth 2.0 클라이언트와 서버 간에 발생할 수 있는 보안 취약점과 그것을 방지하기 위한 방법을 제시한다.
OAuth 2.0은 엄밀히 말하면 인증(Authentication) 프로토콜이 아닌 인가 프로토콜이기 때문에 인증 프로토콜이 추가로 필요한 애플리케이션인 경우 OAuth 2.0을 확장해서 인증을 구현하거나 별도의 인증 프로토콜을 구현하는 데 대해 좀 더 깊이 생각할 수 있는 계기가 되길 희망한다.
기본정보
ISBN | 9791161752211 | ||
---|---|---|---|
발행(출시)일자 | 2018년 10월 31일 | ||
쪽수 | 524쪽 | ||
크기 |
190 * 235
* 34
mm
/ 1153 g
|
||
총권수 | 1권 | ||
시리즈명 |
에이콘 해킹과 보안 시리즈
|
||
원서명/저자명 | Oauth 2.0 Cookbook/Adolfo Eloy Nascimento |
Klover
e교환권은 적립 일로부터 180일 동안 사용 가능합니다.
리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 리뷰 종류별로 구매한 아이디당 한 상품에 최초 1회 작성 건들에 대해서만 제공됩니다.
판매가 1,000원 미만 도서의 경우 리워드 지급 대상에서 제외됩니다.
일부 타인의 권리를 침해하거나 불편을 끼치는 것을 방지하기 위해 아래에 해당하는 Klover 리뷰는 별도의 통보 없이 삭제될 수 있습니다.
- 도서나 타인에 대해 근거 없이 비방을 하거나 타인의 명예를 훼손할 수 있는 리뷰
- 도서와 무관한 내용의 리뷰
- 인신공격이나 욕설, 비속어, 혐오발언이 개재된 리뷰
- 의성어나 의태어 등 내용의 의미가 없는 리뷰
리뷰는 1인이 중복으로 작성하실 수는 있지만, 평점계산은 가장 최근에 남긴 1건의 리뷰만 반영됩니다.
구매 후 리뷰 작성 시, e교환권 200원 적립
문장수집
e교환권은 적립 일로부터 180일 동안 사용 가능합니다. 리워드는 작성 후 다음 날 제공되며, 발송 전 작성 시 발송 완료 후 익일 제공됩니다.
리워드는 한 상품에 최초 1회만 제공됩니다.
주문취소/반품/절판/품절 시 리워드 대상에서 제외됩니다.
구매 후 리뷰 작성 시, e교환권 100원 적립