HOME > 상세정보

상세정보

OAuth 2.0 쿡북 : Spring Security를 이용한 OAuth 애플리케이션 개발

OAuth 2.0 쿡북 : Spring Security를 이용한 OAuth 애플리케이션 개발 (1회 대출)

자료유형
단행본
개인저자
Nascimento, Adolfo Eloy 윤우빈, 역
서명 / 저자사항
OAuth 2.0 쿡북 : Spring Security를 이용한 OAuth 애플리케이션 개발 / 아돌포 엘로이 나시멘토 지음 ; 윤우빈 옮김
발행사항
서울 :   에이콘,   2018  
형태사항
522 p. : 삽화 ; 24 cm
총서사항
Acron+Packt technical book
원표제
OAuth 2.0 cookbook : protect your web applications using Spring security
ISBN
9791161752211 9788960772106 (Set)
일반주기
색인수록  
OAuth = Open Authorization  
일반주제명
Application program interfaces (Computer software)
000 00000cam c2200205 c 4500
001 000046056482
005 20201120093240
007 ta
008 201120s2018 ulka 001c kor
020 ▼a 9791161752211 ▼g 94000
020 1 ▼a 9788960772106 (Set)
035 ▼a (KERIS)BIB000014978791
040 ▼a 222001 ▼c 222001 ▼d 211009
041 1 ▼a kor ▼h eng
082 0 4 ▼a 005.8 ▼a 005.133 ▼2 23
085 ▼a 005.8 ▼2 DDCK
090 ▼a 005.8 ▼b 2018z20
100 1 ▼a Nascimento, Adolfo Eloy
245 1 0 ▼a OAuth 2.0 쿡북 : ▼b Spring Security를 이용한 OAuth 애플리케이션 개발 / ▼d 아돌포 엘로이 나시멘토 지음 ; ▼e 윤우빈 옮김
246 1 9 ▼a OAuth 2.0 cookbook : ▼b protect your web applications using Spring security
260 ▼a 서울 : ▼b 에이콘, ▼c 2018
300 ▼a 522 p. : ▼b 삽화 ; ▼c 24 cm
440 0 0 ▼a Acron+Packt technical book
500 ▼a 색인수록
500 ▼a OAuth = Open Authorization
630 0 0 ▼a Spring (Software framework)
650 0 ▼a Application program interfaces (Computer software)
700 1 ▼a 윤우빈, ▼e
900 1 0 ▼a 나시멘토, 아돌포 엘로이, ▼e
945 ▼a KLPA

소장정보

No. 소장처 청구기호 등록번호 도서상태 반납예정일 예약 서비스
No. 1 소장처 중앙도서관/제2자료실(3층)/ 청구기호 005.8 2018z20 등록번호 111836761 도서상태 대출중 반납예정일 2021-07-02 예약 예약가능 R 서비스 M

컨텐츠정보

책소개

Spring Security를 이용해 실질적으로 OAuth 2.0 애플리케이션을 구현하는 데 초점 맞추고 있다. 기본적인 형태의 OAuth 2.0 애플리케이션 구현뿐만 아니라 동적 클라이언트 등록, 토큰 인트로스펙션, PKCE, JWT 액세스 토큰, OpenID Connect와 같은 다양하고 확장된 주제에 대해 구체적인 구현 가이드를 제시한다.

★ 이 책에서 다루는 내용 ★

■ 발급된 액세스 토큰과 리프레시 토큰을 저장하기 위해서 레디스(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의 주요 구성 요소를 좀 더 효과적으로 보호할 수 있는 방법을 설명한다.


정보제공 : Aladin

저자소개

아돌포 엘로이 나시멘토(지은이)

Elo7의 소프트웨어 엔지니어로서 컴퓨터 과학 학사 학위를 취득했고, 1999년부터 소프트웨어 개발 업무를 수행해왔다. 2003년에 ASP, PHP4/5, 자바스크립트와 자바(때로는 루비 온 레일즈 애플리케이션의 유지 보수 작업도 수행)를 이용한 웹 애플리케이션 개발을 시작했다. 마이크로서비스 아키텍처를 이용한 애플리케이션 설계와 퍼블릭 API를 모델링하고 상호작용하기 위해 2년 전부터 OAuth 2.0을 사용하기 시작했다. 기술 애호가로서 프로그래밍 언어와 새로운 기술에 대한 것을 읽고 배우는 것을 좋아한다. 또한 새로운 애플리케이션을 만드는 것뿐만 아니라 자신이 습득한 지식을 공유하는 것도 중요하다고 믿기 때문에 개인 블로그에 글을 쓰고 브라질에 있는 자바 매거진에 기사를 쓰거나 기술 도서를 집필하고 있다.

윤우빈(옮긴이)

기존의 IT 기술과 새로 만들어지고 있는 최신 기술을 보안이라는 관점에서 이해하고, 새로운 기술, 비즈니스 영역의 새로운 보안 위협과 그에 대한 대응 기술에 대해 고민하며, 에이콘출판사를 통해 다양한 보안 관련 지식을 공유하고자 노력하고 있다. 지금도 여전히 새로운 분야에 대한 보안 기술 연구와 다양한 보안 기술 개발을 위해 진땀 흘리고 있다.

정보제공 : Aladin

목차

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장. 보안 취약점 방지
__소개
__리소스 서버에 대한 요청자 검증
__권한 범위 검증을 통한 리소스 서버 보호
__사용자의 리소스를 보호하기 위한 사용자 역할과 권한 범위 바인딩
__인가 코드 삽입으로부터 클라이언트 보호
__잘못된 리다이렉션으로부터 인가 서버 보호

관련분야 신착자료