설명
API Gateway의 clientCertificateId는 지원되는 통합에서 백엔드가 API Gateway를 인증할 때 사용하는 클라이언트 인증서입니다. 이 설정이 없다는 이유만으로 이용자와 API Gateway 사이의 HTTPS가 비활성화되는 것은 아닙니다.
이 인증서를 요구하는 백엔드에는 단계 설정과 인증서 검증이 함께 필요합니다. API Gateway v2에서는 WebSocket API에만 지원되며 HTTP API의 설정은 아닙니다.
잠재적 영향
- 필요한 백엔드 인증을 구성하지 않으면 연결이 거부되거나 의도한 요청 출처 검증이 빠질 수 있습니다.
- 인증서 만료나 교체 누락은 서비스 연결 장애를 일으킬 수 있습니다.
해결 방법
백엔드 인증서 인증이 필요한 지원 API에서 clientCertificateId를 설정하고 백엔드가 해당 인증서를 실제로 검증하도록 구성하세요. 만료와 교체 절차를 관리하고 인증되지 않은 연결이 거부되는지 확인하세요. API Gateway v2 HTTP API에는 이 필드를 적용하지 마세요.
예시
WebSocket API 단계의 백엔드 인증서를 비교하는 발췌입니다. exampleApi, aws:apigateway:ClientCertificate 유형의 exampleClientCertificate와 단계·배포 설정은 별도로 준비하세요.
변경 전
yaml
resources:
example:
type: aws:apigatewayv2:Stage
properties:
apiId: ${exampleApi.id}
변경 후
yaml
resources:
example:
type: aws:apigatewayv2:Stage
properties:
apiId: ${exampleApi.id}
clientCertificateId: ${exampleClientCertificate.id}
변경 후는 준비된 클라이언트 인증서 ID를 단계에 연결합니다. 인증서 ID를 지정하는 것만으로 백엔드 검증이나 이용자 인증이 완성되지는 않습니다.