--- kind: CONCEPT slug: grpc-advanced-diagnostics-c02 title: 진단 열람은 망 게이트와 역할 게이트를 함께 요구한다 topic: capability-and-disclosure-models project: clean-architecture-backend-template status: 게시 전 sourceRevision: 21234e38cdb9a926cbc92bb97a2aee2e4a7d2916 rootTreeNode: concept:grpc-advanced-diagnostics-c02 evidenceCapturedOn: 2026-09-01 assets: - key: grpc-advanced-diagnostics-c02 file: ../../../final/evidence/rendered/grpc-advanced-diagnostics-c02.svg - key: grpc-advanced-diagnostics-c02-diagram file: ../../../final/assets/diagrams/grpc-advanced-diagnostics-c02.svg evidence: - ../../../final/evidence/raw/grpc-advanced-diagnostics-c02.txt source: - 원본 분석 절은 analysis/grpc/grpc-advanced-diagnostics.md#L51 이다. module: grpc-advanced-diagnostics --- # 진단 열람은 망 게이트와 역할 게이트를 함께 요구한다 `GrpcChannelDiagnosticsPolicy`는 네트워크와 역할 두 게이트를 모두 요구하고, 하나라도 비면 생성자가 거부한다. CSDS는 그 위에 xDS 사용 여부라는 조건이 더 붙는다. ## 본문 `GrpcChannelDiagnosticsPolicy` 는 네트워크와 역할 두 게이트를 모두 요구하고, 하나라도 비면 생성자가 거부한다. > "diagnostics need both a network and a role gate; Channelz holds every socket's peer and security detail, so either gate alone is the whole surface" ## 열람을 여는 조건 :::evidence key="grpc-advanced-diagnostics-c02-diagram" alt="정책 경계 안에 네트워크 게이트와 역할 게이트가 나란히 들어 있고 CSDS 는 경계 밖에 점선 상자로 놓인 구조" caption="열람을 여는 조건" zoom="false" ::: ## GrpcChannelDiagnosticsPolicy 참조 위치 :::evidence key="grpc-advanced-diagnostics-c02" alt="코드베이스에서 GrpcChannelDiagnosticsPolicy 를 검색한 출력 12줄. 이 기록이 세는 참조가 그 출력에 그대로 보인다." caption="GrpcChannelDiagnosticsPolicy 코드베이스 검색 — 12줄 · exit 0" zoom="true" ::: ## CSDS가 등록되는 조건 등록 판정이 능력 깃발에 걸려 있다. CSDS 는 Channelz 가 켜져 있고 xDS 도 켜져 있을 때만 등록된다. > "A CSDS service on a deployment that does not use xDS answers every query with nothing, which is harmless, and advertises a control-plane surface that does not exist, which is not."