AWS 서명 버전 4 요청 요소 - AWS 일반 참조

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWS 서명 버전 4 요청 요소

버전 4 서명을 사용하는 각 HTTP/HTTPS 요청은 이러한 요소를 반드시 포함해야 합니다.

  • 엔드포인트 사양

  • 작업

  • 필수 및 선택적 파라미터

  • 날짜

  • 인증 파라미터

엔드포인트 사양

이 사양은 HTTP/1.1 요청의 Host 헤더로 지정됩니다. 이 헤더는 dynamodb.us-east-1.amazonaws.com 같은 요청을 전송하는 컴퓨터의 DNS 이름을 지정합니다.

HTTP/1.1 요청에 Host 헤더를 포함해야 합니다. HTTP/2 요청의 경우에는 :authority 헤더나 Host 헤더를 사용할 수 있습니다. HTTP/2 사양의 규정 준수용으로는 :authority 헤더만 사용하십시오. 모든 HTTP 서비스가 HTTP/2를 지원하지는 않으니, 자세한 내용은 서비스 설명서에서 확인하십시오.

엔드포인트에는 일반적으로 서비스 이름과 리전이 포함되며, 두 항목 모두 Credential 인증 파라미터의 일부로 사용해야 합니다. 예를 들어 eu-west-1 리전의 Amazon DynamoDB 엔드포인트는 dynamodb.eu-west-1.amazonaws.com입니다. 리전을 지정하지 않으면 웹 서비스는 기본 리전인 us-east-1을 사용합니다. 전역적으로 고유한 엔드포인트를 사용하는 IAM 같은 서비스를 사용한다면 기본 리전(us-east-1)을 (이 주제 후반부에서 설명하는) Credential 인증 파라미터의 일부로 사용하십시오.

AWS가 지원하는 전체 엔드포인트 목록은 리전 및 엔드포인트를 참조하십시오.

작업

이 요소는 DynamoDB CreateTable 작업이나 Amazon EC2 DescribeInstances 작업처럼 웹 서비스가 수행할 작업을 지정합니다. 지정한 작업은 요청에서 사용하는 파라미터를 결정합니다. 쿼리 API의 경우 작업은 API 이름입니다. (RESTful API 같은) 비쿼리 API의 경우에는 서비스 설명서에서 적절한 작업을 확인하십시오.

필수 및 선택적 파라미터

이 요소는 요청 작업에 대한 파라미터를 지정합니다. 웹 서비스의 각 작업에는 API 호출을 정의하는 필수 및 선택적 파라미터 세트가 있습니다. API 버전은 대부분 필수 파라미터입니다. 필수 및 선택적 파라미터 관련 세부 정보는 서비스 설명서를 참조하십시오.

날짜

요청을 한 날짜 및 시간입니다. 요청에 날짜를 포함하면 타사가 요청을 가로채고 나중에 다시 전송하지 못하도록 차단할 수 있습니다. 날짜는 ISO8601 기본 형식을 이용해 x-amz-date 헤더를 통해 YYYYMMDD'T'HHMMSS'Z' 형식으로 지정됩니다.

인증 파라미터

사용자가 전송하는 각 요청에는 AWS가 요청의 유효성 및 진위를 확인하기 위해 사용하는 다음 파라미터 집합을 포함해야 합니다.

  • 알고리즘. 사용자가 서명 알고리즘의 일부로 사용하는 해시 알고리즘입니다. 예를 들어 SHA-256으로 해시를 만든다면 AWS4-HMAC-SHA256 값을 사용하십시오.

  • 자격 증명 범위. 사용자의 액세스 키 ID와 자격 증명 범위 구성 요소를 연결해 형성한, 슬래시('/')로 구분한 문자열입니다. 자격 증명 범위에는 YYYYMMDD 형식의 날짜, AWS 리전, 서비스 이름, 특수 종료 문자열(aws4_request)이 포함됩니다. 예를 들어 다음 문자열은 us-east-1 리전의 IAM 요청용 Credential 파라미터를 나타냅니다.

    AKIAIOSFODNN7EXAMPLE/20111015/us-east-1/iam/aws4_request

    중요

    리전, 서비스 이름, 특수 종료 문자열에는 소문자를 사용해야 합니다.

  • SignedHeaders 서명에 포함할 HTTP/HTTPS를 세미콜론(';')으로 구분한 목록입니다.

  • 서명 작업 3: AWS 서명 버전 4에 대한 서명 계산에서 설명하는 서명 작업의 출력을 나타내는, 16진수로 인코딩한 문자열입니다. Algorithm 파라미터에서 지정한 알고리즘을 사용해 서명을 계산해야 합니다.

샘플 서명 요청을 보려면 전체 서명 버전 4 서명 프로세스 예(Python) 단원을 참조하십시오.