AWS CLI를 사용한 AWS WAF Classic 예제
다음 코드 예제에서는 AWS WAF Classic에서 AWS Command Line Interface를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여 줍니다.
작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.
각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.
주제
작업
다음 코드 예제에서는 put-logging-configuration
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
지정된 Kinesis Firehose 스트림 ARN을 사용하여 웹 ACL ARN에 대한 로깅 구성을 생성하는 방법
다음
put-logging-configuration
예제에서는 CloudFront를 사용한 WAF에 대한 로깅 구성을 표시합니다.aws waf put-logging-configuration \ --logging-configuration
ResourceArn=arn:aws:waf::123456789012:webacl/3bffd3ed-fa2e-445e-869f-a6a7cf153fd3,LogDestinationConfigs=arn:aws:firehose:us-east-1:123456789012:deliverystream/aws-waf-logs-firehose-stream,RedactedFields=[]
출력:
{ "LoggingConfiguration": { "ResourceArn": "arn:aws:waf::123456789012:webacl/3bffd3ed-fa2e-445e-869f-a6a7cf153fd3", "LogDestinationConfigs": [ "arn:aws:firehose:us-east-1:123456789012:deliverystream/aws-waf-logs-firehose-stream" ] } }
-
API 세부 정보는 AWS CLI 명령 참조의 PutLoggingConfiguration
섹션을 참조하세요.
-
다음 코드 예제에서는 update-byte-match-set
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
바이트 일치 세트를 업데이트하는 방법
다음
update-byte-match-set
명령은 ByteMatchSet에서 ByteMatchTuple 객체(필터)를 삭제합니다.aws waf update-byte-match-set --byte-match-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
--change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
--updates Action="DELETE",ByteMatchTuple={FieldToMatch={Type="HEADER",Data="referer"},TargetString="badrefer1",TextTransformation="NONE",PositionalConstraint="CONTAINS"}자세한 내용은 AWS WAF 개발자 안내서의 문자열 일치 조건 작업을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateByteMatchSet
섹션을 참조하세요.
-
다음 코드 예제에서는 update-ip-set
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
IP 세트를 업데이트하는 방법
다음
update-ip-set
명령은 IPv4 주소로 IPSet를 업데이트하고 IPv6 주소를 삭제합니다.aws waf update-ip-set --ip-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
--change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
--updates Action="INSERT",IPSetDescriptor={Type="IPV4",Value="12.34.56.78/16"},Action="DELETE",IPSetDescriptor={Type="IPV6",Value="1111:0000:0000:0000:0000:0000:0000:0111/128"}또는 JSON 파일을 사용하여 입력을 지정할 수도 있습니다. 예:
aws waf update-ip-set --ip-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
--change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
--updatesfile://change.json
JSON 파일의 콘텐츠가 있는 위치:
[ { "Action": "INSERT", "IPSetDescriptor": { "Type": "IPV4", "Value": "12.34.56.78/16" } }, { "Action": "DELETE", "IPSetDescriptor": { "Type": "IPV6", "Value": "1111:0000:0000:0000:0000:0000:0000:0111/128" } } ]
자세한 내용은 AWS WAF 개발자 안내서의 IP 일치 조건 작업을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateIpSet
섹션을 참조하세요.
-
다음 코드 예제에서는 update-rule
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
규칙을 업데이트하는 방법
다음
update-rule
명령은 규칙에서 Predicate 객체를 삭제합니다.aws waf update-rule --rule-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
--change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
--updates Action="DELETE",Predicate={Negated=false,Type="ByteMatch",DataId="MyByteMatchSetID"}자세한 내용은 AWS WAF 개발자 안내서의 규칙 작업을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateRule
섹션을 참조하세요.
-
다음 코드 예제에서는 update-size-constraint-set
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
크기 제약 조건 세트를 업데이트하는 방법
다음
update-size-constraint-set
명령은 크기 제약 조건 세트에서 SizeConstraint 객체(필터)를 삭제합니다.aws waf update-size-constraint-set --size-constraint-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
--change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
--updates Action="DELETE",SizeConstraint={FieldToMatch={Type="QUERY_STRING"},TextTransformation="NONE",ComparisonOperator="GT",Size=0}자세한 내용은 AWS WAF 개발자 안내서의 크기 제약 조건 작업을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateSizeConstraintSet
섹션을 참조하세요.
-
다음 코드 예제에서는 update-sql-injection-match-set
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
SQL 명령어 삽입 일치 세트를 업데이트하는 방법
다음 명령은 SQL 명령어 삽입 일치 세트의 SqlInjectionMatchTuple 객체(필터)를 삭제합니다.
aws waf update-sql-injection-match-set --sql-injection-match-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
--change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
--updates Action="DELETE",SqlInjectionMatchTuple={FieldToMatch={Type="QUERY_STRING"},TextTransformation="URL_DECODE"}자세한 내용은 AWS WAF 개발자 안내서의 SQL 명령어 삽입 일치 조건 작업을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateSqlInjectionMatchSet
섹션을 참조하세요.
-
다음 코드 예제에서는 update-web-acl
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
웹 ACL을 업데이트하는 방법
다음
update-web-acl
명령은 WebACL 에서ActivatedRule
객체를 삭제합니다.aws waf update-web-acl --web-acl-id a123fae4-b567-8e90-1234-5ab67ac8ca90 --change-token 12cs345-67cd-890b-1cd2-c3a4567d89f1 --updates Action="DELETE",ActivatedRule='{Priority=1,RuleId="WAFRule-1-Example",Action={Type="ALLOW"},Type="REGULAR"}'
출력:
{ "ChangeToken": "12cs345-67cd-890b-1cd2-c3a4567d89f1" }
자세한 내용은 AWS WAF, AWS Firewall Manager, AWS Shield 고급 개발자 안내서의 웹 ACL 작업을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateWebAcl
섹션을 참조하세요.
-
다음 코드 예제에서는 update-xss-match-set
을 사용하는 방법을 보여 줍니다.
- AWS CLI
-
XSSMatchSet를 업데이트하는 방법
다음
update-xss-match-set
명령은 XssMatchSet에서 XssMatchTuple 객체(필터)를 삭제합니다.aws waf update-xss-match-set --xss-match-set-id
a123fae4-b567-8e90-1234-5ab67ac8ca90
--change-token12cs345-67cd-890b-1cd2-c3a4567d89f1
--updates Action="DELETE",XssMatchTuple={FieldToMatch={Type="QUERY_STRING"},TextTransformation="URL_DECODE"}자세한 내용은 AWS WAF 개발자 안내서의 교차 사이트 스크립팅 일치 조건 작업을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateXssMatchSet
섹션을 참조하세요.
-