간편결제, 신용카드 청구할인
인터파크 롯데카드 5% (28,220원)
(최대할인 10만원 / 전월실적 40만원)
북피니언 롯데카드 30% (20,790원)
(최대할인 3만원 / 3만원 이상 결제)
NH쇼핑&인터파크카드 20% (23,760원)
(최대할인 4만원 / 2만원 이상 결제)
Close

OPA 시작하기 : 클라우드 네이티브 애플리케이션과 마이크로서비스를 위한 정책, 권한 엔진

소득공제

2013년 9월 9일 이후 누적수치입니다.

공유하기
정가

33,000원

  • 29,700 (10%할인)

    1,650P (5%적립)

할인혜택
적립혜택
  • I-Point 적립은 마이페이지에서 직접 구매확정하신 경우만 적립 됩니다.
추가혜택
배송정보
  • 11/29(화) 이내 발송 예정  (서울시 강남구 삼성로 512)
  • 무료배송
주문수량
감소 증가
  • 이벤트/기획전

  • 연관도서(21)

  • 상품권

AD

책소개

OPA(Open Policy Agent)는 클라우드 네이티브 애플리케이션과 마이크로서비스 환경에 최적화된 정책 엔진이다. OPA는 현재 존재하는 기술 중에서는 Policy as Code 개념을 가장 잘 구현할 수 있는 수단이며, Policy as Code 개념을 구현하면 정책을 애플리케이션의 다른 부분과 독립적으로 개발 및 유지 보수할 수 있고 빠른 요구사항의 변화에도 용이하게 대응할 수 있다. OPA는 이미 4~5년 전에 등장해 많은 프로젝트에 적용되고 있지만 처음 배우기는 생소하고 어렵다.
한 권 전체를 OPA에 집중하는 최초의 책으로 좀 더 쉽게 OPA를 접할 수 있기를 기대하고 쓴 책이다. 이 책을 통해 OPA를 라이브러리나 별도 서버로 애플리케이션에 통합하는 방법, OPA의 정책 언어 Rego를 활용해 정책을 작성하는 방법, 쿠버네티스 환경 및 마이크로서비스 환경에서 OPA를 적용하는 데 사용할 수 있는 다양한 기술과 사례 등을 배울 수 있다.

출판사 서평

★ 이 책에서 다루는 내용 ★

■ OPA와 관련 기술 이해
■ OPA의 정책 언어인 Rego의 문법 및 OPA 규칙 작성법
■ OPA에서 제공하는 내장 함수
■ OPA 정책 번들 생성 및 서명 등 정책을 패키징하고 관리하는 방법
■ Go 클라이언트 라이브러리와 REST 서버를 통해 OPA를 통합하는 방법
■ OPA를 통해 API 권한 관리 시나리오를 구현하고 점진적으로 개선해 나가는 과정
■ 웹어셈블리 SDK를 통해 Go 이외의 다양한 언어(특히 자바)에서 OPA를 내장하는 방법
■ 플러그인과 내장함수를 구현해 OPA를 확장하는 방법


★ 이 책의 대상 독자 ★

■ 쿠버네티스 기반 클라우드 네이티브 환경과 마이크로서비스 아키텍처와 관련된 업무를 수행하는 개발자, 아키텍트, 컨설턴트 등 실무자
■ 애플리케이션의 정책과 권한을 유지보수가 용이하고 테스트하기 쉽게 설계하는 방법을 알고 싶은 독자
■ Policy as Code 개념이 어떻게 구현되는지 구체적으로 알고 싶은 독자

목차

1장. OPA 소개
__OPA 개요
__OPA의 특징
____OPA의 장점
________정책을 코드로 통합
________형식의 유연성
________REPL 및 플레이그라운드 지원
________테스트 및 성능 측정의 용이성
________정책 번들 지원
________많은 프로젝트에 적용돼 검증됨
________빠른 기능 개발 속도
________문서화의 범위가 넓음
____OPA의 단점
________전용 정책 언어 Rego의 생소함
________프로그래밍 언어 지원의 제약
________데이터베이스 등 외부 저장소 미지원
________문서화의 디테일 부족
__OPA 사용 사례
________사용자 권한 관리
________시스템 정책 및 제약사항 관리
________API 게이트웨이 보안
________CI/CD 자동화를 위한 검사 도구
________서비스 수준 정책 관리
________정책의 통합 관리
__OPA 관련 기술 및 개념 정리
________인증
________권한 부여 혹은 인가
________감사
________RBAC
________ABAC
________JWT
________OAuth 2.0
________OpenID Connect 1.0
__OPA 사용해 보기
__정리


2장. OPA 설치 및 사용
__OPA 설치
____리눅스 환경
____맥 OS 환경
____윈도우 환경
____설치 확인
__Visual Studio Code 및 OPA 플러그인 설치
____Visual Studio Code 설치
____vscode-opa 플러그인 설치
__기본적인 vscode-opa 사용 방법
__정리


3장. Rego
__Rego 개요
__Rego 언어 문법 개요
__레일로드 다이어그램
__Rego 모듈
____모듈
____패키지
____임포트
____정책
__기본 요소
____스칼라값
________숫자
________문자열
____복합값
________객체
________배열
________집합
____포괄식
________객체 포괄식
________집합 포괄식
________배열 포괄식
__변수 및 참조
____변수
____참조
____순회
__규칙
____값 할당
____값 할당의 특성
____완전한 규칙
____규칙 집합
____else문
____규칙의 기본값
____규칙의 예
____부분 규칙
____함수
____구문
____some문
____with문
____표현식
____not문
____중위 연산자 및 중위 연산자 포함식
____집합 연산자
____동등성 연산자
________할당 연산자
________비교 연산자
________단일화 연산자
____주석
____예약된 이름
__그렇다면 main은?
__정리


4장. 내장 함수
__숫자 관련 함수
____반올림, 내림, 올림
____절댓값
____특정 범위의 정수 배열 생성
__비트 연산
__타입 관련 함수
____타입 이름
____타입 확인
____타입 변환
__집계 함수
____count 함수
____sum, product, max, min 함수
____all, any 함수
__복합값 관련 함수
____배열 관련 함수
____집합 관련 함수
____객체 관련 함수
________object.get
________object.remove
________object.union
________object.filter
________json.filter
________json.remove
__문자열 관련 함수
____문자열 검사
________contains
________indexof
________startswith, endswith
____문자열 포맷
________sprintf
________format_int
________대소문자 변환
____문자열 조작
________concat
________split
________substring
________replace
________strings.replace_n
____문자열 공백 제거
________trim_space
________trim, trim_left, trim_right
________trim_prefix, trim_suffix
__정규식 관련 함수
____regex.is_valid
____regex.match
____regex.split
____regex.globs_match
____regex.template_match
____regex.find_n
____regex.find_all_string_submatch_n
__Glob 관련 함수
____Glob 패턴
____Glob 매칭
____이스케이프 처리
__HTTP 관련 함수
__JWT 관련 함수
____JWT 디코딩 함수
____JWT 서명 검증
__정리


5장. OPA를 사용한 정책 구현
__기본 시나리오
____시스템 정의
____입력 스키마 정의
____데이터 정의
____정책 작성
____정책 테스트
____디버깅을 위한 쿼리 추적
__API가 다중 권한을 요구하는 시나리오
____데이터 정의
____정책 작성
____정책 테스트
__공개 API를 추가한 시나리오
____데이터 정의
____정책 작성
____정책 테스트
__권한 계층 구조를 지원하는 시나리오
____데이터 정의
____정책 작성
____정책 테스트
__API 계층 구조를 지원하는 시나리오
____데이터 정의
____정책 작성
____정책 테스트
__정리


6장. OPA 번들
__OPA 번들 생성
____OPA 번들 수동 생성
____OPA 번들 도구
__OPA 번들의 서명
____HMAC을 이용한 번들 서명 및 검증
____비대칭 키 서명을 이용한 번들 서명 및 검증
____번들 서명 파일만 생성
__정리


7장. OPA 통합
__OPA REST API 서버
____HTTPS로 OPA 서버 실행
__OPA REST API 서버 설정
____OPA 설정 파일의 구조
____REST 서버 시작 시 OPA 설정 적용
__도커 및 쿠버네티스 환경에서 실행
____도커 환경에서 실행
____쿠버네티스 환경에서 실행
__Go 클라이언트 라이브러리로 애플리케이션에 통합
__OPA와 외부 데이터를 연동하는 방법
____JWT에 기반한 방법
____Input 오버로딩
____번들
____푸시
____평가 시 폴링
____데이터베이스를 활용해서 정책 정보 관리하기
__정리


8장. 모니터링
__프로메테우스를 통한 OPA 서버 모니터링
____OPA에서 제공하는 메트릭 정보
____프로메테우스를 통한 모니터링
____단일 쿼리 성능 모니터링
__OPA 서버 헬스체크
__OPA 서버 상태 정보 및 결정 로그
____OPA 상태 정보
____OPA 결정 로그
____OPA 결정 로그 마스킹
____상태 정보 및 결정 로그 수집을 위한 서버 구현
____상태 정보 및 결정 로그 파티션 설정
__정리


9장. 쿠버네티스 환경에서 OPA 활용
__OPA 게이트키퍼
____OPA 게이트키퍼 개요
____OPA 게이트키퍼 설치 및 제거 방법
____OPA 게이트키퍼 제약사항 템플릿
____OPA 게이트키퍼 제약사항
____OPA 게이트키퍼 동작 확인
____OPA 게이트키퍼 CRD 관련 명령
__OPA 게이트키퍼 정책 라이브러리
____일반 템플릿
____PSP 템플릿
__OPA 게이트키퍼 설정
____데이터 복제 설정
____네임스페이스 열외 처리
____웹훅 설정
__쿠버네티스 환경에서 사용 가능한 그 외의 도구들
____Conftest
____테라폼에서 OPA 활용
____opa-kafka-plugin
____opa-envoy-plugin
__정리


10장. OPA 확장
__OPA 내장 함수
____OPA 내장 함수 구현
____OPA 내장 함수 통합
__OPA 플러그인
____OPA 플러그인 구조
____플러그인 예제
____플러그인 버전 설정
____특별한 OPA 플러그인들
__정리


11장. OPA와 웹 어셈블리
__OPA의 웹 어셈블리 활용
____웹 어셈블리 개요
____웹 어셈블리 지원을 통해 기대할 수 있는 장점
____OPA 웹 어셈블리를 사용하기 위한 요구사항
____npm-opa-wasm을 통한 OPA 웹 어셈블리 모듈 적용
__자바를 위한 OPA 웹 어셈블리 SDK 작성
____웹 어셈블리 SDK 요구사항
____자바 SDK 인터페이스 정의
____웹 어셈블리 런타임 연동
____SDK API 구현
____OPA 웹 어셈블리 자바 SDK 사용 예제
__OPA 웹 어셈블리 SDK와 내장 함수
____SDK에서 구현해야 할 내장 함수 확인
____SDK를 통해 호출할 내장 함수 목록 초기화
____내장 함수 구현 예시
____사용자 내장 함수 구현
__정리

저자소개

이상근 [저] 신작알림 SMS신청
생년월일 -

숭실대학교에서 컴퓨터공학을 전공하고, 동대학원에서 공학박사 학위를 받았다. 세부 전공은 분산처리이며, 주로 분산 컴퓨팅 아키텍처와 워크플로우 엔진을 연구했다. 학업을 마치고 개발자로 10년 이상 다양한 경력을 쌓았으며 엔터프라이즈 잡 스케줄러, 렌더팜 관리 시스템, 클라우드 데이터베이스 프로비저닝 서비스, 빅데이터 관련 시스템, 클라이언트 사이드 로드 밸런싱 등 다양한 개발 경험이 있다. 최근에는 클라우드와 빅데이터 관련 여러 프로젝트에 참여하며, OPA를 통해 마이크로서비스의 정책 관리를 개선할 수 있는 방안을 고민하고 있다.

이 상품의 시리즈

(총 25권 / 현재구매 가능도서 22권)

선택한 상품 북카트담기
펼쳐보기

전공도서/대학교재 분야에서 많은 회원이 구매한 책

    리뷰

    0.0 (총 0건)

    100자평

    작성시 유의사항

    평점
    0/100자
    등록하기

    100자평

    0.0
    (총 0건)

    판매자정보

    • 인터파크도서에 등록된 오픈마켓 상품은 그 내용과 책임이 모두 판매자에게 있으며, 인터파크도서는 해당 상품과 내용에 대해 책임지지 않습니다.

    상호

    (주)교보문고

    대표자명

    안병현

    사업자등록번호

    102-81-11670

    연락처

    1544-1900

    전자우편주소

    callcenter@kyobobook.co.kr

    통신판매업신고번호

    01-0653

    영업소재지

    서울특별시 종로구 종로 1(종로1가,교보빌딩)

    교환/환불

    반품/교환 방법

    ‘마이페이지 > 취소/반품/교환/환불’ 에서 신청 또는 1:1 문의 게시판 및 고객센터(1577-2555)에서 신청 가능

    반품/교환가능 기간

    변심 반품의 경우 출고완료 후 6일(영업일 기준) 이내까지만 가능
    단, 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내

    반품/교환 비용

    변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
    상품이나 서비스 자체의 하자로 인한 교환/반품은 반송료 판매자 부담

    반품/교환 불가 사유

    ·소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
    (단지 확인을 위한 포장 훼손은 제외)

    ·소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우
    예) 화장품, 식품, 가전제품(악세서리 포함) 등

    ·복제가 가능한 상품 등의 포장을 훼손한 경우
    예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집

    ·시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우

    ·전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우

    상품 품절

    공급사(출판사) 재고 사정에 의해 품절/지연될 수 있음

    소비자 피해보상
    환불지연에 따른 배상

    ·상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁해결 기준 (공정거래위원회 고시)에 준하여 처리됨

    ·대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

    (주) 인터파크 안전결제시스템 (에스크로) 안내

    (주)인터파크의 모든 상품은 판매자 및 결제 수단의 구분없이 회원님들의 구매안전을 위해 안전결제 시스템을 도입하여 서비스하고 있습니다.
    결제대금 예치업 등록 : 02-006-00064 서비스 가입사실 확인

    배송안내

    • 교보문고 상품은 택배로 배송되며, 출고완료 1~2일내 상품을 받아 보실 수 있습니다.

    • 출고가능 시간이 서로 다른 상품을 함께 주문할 경우 출고가능 시간이 가장 긴 상품을 기준으로 배송됩니다.

    • 군부대, 교도소 등 특정기관은 우체국 택배만 배송가능합니다.

    • 배송비는 업체 배송비 정책에 따릅니다.

    • - 도서 구매 시, 1만 원 이상 무료, 1만원 미만 2천 원 - 상품별 배송비가 있는 경우, 상품별 배송비 정책 적용