Mode A and Mode B

최신 업데이트:2024-11-18 10:19:21

이 문서는 인증 모드 A 및 B에 대한 자세한 설명과 이를 사용하는 방법에 대한 지침을 제공합니다.

인증 URL 구조

인증 정보가 URL 경로에 직접 포함될 수 있는 인증 모드 A와 B를 제공합니다. 이 두 가지 모드의 URL 형식은 다음과 같습니다:

인증 모드 A

http://domain/<time>/<key>/uri

인증 모드 B

http://domain/<key>/<time>/uri

이 URL 구조에서 <key><time>는 인증 매개 변수입니다. CDN 엣지 서버는 이 정보를 확인하여 요청된 콘텐츠를 제공할지 여부를 결정합니다. 인증 모드 A와 B에서 <key><time>의 순서는 고정되어 있으며 변경할 수 없습니다.

기호 <>는 인증 매개 변수의 위치를 나타냅니다. 이 기호는 실제 URL에는 나타나지 않습니다.

인증 URL의 필드 설명

필드 설명
domain CDNetworks CDN에 등록한 도메인입니다.
time 인증 URL에 포함된 타임스탬프로, URL이 생성된 시간을 나타냅니다. CDN 엣지 서버는 이 타임스탬프를 사용하여 URL이 여전히 유효한지 여부를 판단합니다. 현재 시간이 URL의 유효 기간을 초과하면 콘텐츠는 제공되지 않습니다.
time 값은 사전에 정의된 타임스탬프 형식을 따라야 합니다. 그렇지 않으면 인증에 실패합니다. 지원되는 타임스탬프 형식에 대한 자세한 내용은 이 문서의 타임스탬프 형식 섹션을 참조하십시오.
key 인증 확인에 사용되는 암호화된 서명으로, 일반적으로 time 타임스탬프, 암호화 키 (ourkey), 실제 경로 (uri)를 조합하여 생성됩니다. 이 인증 매개 변수가 계산되는 방법에 대한 자세한 내용은 서명 계산 매개 변수 섹션을 참조하십시오.
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 오류가 반환됩니다.

설정 방법

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

인증 키 ($ourkey)

Authentication Key ($ourkey)는 URL의 인증 서명 key를 생성하는 데 사용되는 고유한 문자열입니다. 이 ourkey는 귀하와 당사의 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. 이들의 조합 순서를 지정하십시오. 예를 들어, $uri$ourkey$time으로 설정하면 다음을 의미합니다:

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

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

유효 시간 (초)

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

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

키와 시간의 위치를 상호 교환 가능

이 옵션은 요청 URL에서 keytime의 위치를 상호 교환할 수 있는지 여부를 결정합니다. 그러나 Mode A 또는 Mode B에서는 keytime의 위치가 고정되어 있으며 지정된 순서를 따라야 합니다. 따라서 이 설정 항목은 Modes A 및 B에서는 적용되지 않습니다.

URL 인증 설정의 빠른 검증

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

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

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