장바구니 담기 close

장바구니에 상품을 담았습니다.

Keycloak 모던 애플리케이션을 위한 ID 및 접근 관리

Keycloak 모던 애플리케이션을 위한 ID 및 접근 관리

  • 스티안 토르거센
  • |
  • 에이콘출판
  • |
  • 2023-09-26 출간
  • |
  • 412페이지
  • |
  • 188 X 235 X 23mm
  • |
  • ISBN 9791161757865
판매가

35,000원

즉시할인가

31,500

배송비

무료배송

(제주/도서산간 배송 추가비용:3,000원)

수량
+ -
총주문금액
31,500

※ 스프링제본 상품은 반품/교환/환불이 불가능하므로 신중하게 선택하여 주시기 바랍니다.

출판사서평

◈ 옮긴이의 말 ◈
클라우드와 AI 관련 산업이 발전하면서 보안의 중요성은 더욱 커지고 있다. 이제는 대부분의 소프트웨어와 애플리케이션이 온라인에 연결돼 있으며 인터넷에 연결된 모든 사용자가 자유롭게 접근할 수 있다. 이러한 IT 환경의 변화로 인해 사용자를 인증하고 다양한 리소스에 대한 접근 권한을 관리하는 역할은 보안의 핵심적인 역할을 수행하게 됐으며 모든 애플리케이션은 사용자의 ID와 접근을 관리하기 위한 도구가 필요해졌다. Keycloak은 이러한 ID 및 접근 관리 소프트웨어 분야에서 가장 강력한 커뮤니티를 갖춘 오픈소스 애플리케이션이다(동일한 기능을 제공하는 Auth0 및 Okta는 유료이다). Keycloak은 다양한 인증 프로토콜과 LDAP 또는 액티브 디렉토리와 같은 데이터베이스를 지원한다. 또한 구글 및 페이스북과 소셜 ID 제공자를 지원하기 때문에 소셜 로그인을 사용하고자 하는 사용자에게 매우 유용하다. 마지막으로, 웹 기반의 GUI와 SSO 기능까지 갖추고 있다. 기업의 보안 관리 업무에서 IAM(ID 및 접근 관리) 기능은 이제 필수이다. Auth0와 Okta와 같은 유료 솔루션 도입을 고민해본 독자라면, 오픈소스 IAM 솔루션으로 Keycloak을 고려해 볼 수 있다.

목차

1부. Keycloak 시작하기

1장. Keycloak 시작하기
__기술 요구 사항
__Keycloak 소개
__Keycloak 설치 및 실행
____도커에서 Keycloak 실행
____OpenJDK를 통한 Keycloak 설치 및 실행
__Keycloak 관리 및 계정 콘솔 활용
____Keycloak 관리자 콘솔 시작하기
____Keycloak 계정 콘솔 시작하기
__요약
__질문

2장. 애플리케이션 보안 설정
__기술 요구 사항
__샘플 애플리케이션 이해
__애플리케이션 실행
__애플리케이션에 로그인하기
__백엔드 REST API 안전하게 호출하기
__요약
__질문

2부. Keycloak을 통한 애플리케이션 보안

3장. 간략한 표준 소개
__OAuth 2.0을 통한 애플리케이션 접근 권한 인가
__OpenID Connect를 통한 사용자 인증
__JWT를 토큰으로 활용
__SAML 2.0이 여전히 중요한 이유
__요약
__질문

4장. OpenID Connect를 활용한 사용자 인증
__기술 요구 사항
__OpenID Connect playground 실행
__검색 엔드포인트 이해
__사용자 인증
__ID 토큰 이해하기
____사용자 프로파일 업데이트
____사용자 정의 속성 추가
____ID 토큰에 역할 추가
__UserInfo 엔드포인트 호출
__사용자 로그아웃 처리
____로그아웃 시작
____ID 및 접근 토큰 만료 활용
____OIDC 세션 관리 활용
____OIDC 백-채널 로그아웃 활용
____OIDC 프론트-채널 로그아웃 활용
____로그아웃은 어떻게 처리해야 하는가?
__요약
__질문
__참고문헌

5장. OAuth 2.0을 활용한 접근 권한 인가
__기술 요구 사항
__OAuth 2.0 플레이그라운드 실행
__접근 토큰 획득
__사용자 동의 요청
____역할을 사용해 토큰 액세스 제한하기
____토큰 접근을 제한하기 위한 범위 활용
__접근 토큰 검증
__요약
__질문
__참고문헌

6장. 다양한 애플리케이션 유형 보안
__기술 요구 사항
__내부 및 외부 애플리케이션 이해
__웹 애플리케이션 보호
____서버 사이드 웹 애플리케이션 보호
____전용 REST API가 포함된 SPA 보호
____중개 REST API를 사용하는 SPA 보호
____외부 REST API가 포함된 SPA 보호
__네이티브 및 모바일 애플리케이션 보호
__REST API 및 서비스 보호
__요약
__질문
__참고문헌

7장. Keycloak과 애플리케이션 통합
__기술 요구 사항
__통합 아키텍처 선택
__통합 옵션 선택
__Golang 애플리케이션 통합
____Golang 클라이언트 설정
__자바 애플리케이션 통합
____Quarkus 사용
__Creating a Quarkus resource server
____SpringBoot 사용
____Keycloak 어댑터 활용
__자바스크립트 애플리케이션 통합
__Node.js 애플리케이션 통합
____Node.js 클라이언트 생성
____Node.js 리소스 서버 생성
__파이썬 애플리케이션 통합
____파이썬 클라이언트 생성
____파이썬 리소스 서버 생성
__리버스 프록시 활용
__자체 통합 코드 구현을 권장하지 않음
__요약
__질문
__참고문헌

8장. 인가 전략
__인가 이해하기
__RBAC 활용
__GBAC 활용
____그룹 멤버십을 토큰에 매핑
__OAuth2 범위 활용
__ABAC 활용
__통합 Keycloak 인가 서버 활용
__요약
__질문
__참고문헌

3부. Keycloak 설정 및 관리

9장. 프로덕션 환경을 위한 Keycloak 설정
__기술 요구 사항
__Keycloak 호스트네임 설정
____프론트엔드 URL 설정
____백엔드 URL 설정
____admin URL 설정
__TLS 활성화
__데이터베이스 설정
__클러스터링 활성화
__리버스 프록시 설정
____노드 부하 분산
____클라이언트 정보 전송
____세션 어피니티 유지
__Keycloak 환경 테스트
____부하 분산 및 시스템 대체 작동 테스트
____프론트엔드 및 백엔드 URLs 테스팅
__요약
__질문
__참고문헌

10장. 사용자 관리
__기술 요구 사항
__로컬 사용자 관리
____로컬 사용자 생성
____사용자 자격증명 관리
____사용자 정보 획득 및 검증
____자동 등록 활성화
____사용자 속성 관리
__LDAP 및 액티브 디렉터리 통합
____LDAP 매퍼 이해
____그룹 동기화
____역할 동기화
__서드파티 ID 제공자 통합
____OpenID Connect ID 제공자 생성
__소셜 ID 제공자 연동
__사용자 데이터 관리
__요약
__질문
__참고문헌

11장. 사용자 인증
__기술 요구 사항
__인증 흐름 이해
____인증 흐름 설정
__패스워드 사용
____패스워드 정책 변경
____사용자 패스워드 리셋
__OTPs 사용
____OTP 정책 변경
____사용자가 OTP 사용 여부를 선택할 수 있도록 허용
____OTP를 통한 사용자 인증 활성화
__웹 인증 활용
____인증 흐름에서 WebAuthn 활성화
____보안 기기 등록 및 인증
__강력한 인증 사용
__요약
__질문
__참고문헌

12장. 토큰 및 세션 관리
__기술 요구 사항
__세션 관리
____세션 생명주기 관리
____활성 세션 관리
____사용자 세션 조기 종료
____쿠키 및 세션과의 관련성 이해
__토큰 관리
____ID 토큰 및 접근 토큰 생명주기 관리
____리프레시 토큰 생명주기 관리
____리프레시 토큰 로테이션 활성화
____토큰 폐기
__요약
__질문
__참고문헌

13장. Keycloak 확장
__기술 요구 사항
__서비스 공급자 인터페이스 이해하기
____사용자 정의 제공자 패키징
____사용자 정의 제공자 설치
____KeycloakSessionFactory 및 KeycloakSession 컴포넌트 이해
____제공자의 생명주기 이해
____제공자 설정
__인터페이스 변경
____테마 이해
____신규 테마 생성 및 적용
____템플릿 확장
____테마 관련 SPI 확장
__인증 흐름 사용자 정의
__다른 사용자 정의 포인트 확인
__요약
__질문
__참고문헌

4부. 보안 고려 사항

14장. Keycloak 및 애플리케이션 보안
__Keycloak 보안
____Keycloak에 대한 통신 암호화
____Keycloak 호스트 이름 설정
____Keycloak에서 사용하는 서명 키 순환
____주기적인 Keycloak 업데이트
____외부 저장소의 시크릿을 Keycloak으로 로드
____방화벽 및 침입 방지 시스템을 통한 Keycloak 보안
__데이터베이스 보안
____방화벽을 사용한 데이터베이스 보안
____데이터베이스 인증 및 접근 제어 활성화
____데이터베이스 암호화
__클러스터 통신 보안
____클러스터 인증 활성화
____클러스터 통신 암호화
__사용자 계정 보안
__애플리케이션 보안
____웹 애플리케이션 보안
____OAuth 2.0 및 OpenID 커넥트 베스트 프랙티스
____Keycloak 클라이언트 설정
__요약
__질문
__참고문헌

__평가

교환 및 환불안내

도서교환 및 환불
  • ㆍ배송기간은 평일 기준 1~3일 정도 소요됩니다.(스프링 분철은 1일 정도 시간이 더 소요됩니다.)
  • ㆍ상품불량 및 오배송등의 이유로 반품하실 경우, 반품배송비는 무료입니다.
  • ㆍ고객님의 변심에 의한 반품,환불,교환시 택배비는 본인 부담입니다.
  • ㆍ상담원과의 상담없이 교환 및 반품으로 반송된 물품은 책임지지 않습니다.
  • ㆍ이미 발송된 상품의 취소 및 반품, 교환요청시 배송비가 발생할 수 있습니다.
  • ㆍ반품신청시 반송된 상품의 수령후 환불처리됩니다.(카드사 사정에 따라 카드취소는 시일이 3~5일이 소요될 수 있습니다.)
  • ㆍ주문하신 상품의 반품,교환은 상품수령일로 부터 7일이내에 신청하실 수 있습니다.
  • ㆍ상품이 훼손된 경우 반품 및 교환,환불이 불가능합니다.
  • ㆍ반품/교환시 고객님 귀책사유로 인해 수거가 지연될 경우에는 반품이 제한될 수 있습니다.
  • ㆍ스프링제본 상품은 교환 및 환불이 불가능 합니다.
  • ㆍ군부대(사서함) 및 해외배송은 불가능합니다.
  • ㆍ오후 3시 이후 상담원과 통화되지 않은 취소건에 대해서는 고객 반품비용이 발생할 수 있습니다.
반품안내
  • 마이페이지 > 나의상담 > 1 : 1 문의하기 게시판 또는 고객센터 1800-7327
교환/반품주소
  • 경기도 파주시 문발로 211 1층 / (주)북채널 / 전화 : 1800-7327
  • 택배안내 : CJ대한통운(1588-1255)
  • 고객님 변심으로 인한 교환 또는 반품시 왕복 배송비 5,000원을 부담하셔야 하며, 제품 불량 또는 오 배송시에는 전액을 당사에서부담 합니다.