docs: add SVG diagrams, explicit concept sections and the diagram convention
Twelve SVG architecture diagrams cover the experiments whose documents had little or no structure drawing, embedded under a 구조 heading with a shared convention file. Seven documents carried their concepts under narrative headings and now have an explicit 개념 section so they can be found. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
98a74e90a5
commit
78b270559c
@@ -245,6 +245,44 @@ kubectl -n keycloak-lab scale deployment/bff --replicas=1
|
||||
|
||||
---
|
||||
|
||||
---
|
||||
|
||||
## 개념
|
||||
|
||||
### `AuthenticatedPrincipalOAuth2AuthorizedClientRepository`
|
||||
|
||||
이름이 곧 설명이다 — **인증된 주체(principal) 기준**으로 authorized client 를 찾는다.
|
||||
|
||||
```
|
||||
인증되어 있으면 → OAuth2AuthorizedClientService 에 위임
|
||||
키: (clientRegistrationId, principalName)
|
||||
└─ session ID 가 없다 ★
|
||||
인증되지 않았으면 → HttpSession 에 임시 보관
|
||||
```
|
||||
|
||||
**같은 사용자의 두 브라우저가 같은 항목을 본다.** Q1 미지수 3 과 Q3 제약의 기제다.
|
||||
|
||||
### 인가 코드 흐름은 왕복이 두 번이다
|
||||
|
||||
```
|
||||
① 브라우저 → 앱 → IdP 로 리다이렉트 (state·PKCE verifier 를 저장)
|
||||
② IdP → 브라우저 → 앱의 콜백 (저장한 것을 꺼내 검증)
|
||||
```
|
||||
|
||||
**②가 ①과 같은 인스턴스로 가야 한다.** 저장 위치가 인스턴스 메모리면
|
||||
replica 를 늘리는 순간 로그인 자체가 실패한다.
|
||||
|
||||
### 자동구성은 조용히 고른다
|
||||
|
||||
빈을 직접 만들지 않으면 Spring Boot 가 조건에 따라 고른다.
|
||||
**무엇을 골랐는지는 실행 중인 인스턴스를 봐야 안다.**
|
||||
|
||||
```bash
|
||||
kubectl exec <pod> -- wget -qO- http://localhost:8083/actuator/beans
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 6. 재현 절차 (명령어)
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user