에 대한 새로운 콘솔 환경 소개 AWS WAF
이제 업데이트된 환경을 사용하여 콘솔의 모든 위치에서 AWS WAF 기능에 액세스할 수 있습니다. 자세한 내용은 업데이트된 콘솔 환경 작업 섹션을 참조하십시오.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
자율 시스템 번호(ASN) 일치 규칙 문
의 ASN 일치 규칙 문 AWS WAF 을 사용하면 요청의 IP 주소와 연결된 ASN(자율 시스템 번호)을 기반으로 웹 트래픽을 검사할 수 있습니다. ASNs은 인터넷 서비스 제공업체, 엔터프라이즈, 대학 또는 정부 기관과 같은 조직에서 관리하는 대규모 인터넷 네트워크에 할당된 고유 식별자입니다. ASN 일치 문을 사용하면 개별 IP 주소를 관리할 필요 없이 특정 네트워크 조직의 트래픽을 허용하거나 차단할 수 있습니다. 이 접근 방식은 ASNs이 IP 범위보다 덜 자주 변경되므로 IP 기반 규칙에 비해 액세스를 제어하는 보다 안정적이고 효율적인 방법을 제공합니다.
ASN 일치는 알려진 문제가 있는 네트워크의 트래픽을 차단하거나 신뢰할 수 있는 파트너 네트워크에서만 액세스를 허용하는 등의 시나리오에 특히 유용합니다. ASN 일치 문은 선택적 전달 IP 구성을 통해 클라이언트 IP 주소를 유연하게 결정할 수 있으므로 콘텐츠 전송 네트워크(CDNs) 또는 역방향 프록시를 사용하는 설정 등 다양한 네트워크 설정과 호환됩니다.
참고
ASN 매칭은 표준 인증 및 권한 부여 제어를 보완하지만 대체하지는 않습니다. 애플리케이션에서 모든 요청의 ID를 확인하려면 IAM과 같은 인증 및 권한 부여 메커니즘을 구현하는 것이 좋습니다.
ASN 일치 문 작동 방식
AWS WAF 는 IP 주소를 기반으로 요청의 ASN을 결정합니다. 기본적으로는 웹 요청 오리진의 IP 주소를 AWS WAF 사용합니다. 규칙 문 설정에서 전달된 IP 구성을 활성화X-Forwarded-For
하여와 같은 대체 요청 헤더의 IP 주소를 AWS WAF 사용하도록를 구성할 수 있습니다.
ASN 일치 문은 요청의 ASN을 규칙에 지정된 ASNs 목록과 비교합니다. ASN이 목록의 ASN과 일치하면 문이 true로 평가되고 관련 규칙 작업이 적용됩니다.
매핑되지 않은 ASNs 처리
가 유효한 IP 주소에 대한 ASN을 확인할 AWS WAF 수 없는 경우 ASN 0을 할당합니다. 이러한 사례를 명시적으로 처리하기 위해 규칙에 ASN 0을 포함할 수 있습니다.
잘못된 IP 주소에 대한 대체 동작
전달된 IP 주소를 사용하도록 ASN 일치 문을 구성할 때 지정된 헤더에 유효하지 않거나 누락된 IP 주소가 있는 요청에 대해 일치 또는 일치하지 않음의 대체 동작을 지정할 수 있습니다.
규칙 문 특성
중첩 가능 – 이러한 문 유형을 중첩할 수 있습니다.
WCUs – 1WCU
이 문은 다음 설정을 사용합니다.
-
ASN 목록 - ASN 일치 항목과 비교할 ASN 번호 배열입니다. 유효한 값의 범위는 0~4294967295입니다. 각 규칙에 대해 최대 100ASNs을 지정할 수 있습니다.
-
(선택 사항) 전달된 IP 구성 - 기본적으로 웹 요청 오리진의 IP 주소를 AWS WAF 사용하여 ASN을 결정합니다. 또는
X-Forwarded-For
대신와 같은 HTTP 헤더에서 전달된 IP를 사용하도록 규칙을 구성할 수 있습니다. 헤더에서 첫 번째 주소를 사용할지, 마지막 주소를 사용할지 또는 주소를 사용할지 지정합니다. 이 구성을 사용하면 헤더에 잘못된 형식의 IP 주소가 있는 웹 요청에 적용할 폴백 동작도 지정할 수 있습니다. 폴백 동작은 요청에 대한 일치 결과를 일치하거나 일치하지 않음으로 설정합니다. 자세한 내용은 전달된 IP 주소 사용을 참조하세요.
이 규칙 문을 찾을 수 있는 위치
-
콘솔의 규칙 빌더 - 요청 옵션에서 ASN에서 오리진을 선택합니다.
-
API - AsnMatchStatement
예시
이 예제에서는 X-Forwarded-For
헤더에서 파생된 두 개의 특정 ASNs. 헤더의 IP 주소 형식이 잘못된 경우 구성된 대체 동작은 입니다NO_MATCH
.
{ "Action": { "Block": {} }, "Name": "AsnMatchStatementRule", "Priority": 1, "Statement": { "AsnMatchStatement": { "AsnList": [64496, 64500] }, "ForwardedIPConfig": { "FallbackBehavior": "NO_MATCH", "HeaderName": "X-Forwarded-For" } }, "VisibilityConfig": { "CloudWatchMetricsEnabled": true, "MetricName": "AsnMatchRuleMetrics", "SampledRequestsEnabled": true } }, "VisibilityConfig": { "CloudWatchMetricsEnabled": true, "MetricName": "WebAclMetrics", "SampledRequestsEnabled": true } }