ONE QUESTION AT A TIME.

천천히 생각하고, 분명하게.

TODAY’S QUESTION1042 / 1500
보안난이도 중하5분 답변 목표 · 보강본

서비스 간 mTLS를 켜면 API 인가와 테넌트 검사를 생략해도 되나요?

잠깐, 답변을 보기 전에
먼저 내 말로 설명해 볼까요?

답변과 점검 포인트 펼치기답변 접기
01

구두 답변

정의를 외우기보다, 원리와 조건을 연결해 설명해 보세요.

mTLS는 통신 양쪽이 인증서를 통해 서로의 신원을 확인하게 하지만 어떤 자원과 작업을 허용할지는 별도 인가 정책입니다. 인증서가 유효한 서비스도 다른 테넌트의 주문을 바꿀 권한은 없을 수 있습니다.

동작 원리와 전제

서버는 신뢰 체인·만료·이름과 client certificate의 식별을 검증하고 그 신원을 정책의 주체로 연결합니다. 단순히 인증서가 있다는 것과 허용된 workload identity인지가 다릅니다. TLS를 프록시에서 종료하면 앱에 신원을 전달하는 경계도 보호해야 합니다.

선택과 실패 처리

인증서 회전과 철회, 짧은 수명과 연결 재사용을 설계합니다. 이미 열린 연결이 새 인증서를 즉시 검증하는 것은 아니므로 재연결·유효기간 정책을 확인합니다. 사용자 대신 호출하는 서비스라면 서비스 신원과 최종 사용자 권한을 구분합니다.

구체적인 사례와 검증

주문 서비스 인증서로 인증됐어도 관리자 삭제 API를 허용할 이유는 없습니다. 서비스 신원을 정책의 주체로 매핑하고 endpoint·행동·테넌트에 필요한 권한만 부여합니다. 최종 사용자의 요청을 대행하는 경우 사용자 정보가 위조되지 않는 전달 경계도 필요합니다. 프록시가 검증한 client identity를 일반 헤더로 넘긴다면 앱 직접 접근을 차단하고 외부가 보낸 같은 헤더를 제거해야 합니다. 인증서 회전 중 기존 연결을 언제 새 자격으로 다시 검증할지도 정합니다. 키가 유출됐을 때 단순 배포 완료와 실제 old credential 사용 차단을 별도 확인하겠습니다.

잘못된 CA·다른 서비스 인증서·만료·회전·권한 부족을 시험합니다. 암호화 연결을 성공시킨 뒤에도 자원 소유권과 허용 행동을 서버에서 검사합니다. mTLS는 네트워크 신뢰 경계를 강화하는 수단이지 전체 업무 인가의 대체재가 아닙니다.

02

득점 포인트

이해가 드러나는 지점을 확인해 보세요.

  • 핵심 구분: mTLS는 통신 양쪽이 인증서를 통해 서로의 신원을 확인하게 하지만 어떤 자원과 작업을 허용할지는 별도 인가 정책입니다.
  • 선택 조건: 인증서 회전과 철회, 짧은 수명과 연결 재사용을 설계합니다.
  • 검증 기준: 잘못된 CA·다른 서비스 인증서·만료·회전·권한 부족을 시험합니다.
03

감점 포인트

놓치기 쉬운 조건과 오해를 짚어 보세요.

  • mTLS 인증 성공이면 모든 API와 테넌트 접근이 허용된다고 한다.
04

더 파고들 거리

하나 더 질문하며 이해의 범위를 넓혀 보세요.

  • 연결 성공 뒤에도 의도한 서버인지 어떤 이름·체인·기간 검사를 수행하나요?
  • 유효하게 로그인한 주체라도 해당 자원을 변경할 수 있는지는 어디에서 검사하나요?
  • 새 키를 발급·검증에 적용하는 순서와 옛 키 회수 시점을 어떻게 나누나요?

득점·감점 포인트는 학습용 자기 점검 기준이며, 특정 회사의 실제 채점표가 아닙니다.

원리부터 공부하고 싶다면

답변을 보충하는 개념·예제·슈도코드를 읽어 보세요.

← 전체 질문 보기