클라우드 도구

AWS SigV4 서명 디버깅

실제 요청의 필드를 입력하고 헤더 서명이 만들어지는 과정을 확인하세요.

AWS SigV4 서명 디버깅

요청 입력

추가 헤더(한 줄에 하나)

텍스트 본문(UTF-8)

서명 결과

이 브라우저에서 계산하며 요청을 보내지 않습니다. 운영 비밀 키 대신 테스트 값을 사용하세요.

서명 옵션과 참조값

UTC 시각

참조 표준 요청

먼저 요청 URL을 입력하세요.

보고서에서는 Session Token을 가립니다. 가린 표준 요청으로 서명을 다시 계산할 수 없습니다.

SignatureDoesNotMatch가 나왔다면 키를 바꾸기 전에 표준 요청을 비교하세요. AWS SigV4 서명 디버깅은 경로, 쿼리, 헤더, 본문 해시를 따로 보여 주어 서명 불일치가 시작된 지점을 찾도록 돕습니다.

AWS가 공개한 더미 자격 증명과 고정 시각의 S3 예제를 불러올 수 있습니다. 계산은 브라우저에서 끝나며 IAM 권한이나 실제 서비스의 응답은 검사하지 않습니다.

AWS SigV4 서명 디버깅이 필요한 이유

서명 오류를 비교 가능한 정확한 입력으로 나눕니다.

인코딩과 정렬을 눈으로 확인

AWS SigV4 서명 디버깅은 쿼리 이름과 값을 인코딩한 뒤 정렬하고 서명할 헤더를 정규화합니다. `+`와 `%20`, 중복 키, 헤더 공백이 달라지면 표준 요청에 그대로 드러납니다.

반복된 쿼리 키와 헤더가 표준 요청으로 정렬되고 경로 슬래시는 유지되는 그림.

서명 단계를 순서대로 추적

표준 요청 SHA-256, 범위, 서명할 문자열, 선택적인 테스트 서명을 차례로 봅니다. 참조 표준 요청을 붙여 넣으면 AWS SigV4 서명 디버깅이 처음 다른 줄을 짚어 줍니다.

표준 요청에서 해시와 서명할 문자열을 거쳐 로컬 서명과 참조 비교로 이어지는 그림.

고정된 입력으로 같은 서명 재현하기

01

시각을 고정하고 예제를 확인

UTC 시각은 페이지를 열 때 한 번만 채웁니다. 지금 버튼을 누르기 전에는 바뀌지 않습니다. S3 예제는 공개 더미 키와 알려진 서명을 사용하며 기존 입력을 덮기 전에 미리 보여 줍니다.

02

HMAC 전에 정규화 확인

수동 실행이나 Ctrl/Cmd+Enter를 사용하세요. URI, 정렬된 쿼리, 정리된 헤더와 본문 해시를 먼저 봅니다. S3에는 선택한 모드에 맞는 x-amz-content-sha256이 들어갑니다.

03

참조와 다른 첫 지점 찾기

비밀 키 없이도 참조 표준 요청을 비교할 수 있습니다. 최종 서명 비교에만 폐기 가능한 테스트 키가 필요합니다. 일반 보고서는 Session Token을 가리며 정확한 원문 복사는 별도 버튼입니다.

서명 계산에서 확인할 수 있는 값

표준 요청의 여섯 부분

메서드, URI, 정렬된 쿼리, 표준 헤더, SignedHeaders와 본문 해시를 SigV4 형식으로 결합합니다. 중복 쿼리는 보존하고 `+`는 공백 대신 `%2B`로 인코딩합니다.

서명할 문자열과 범위

표준 요청의 SHA-256과 날짜/리전/서비스/aws4_request 범위를 보여 줍니다. 리전이나 서비스가 잘못되면 문자열과 파생 HMAC 키가 모두 달라집니다.

선택적 테스트 키 서명

비밀 키를 넣지 않아도 구조를 분석합니다. 일회용 Access Key ID와 Secret Access Key가 있을 때만 Signature와 Authorization을 계산하고 파생 키는 표시하지 않습니다.

참조값의 첫 차이

붙여 넣은 표준 요청을 줄별로, 64자리 서명을 값으로 비교합니다. SigV4 서명 불일치를 찾는 데 유용하지만 AWS가 요청을 수락했음을 보증하지 않습니다.

오프라인 진단의 범위

헤더 서명만 지원
Authorization 헤더용 AWS4-HMAC-SHA256을 계산합니다. 미리 서명된 URL, SigV4a, V2, 청크 업로드나 원시 cURL/HAR 가져오기는 지원하지 않습니다.
AWS 검증은 수행하지 않음
입력한 URL이나 AWS에 요청하지 않습니다. 테스트 HMAC이 일치해도 자격 증명 상태, IAM 권한, 프록시 이후의 실제 요청 바이트는 확인할 수 없습니다.
경로와 본문을 임의로 고치지 않음
S3 객체 경로를 정규화하지 않습니다. 모호한 점 세그먼트나 인코딩된 슬래시는 오류로 처리합니다. 본문 해시는 붙여 넣은 UTF-8 텍스트에만 적용됩니다.
임시 자격 증명 주의
Session Token은 x-amz-security-token 헤더에 서명됩니다. 정확한 표준 요청에는 값이 포함될 수 있어 일반 보고서에서는 가립니다. 가린 보고서로는 서명을 다시 계산할 수 없습니다.

AWS SigV4 서명 디버깅에 관한 질문

API Gateway의 IAM 인증에서 SigV4 서명 불일치는 어떻게 해결합니까?

클라이언트가 만든 표준 요청과 AWS 오류 응답의 기대값을 먼저 비교하세요. AWS SigV4 서명 디버깅에서 처음 다른 줄을 찾고 URI 인코딩, 쿼리 순서, 서명한 헤더와 본문 해시를 살펴보세요.

SignatureDoesNotMatch 오류는 왜 발생합니까?

서명 당시 입력과 서비스가 받은 요청이 다를 수 있습니다. 프록시가 경로나 헤더를 바꾸었는지, 시각·리전·서비스와 테스트 키 쌍이 맞는지 확인하세요.

비밀 키 없이 SigV4 서명을 검사할 수 있습니까?

표준 요청, 해시, 서명할 문자열은 만들고 참조와 비교할 수 있습니다. 최종 HMAC을 다시 계산하려면 대응하는 Secret Access Key가 필요하며, 없으면 임의의 서명을 보여 주지 않습니다.

AccessDenied가 나오면 서명은 올바른 것입니까?

오류 의미는 서비스와 인증 단계에 따라 다릅니다. 이 도구는 AWS를 호출하거나 IAM 정책을 읽지 않습니다. 서비스 로그와 권한 진단을 함께 확인하세요.

AWS가 계산한 표준 요청과 어디서 비교합니까?

일부 AWS 오류 응답은 기대 표준 요청이나 서명할 문자열을 포함합니다. SDK 디버그 로그에서도 클라이언트 값을 볼 수 있습니다. 참조 필드에 붙이기 전 실제 Session Token을 지우세요.

답을 못 찾으셨나요?

AWS SigV4 서명 디버깅 시작

공개 S3 예제로 계산을 확인한 뒤 비운영 요청을 비교하세요. AWS SigV4 서명 디버깅은 네트워크 전송 없이 차이를 보여 줍니다.