WEBBOOK CHAPTER

Spring Security 6, 인증에서 운영까지: 29장. 관측 가능성과 개인정보를 함께 지킨다

29장. 관측 가능성과 개인정보를 함께 지킨다

보안 장애 조사에는 trace가 필요하지만 observability pipeline 자체가 비밀 유출 경로가 될 수 있다. HTTP header 전체 수집을 끄고 Authorization, Cookie, Set-Cookie, token query parameter를 redact한다. request/response body 캡처는 기본 금지로 두고 승인된 디버그 창에서만 제한한다.

metric은 낮은 cardinality를 유지한다.


security_authentication_total{mechanism,result}
security_authorization_total{action,result,reason}
security_stepup_total{method,result}

userId, contractId, raw path를 label에 넣으면 비용과 개인정보가 폭발한다. 상세 식별은 접근 통제된 audit event에서 decision ID로 연결한다. 로그 샘플링이 보안 실패를 버리지 않는지도 확인한다.

운영 dashboard는 401과 403을 분리한다. 배포 직후 401 급증은 issuer/JWK/cookie 문제, 특정 action 403 급증은 정책 배포 문제일 수 있다. 정상 baseline과 release annotation이 있어야 신호를 해석할 수 있다.