User-Agent Access Rules

최신 업데이트:2024-07-12 18:12:32

클라이언트가 웹 서버에 요청을 보낼 때, 일반적으로 User-Agent 헤더를 포함하여 요청이 시작된 디바이스와 브라우저를 식별합니다. 여기에는 운영 체제 및 버전, 브라우저 종류 및 버전이 상세히 기록되어 있습니다. 따라서 이 헤더를 기반으로 접근 제어를 수행할 수 있습니다. CDN 엣지 서버가 클라이언트 요청을 받으면, HTTP 요청 헤더의 User-Agent 필드의 정보를 확인하고 특정 규칙을 준수하는 사용자 요청을 허용하거나 거부합니다.

User-Agent 접근 규칙은 다음 시나리오에 적합합니다:

  • 특정 브라우저에 의해서만 콘텐츠 접근이 허용되는 경우, 예를 들어 Internet Explorer만 접근을 허용하고 Chrome 접근을 거부하는 경우, User-Agent 방지 기능을 사용할 수 있습니다.
  • 가속화된 도메인이 특정 클라이언트에 의해서만 접근이 허용되는 경우, 예를 들어 전용 클라이언트가 요청을 보낼 때 특정 User-Agent 정보를 포함하는 경우, User-Agent 접근 규칙을 사용할 수 있습니다.

User-Agent 블랙리스트 및 화이트리스트 설정 방법

  1. CDNetworks 콘솔에 로그인하고 적절한 제품을 선택합니다.
  2. 구성으로 이동하여 구성하려는 도메인을 찾고 구성 편집을 클릭합니다China Premium Service控制台自助配置功能上线.
  3. 왼쪽 사이드바에서 핫링크 방지 - UA 헤더 핫링크 방지로 이동하여 추가를 클릭합니다.
  4. 필요에 따라 다음과 같이 설정합니다.

적용 범위
이는 User-Agent 규칙이 적용될 요청의 범위를 정의합니다. 다음 옵션 중에서 선택할 수 있습니다:

설정 설명
모든 요청 액세스 제어 규칙은 모든 유형의 요청에 적용됩니다.
홈페이지만 도메인의 루트 디렉터리에만 적용됩니다. 예: http://domain/ 또는 https://domain/.
지정된 파일 유형 특정 유형의 파일에만 적용됩니다. 왼쪽에 있는 사전 정의된 파일 유형에서 선택하거나 사용자 정의 파일 유형을 정의할 수 있습니다. 여러 사용자 정의 유형은 세미콜론 ;으로 구분합니다 (예: jpg;png).
지정된 URI 특정 URI의 콘텐츠에 대한 요청에만 적용됩니다. 두 가지 URI 일치 옵션이 있습니다:
정확한 일치: 매개 변수를 포함한 완전한 URI (예: path/index.html?abc=123).
매개 변수 무시 일치: 쿼리 매개 변수를 제외한 URI (예: path/index.html).
지정된 디렉터리 특정 디렉터리 아래의 요청에 적용됩니다. 예를 들어, /file/abc/는 http://domain/file/abc/* 아래의 모든 콘텐츠에 적용됩니다.
참고: 디렉터리는 /로 시작하고 끝나야 하며, 문자, 숫자 및 특정 특수 문자 (언더스코어, 하이픈, 퍼센트 기호, 닷)만 포함할 수 있습니다. 여러 디렉터리는 줄 바꿈으로 구분해야 합니다.
URL 패턴 정규 표현식을 사용하여 규칙이 적용될 요청 범위를 제어합니다. 예를 들어, 패턴 *.jpg$.jpg로 끝나는 모든 URL에 액세스 제어가 적용됨을 보장합니다.

User-Agent 유형
User-Agent 블랙리스트나 화이트리스트를 설정할 수 있습니다:

구성 설명
User-Agent 블랙리스트 HTTP 요청 헤더의 User-Agent가 블랙리스트와 일치하면, 사용자의 액세스가 거부됩니다.
User-Agent 화이트리스트 HTTP 요청 헤더의 User-Agent가 화이트리스트와 일치하는 경우에만 사용자가 콘텐츠에 접근할 수 있습니다.


User-Agent 블랙리스트와 화이트리스트는 여러 값을 포함할 수 있으며, 각각은 줄 바꿈으로 구분해야 합니다.
시스템은 화이트리스트 규칙 하나만을 지원합니다. 여러 User-Agent 값이 필요한 경우, 이들을 모두 단일 화이트리스트에 포함해야 합니다.

조치
User-Agent가 설정된 규칙을 충족하지 못하고 요청이 CDN에 의해 거부된 경우, 직접 오류 코드를 반환할지 또는 다른 URL로 리디렉션할지 선택합니다:

  • 액세스 거부: 액세스 검증이 실패하면 403 오류를 반환합니다.
  • 리디렉션 URL: 검증에 실패한 요청을 지정된 URL로 리디렉션합니다.

대소문자 구분 무시
블랙리스트나 화이트리스트 규칙이 대소문자를 구분할지 여부를 설정할 수 있습니다. Yes로 설정하면, 리스트 안의 값은 대소문자를 구분하지 않습니다. 예를 들어, 화이트리스트에 Chrome/123.0.0.0이 허용되어 있으면, User-Agent가 Chrome/123.0.0.0이든 chrome/123.0.0.0이든 요청은 허용됩니다.

우선 순위
여러 액세스 제어 규칙이 설정된 경우, CDN은 그들의 우선 순위에 따라 실행합니다. 숫자가 클수록 우선 순위가 높습니다.

구성을 완료한 후 확인을 클릭하고 다음을 선택하여 설정을 제출하세요. 프로덕션 환경에 잠재적인 중단을 최소화하기 위해, 스테이징 환경에서 사전 배포 테스트를 강력히 권장합니다. 이 중요한 단계는 설정이 라이브로 전환되기 전에 정확하다는 것을 보장합니다. 설정의 정확성을 확인한 후, 지금 배포를 클릭하여 라이브 환경에 구현하세요. 설정은 통상적으로 3-5분 내에 유효해집니다. 사전 배포 테스트를 수행하고 구성의 효과를 검증하기 위한 포괄적인 가이드는 튜토리얼 스테이징 환경에서의 구성 배포 및 검증을 참조하세요.

주의 사항

User-Agent 블랙리스트와 화이트리스트를 동시에 설정하지 마십시오. 이렇게 하면 모든 CDN 접근이 거부될 수 있으며, 온라인 운영에 혼란을 초래할 수 있습니다. 예를 들어, 아래와 같이 User-Agent 블랙리스트와 화이트리스트를 모두 구성하면 모든 액세스가 거부될 수 있습니다.

모든 접근이 거부되는 이유는 무엇인가요?

  1. 요청이 User-Agent 값 Chrome/123.0.0.0을 포함하면, User-Agent 블랙리스트 규칙과 일치하고 CDN에 의해 액세스가 거부됩니다.
  2. 반대로, User-Agent Chrome/123.0.0.0을 포함하지 않는 요청은 블랙리스트에 의해 거부되지 않지만, 화이트리스트(오직 User-Agent Chrome/123.0.0.0을 포함하는 요청만 허용)의 요건을 충족하지 못하여 또한 거부됩니다.

블랙리스트와 화이트리스트를 모두 구성해야 하는 경우, 적절한 설정을 보장하기 위해 기술 지원팀에 문의하십시오.

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