%% 로그인 credential owner와 API caller는 같은 축이 아니다 %% question: 로그인 구간의 credential owner와 애플리케이션 요청 구간의 caller는 AP2·AP3·AP4에서 어디서 같고 갈라지는가? flowchart LR subgraph g_login_phase["로그인 구간"] n0["Keycloak"] n1["AP2 mediator"] n2["AP3 BFF · 로그인"] n3["AP4 oauth2-proxy"] end subgraph g_application_request_phase["애플리케이션 요청 구간"] n4(["AP2 브라우저"]) n5["AP3 BFF · API"] n6["AP4 Nginx"] n7["보호 자원"] end n0 -->|"code → token"| n1 n0 -->|"code → token"| n2 n0 -->|"OIDC code 교환"| n3 n1 -->|"owner 분리"| n4 n2 -->|"동일 BFF"| n5 n3 -->|"auth 결과"| n6 n4 -->|"Bearer"| n7 n5 -->|"Bearer"| n7 n6 -->|"identity header"| n7 classDef external stroke-dasharray: 6 4 class n4 external