분류 전체보기 145

[keycloak 맛보기#8] Federation with LDAP (Kubernetes/minikube) + Grafana 연동까지

📌 개요 LDAP이란? * 참고자료: https://www.okta.com/identity-101/what-is-ldap/LDAP(Lightweight Directory Access Protocol)이란, 디렉터리 서비스를 위한 프로토콜이다.일반적으로 회사에서 부서 및 사용자를 관리하기 위해 사용하며, 사용자/그룹/권한 등의 정보를 저장 및 조회 할 수 있다.dc=example,dc=org (회사) ├── ou=Development (개발부서) │ ├── cn=developer1 │ └── cn=developer2 ├── ou=Sales (영업부서) │ ├── cn=sales1 │ └── cn=sales2 └── ou=HR (인사부서) ├..

🌱 Infra/KeyCloak 2025.02.23

[keycloak 맛보기 #7] Production Keycloak을 위한 설정

들어가기전에, *https://www.keycloak.org/server/configuration-production Keycloak은 수백~수천명의 사용자에게 안전한 인증 및 권한부여를 제공할 수 있도록 설계되어있다.안전하고 안정적인 Keycloak을 프로덕션 환경에 배포하기 위해 설정해야 할 부분들을 확인 해 보자.  1. Keycloak의 Hostname 설정* 공식문서: https://www.keycloak.org/server/hostname ✓ Hostname을 설정해야하는 이유keycloak은 보안상의 이유로 hostname 설정을 필수로한다.▪︎ 설명Keycloak은 OIDC Discovery 엔드포인트, 사용자 비밀번호 변경 엔드포인트 등의 URL이 외부로 공개된다.이때, hostname이..

🌱 Infra/KeyCloak 2025.02.16

[keycloak 맛보기 #6] Keycloak의 인가 전략

개요, 인가란 무엇인가? 들어가기 전에 인가(Authorization)이 무엇인지 한번 더 개념을 정리해보자.인가는 "이 사용자가 특정 리소스나 기능에 접근할 권한이 있는지 확인하는 과정"이다.예를들자면 어떤 사용자가 ID/PW를 입력하고 사진첩 어플리케이션에 로그인했다면, 사용자 본인의 사진첩에만 접근 가능해야하며 다른 사용자의 사진첩에는 접근해서는 안된다.구분개념예시인증Authentication누구인지 확인하는 과정로그인인가Authorization무엇을 할 수 있는지 확인하는 과정내 사진첩에만 접근 즉, 인가란 사용자가 허용된 리소스에만 접근하도록 하는것이 인가의 개념이다.인가를 위해 고려해야하는 요소는 정말 많다.사용자 컨텍스트 (Who): 사용자 신원, 역할, 그룹, 속성, 조직 구조 내 위치리..

🌱 Infra/KeyCloak 2025.02.09

[keycloak 맛보기 #5] Keycloak의 애플리케이션 통합

참고자료책: https://www.yes24.com/Product/Goods/122459785테스트 소스코드: https://github.com/PacktPublishing/Keycloak---Identity-and-Access-Management-for-Modern-Applications-2nd-Edition 통합 방식 설명 Keycloak과 애플리케이션을 통합할 때,  Embedded와 Proxied 방식이 있다. 각 방법은 애플리케이션의 구조와 보안 요구 사항에 따라 선택할 수 있다.구분EmbeddedProxied설명애플리케이션 코드 내에서 Keycloak 어댑터를 직접 사용하여 인증 및 권한 부여를 처리한다.역방향 프록시를 사용하여  Keycloak과의 통신을 처리하는 역방향 프록시를 설정하여 애..

🌱 Infra/KeyCloak 2024.12.17

[keycloak 맛보기 #4] Keycloak의 애플리케이션 보안

웹 애플리케이션 보호  1️⃣ 개요웹 애플리케이션은 기본적으로 인가코드흐름(Authorization Code Flow)를 사용해야하며, PKCE(Proof key for Code Exchange)를 함께 사용하는것이 좋다.인가코드 흐름(Authorization Code Flow)는 아래와 같은 인증 흐름을 가진다.# [초기 로그인 흐름]Browser App Server Keycloak | | | |----(1) 접근 시도------------>| | | ..

🌱 Infra/KeyCloak 2024.12.09

[Redis/Valkey 기초 #1] Object, Data Type 이해하기

📌 Redis Object 개요 Redis 메모리를 저장공간으로 사용하는 In-Memory Key-value 스토어 이다.모든 데이터가 메모리에 저장되므로 빠른 읽기/쓰기가 가능하지만 메모리는 유한한 자원이므로 효율적인 관리가 필수적메모리를 효율적으로 관리할 수 있도록, Redis는 데이터를 Object로 정의하고있다.Redis의 고성능과 효율적인 메모리 사용을 가능하기 위해 Object는 아래와 같은 역할을 한다.데이터 표현모든 키-값 쌍을 RedisObject로 통일하여 표현다양한 데이터 타입(String, List, Hash 등)을 하나의 구조로 관리메모리 최적화데이터 특성에 따라 최적의 인코딩 방식을 자동 선택작은 데이터는 압축된 형태로 저장중복 데이터는 참조 방식으로 저장성능 최적화데이터 접근..

[keycloak 맛보기 #3] 접근권한인가 이해하기

참고자료* 책: https://www.yes24.com/Product/Goods/122459785* 테스트 소스코드: https://github.com/PacktPublishing/Keycloak---Identity-and-Access-Management-for-Modern-Applications-2nd-Edition 실습 준비) Keycloak & 테스트 애플리케이션 세팅 Keycloak 준비Keycloak을 로컬에서 먼저 실행한다.docker run -p 8080:8080 \ -e KEYCLOAK_ADMIN=admin \ -e KEYCLOAK_ADMIN_PASSWORD=admin \ quay.io/keycloak/keycloak \ st..

🌱 Infra/KeyCloak 2024.12.01

[keycloak 맛보기 #2] OpenID Connection 사용자 인증 이해하기

참고자료* 책: https://www.yes24.com/Product/Goods/122459785* 테스트 소스코드: https://github.com/PacktPublishing/Keycloak---Identity-and-Access-Management-for-Modern-Applications-2nd-Edition실습 준비) Keycloak & 테스트 애플리케이션 세팅Keycloak을 로컬에서 먼저 실행한다.docker run -p 8080:8080 \ -e KEYCLOAK_ADMIN=admin \ -e KEYCLOAK_ADMIN_PASSWORD=admin \ quay.io/keycloak/keycloak \ start-dev이후 테스트..

🌱 Infra/KeyCloak 2024.11.25

[keycloak 맛보기 #1] Keycloak 로컬에서 띄우고 Realm 개념 이해하기

개요Keycloak은 오픈소스(Apache License2.0) ID 및 엑세스 관리 솔루션이다.이것만 알고 일단 시작해보자 Keycloak 도커로 띄워보기Keycloak은 설치 매뉴얼이 정말 잘되어있다. 공식문서에 정말 자세히 잘 작성되어있어 문서에 따라 진행해보자.docker run -p 8080:8080 \ -e KEYCLOAK_ADMIN=admin \ -e KEYCLOAK_ADMIN_PASSWORD=admin \ quay.io/keycloak/keycloak:24.0.4 \ start-devdocker run 명령어를 통해 쉽게 keycloak을 띄울 수 있다. http://localhost:8080 에 접속하고 로그인해보자. (id..

🌱 Infra/KeyCloak 2024.11.23

인증 및 권한 프로토콜 OAuth 2.0, OpenID Connect, SAML 그리고 Zero Trust에 대하여

이 포스팅에서는 자세한 내용 보다는 개념맛보기👅 수준의 내용입니다.  📌 OAuth 2.0, OpenID Connect, SAML 간단 개념 정리 OAuth 2.0: 권한 부여에 중점을 둔 프로토콜OpenID Connect: OAuth 2.0을 확장하여 인증 레이어 추가SAML: 엔터프라이즈 환경에 적합한 XML 기반 인증 프로토콜 구분OAuth 2.0OpenID ConnectSAML목적권한 부여(Authorization)사용자 인증(Authentication)사용자 인증(Authentication)데이터 형식JSONJSONXML사용 사례API 인증, 모바일 앱소셜 로그인, API 인증모바일 앱, SPA, API 기반 서비스에 적합기업 SSO, 웹 애플리케이션 인증전통적인 웹 애플리케이션에 적합복잡성..

🌱 Infra/KeyCloak 2024.11.12
728x90