Mode C and Mode D

최신 업데이트:2024-11-18 10:20:55

토픽


이 문서는 인증 모드 C와 D에 대한 자세한 설명과 이를 사용하는 방법을 제공합니다.

인증 URL 구조 및 설명

인증 모드 C와 D는 URL에 인증 정보를 요청 매개 변수로 포함할 수 있습니다. 다음은 이 두 가지 모드의 URL 형식입니다:

인증 모드 C

http://domain/uri?key=signature&time=timestamp

인증 모드 D

http://domain/uri?time=timestamp&key=signature

이 URL 구조에서 key는 인증 서명을, time은 URL이 생성된 타임스탬프를 나타냅니다. 이러한 인증 매개 변수가 URL에 추가되면, CDN 엣지 서버는 이 정보를 확인하여 요청된 콘텐츠를 제공할지 여부를 결정합니다. 인증 모드 A와 B와 마찬가지로, 일단 설정되면 keytime의 순서는 고정되며, 클라이언트 요청은 이 순서를 따라야 합니다. 그렇지 않으면 CDN 엣지 서버는 요청을 거부합니다.

모드 C와 D에서는 keytime의 이름을 사용자 정의할 수 있습니다. 이러한 인증 매개 변수의 이름을 수정하는 방법에 대한 자세한 내용은 Key Parameter NameTime Parameter Name 섹션을 참조하십시오.

인증 URL의 필드 설명

필드 설명
domain CDNetworks CDN에 등록한 도메인입니다.
time 인증 URL에 포함된 타임스탬프로, URL이 생성된 시간을 나타냅니다. CDN 엣지 서버는 이 타임스탬프를 사용하여 URL이 여전히 유효한지 여부를 판단합니다. 현재 시간이 URL의 유효 기간을 초과하면 콘텐츠는 제공되지 않습니다.
time 값은 사전에 정의된 타임스탬프 형식을 따라야 합니다. 그렇지 않으면 인증에 실패합니다. 지원되는 타임스탬프 형식에 대한 자세한 내용은 이 문서의 Time Format 섹션을 참조하십시오.
key 인증 확인에 사용되는 암호화된 서명으로, 일반적으로 time 타임스탬프, 암호화 키 (ourkey), 실제 경로 (uri)를 조합하여 생성됩니다. 이 인증 매개 변수가 계산되는 방법에 대한 자세한 내용은 이 문서의 Signature Calculation Parameters 섹션을 참조하십시오.
uri CDN에서 콘텐츠를 요청하는 URL의 실제 경로입니다. 예를 들어, 원래 요청 URL이 http://cdnetworks.com/browse/index.html인 경우, uri/browse/index.html입니다. 요청 URL에 쿼리 매개 변수가 포함된 경우 (예: /browse/index.html?user=123), uri에는 쿼리 문자열을 제외한 요청 객체의 경로만 포함되어야 합니다.

CDN 엣지 인증 논리

CDN 엣지 서버가 요청을 수신하면, 먼저 인증 URL의 time 매개 변수가 만료되었는지 확인합니다:

  • time 매개 변수와 유효 기간을 더한 값이 현재 시간보다 적으면, URL은 만료된 것으로 간주되어 접근이 거부되고 HTTP 403 오류가 반환됩니다.
  • 반대로, time 매개 변수와 유효 기간을 더한 값이 현재 시간 이상이면, URL은 유효한 것으로 간주됩니다. 서버는 요청 URL에 대해 예상되는 인증 서명 (key)을 계산하고, 요청에 포함된 서명과 비교합니다. 두 값이 일치하면 인증이 성공하며, 서버는 콘텐츠 요청을 처리합니다. 일치하지 않으면 요청이 거부되고 HTTP 403 오류가 반환됩니다.

모드 C 및 모드 D 인증 설정 방법

Authentication Modes 설정에서 필요에 따라 Mode C 또는 Mode D를 선택하십시오. 다음 섹션에서는 각 설정 필드의 목적과 방법을 설명합니다.

설정 이미지

인증 키 ($ourkey)

Authentication Key ($ourkey)는 URL의 인증 서명 key를 생성하는 데 사용되는 고유한 문자열입니다. 이 키는 귀하와 당사의 CDN 서버 간에만 공유되므로, 인증 매개 변수의 보안을 강화하여 제3자가 무단으로 해독하기 어렵게 만듭니다. 콘솔에서 세미콜론 (;)으로 구분하여 여러 ourkey 값을 설정할 수 있습니다.

여러 ourkey 값이 설정된 경우, CDN 엣지 서버는 요청을 인증하기 위해 이러한 값을 설정된 순서대로 사용합니다. 첫 번째 ourkey가 실패하면, 서버는 다음 ourkey를 시도하며, 유효한 키가 발견되거나 모든 키가 실패할 때까지 계속 진행합니다.

시간 형식

인증 URL을 구성하기 위해 time 필드는 다양한 요구 사항을 충족하기 위해 다섯 가지 선택 가능한 형식을 제공합니다:

타임스탬프 형식 설명
10진수 Unix 타임스탬프 예: 1586338211은 2020년 4월 8일 17:30:11 UTC를 나타냅니다.
16진수 Unix 타임스탬프 예: 5e8e2463은 16진수로 1586338211을 나타냅니다.
밀리초 단위 Unix 타임스탬프 예: 1586338211000은 같은 시점을 밀리초 단위로 나타냅니다.
YYYYMMDDHHMMSS 예: 20200408173011은 2020년 4월 8일 17:30:11을 나타냅니다.
YYYYMMDDHHMM 예: 202004081730은 2020년 4월 8일 17:30을 나타냅니다.

서명 계산 알고리즘

서명 key는 암호화 알고리즘을 사용하여 생성됩니다. 기본적으로 MD5 알고리즘을 사용합니다. 보안을 강화하기 위해 다른 암호화 알고리즘이 필요한 경우, 당사의 기술 지원 팀에 문의하십시오.

서명 계산 매개 변수

서명 key를 생성하려면 time, ourkey, 및 uri와 같은 매개 변수를 선택적으로 포함할 수 있습니다. 이러한 필드에 대한 자세한 설명은 이전 문서 인증 URL의 필드 설명을 참조하십시오.

암호화된 문자열 key를 생성하는 과정에서 위의 매개 변수 중 하나 이상을 포함하고, 조합 순서를 지정할 수 있습니다. 예를 들어, 조합 순서를 $uri$ourkey$time으로 선택하면 다음을 의미합니다:

  • URL 요청 주소 (uri)가 시작 부분입니다.
  • 그 다음은 커스텀 암호화 키 (ourkey)입니다.
  • 마지막으로 타임스탬프 (time)입니다.

예를 들어, URL이 http://cdnetworks.com/browse/index.html이고, ourkeycdnetworks, time202405131620인 경우, 생성된 암호화되지 않은 문자열 key/browse/index.htmlcdnetworks202405131620이 됩니다.

서명 매개 변수 이름

이것은 URL의 인증 서명 매개 변수의 이름을 나타내며, 기본적으로 key로 설정되어 있습니다. 예를 들어, 모드 C에서는 다음과 같습니다:

http://domain/uri?key=signature&time=timestamp

필요에 따라 이 이름을 사용자 정의할 수 있습니다. 예를 들어, 이 이름을 cdnwkey로 설정하면 사용자는 URL에서 key=abc 대신 쿼리 매개 변수 cdnwkey=abc를 사용하여 CDN 엣지 서버에서 콘텐츠를 요청할 수 있습니다.

타임스탬프 매개 변수 이름

타임스탬프 매개 변수 이름은 URL의 타임스탬프 매개 변수를 나타내며, 기본적으로 time으로 설정되어 있습니다. 필요에 따라 이 매개 변수의 이름을 사용자 정의할 수 있습니다. 예를 들어, 이 이름을 cdnwtime으로 설정하면 사용자는 URL에서 time=123 대신 쿼리 매개 변수 cdnwtime=123를 사용하여 CDN 엣지 서버에서 콘텐츠를 요청할 수 있습니다.

유효 시간 (초)

인증 정보의 유효 시간을 설정하기 위해 세 가지 방법을 제공합니다:

  • 유효 기간의 상한 설정: time 필드 후에 최대 유효 기간을 초 단위로 설정하려면 0 이상의 정

수(예: 60)를 입력하십시오. 예를 들어, 60을 입력하면 요청 URL의 time 필드 후 1분 동안 인증 정보가 유효합니다.

  • 유효 기간의 상하한 설정: 쉼표로 구분된 두 개의 값을 입력하십시오. 첫 번째 값은 타임스탬프 이전의 초 수 (≤0), 두 번째 값은 타임스탬프 이후의 초 수 (≥0)를 나타냅니다. 예를 들어, -60,60은 타임스탬프 전후 1분 동안 인증 정보가 유효함을 의미합니다.
  • 유효 기간 검증 안함: 마이너스 기호 (-)를 입력하여 유효 기간 검사를 비활성화합니다.

Key와 Time의 위치 교환 가능

기본적으로, 모드 C와 D에서는 URL에서 인증 서명과 타임스탬프 (keytime 매개 변수)의 위치가 고정되어 있으며 인증 모드의 지정된 순서를 따라야 합니다. 위치 교환을 Yes로 설정하면 이들의 위치를 교환할 수 있습니다.

예를 들어, 다음 두 개의 URL은 CDN 엣지 서버에서 인증된 것으로 간주되어, 클라이언트에 콘텐츠를 제공합니다:

http://cdnetworks.com/browse/index.html?key=abc&time=123

http://cdnetworks.com/browse/index.html?time=123&key=abc

URL 인증 설정의 빠른 검증

설정 오류가 온라인 비즈니스에 영향을 미치는 것을 방지하기 위해, 먼저 설정을 테스트 환경에 배포하는 것이 좋습니다. 설정이 정확함을 확인한 후에 라이브 환경에 공식적으로 적용할 수 있습니다. 테스트 환경에 설정을 배포하는 방법에 대한 자세한 내용은 Verify Configurations Through Pre-Deployment 튜토리얼을 참조하십시오.

또한, CDN 콘솔에서 사용할 수 있는 Timestamp Anti-Hotlinking Calculator를 사용하여 URL 인증 매개 변수를 생성하고 설정을 신속하게 검증할 수 있습니다. 자세한 내용은 Timestamp Anti-Hotlinking Calculator 문서를 참조하십시오.

이 문서의 내용이 도움이 되었습니까?
아니오
정상적으로 제출되었습니다.피드백을 주셔서 감사합니다.앞으로도 개선을 위해 노력하겠습니다.