Generated banner for Shieldadvanced
Generated logo for Shieldadvanced

Shieldadvanced

AWSOfficialPublished by AWS

  • Skill
  • Tool integration
  • Cloud and DevOps
  • Apache-2.0
  • No issues found

From the author

Configures AWS Shield Advanced for enhanced Distributed Denial of Service (DDoS) protection: subscribing accounts and adding resource protections, enabling automatic application layer (layer 7) mitigation through AWS WAF, configuring health-based detection with Route 53 health checks, setting up Shield Response Team (SRT) access and proactive engagement, reviewing DDoS events and requesting cost protection credits, and aggregating resources into protection groups. Applicable when the user wants stronger DDoS protection for internet-facing resources (CloudFront, Application or Network Load Balancers, Elastic IP addresses, Global Accelerator, or Route 53 hosted zones), wants expert help during an attack, or wants to recover attack-driven scaling charges. Routes to the right per-task procedure in references. Not applicable for authoring AWS WAF rules (waf skill), creating Route 53 health checks (route53 skill), or org-wide Shield Advanced rollout with Firewall Manager (firewallmanager skill).
— the description by AWS

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

This skill provides domain expertise and procedural guidance for managing AWS Shield Advanced, the premium tier for DDoS protection on AWS. It acts as a central router to specific, self-contained reference procedures for subscribing accounts, protecting resources, enabling automatic application-layer mitigation, configuring health-based detection, managing Shield Response Team (SRT) support, reviewing DDoS events, and creating protection groups. The skill emphasizes the importance of defense-in-depth by integrating with AWS WAF and Route 53, while providing necessary security considerations for IAM roles and log management.

What it does

  • Routes users to specific procedures for Shield Advanced configuration tasks.
  • Guides the subscription process and addition of resources to Shield Advanced protection.
  • Facilitates the setup of automatic layer 7 mitigation via AWS WAF integration.
  • Configures health-based detection using Route 53 health checks to improve attack detection accuracy.
  • Manages Shield Response Team (SRT) access and proactive engagement settings.
  • Assists in reviewing DDoS events and requesting cost protection credits.

When to use it

  • When you need to implement enhanced DDoS protection for internet-facing resources like CloudFront or ALBs.
  • When you require expert assistance from the Shield Response Team during an active attack.
  • When you need to recover costs associated with attack-driven scaling.
  • When you want to tune detection sensitivity by grouping related resources.
  • When you need to integrate health-based detection to reduce false positives.

Advantages

  • Provides a structured, task-based approach to complex security configurations.
  • Ensures security best practices by mandating audit logging and least-privilege access.
  • Clarifies the distinction between detection-only features and active mitigation controls.
  • Reduces configuration errors by providing specific constraints for each task.
  • Centralizes guidance for both operational setup and post-event analysis.

Usage examples

“How do I subscribe my AWS account to Shield Advanced?”
The agent will route you to the specific reference procedure for subscribing and protecting resources, ensuring you follow the correct sequence of operations.
“I want the Shield Response Team to help me during an attack.”
The agent will guide you through setting up SRT support and proactive engagement, including the prerequisite of configuring a valid Route 53 health check.
“How can I group my load balancers for better DDoS detection?”
The agent will provide the procedure for creating a protection group and help you decide between sum, mean, or max aggregation based on your traffic topology.
“Can I use Shield Advanced to automatically block layer 7 floods?”
The agent will direct you to the procedure for enabling automatic application layer mitigation, which involves configuring AWS WAF rules to respond to detected threats.

Install

  1. Download the skill as a ZIP:

    https://mp-staging.autogineer.com/agent-skills/aws/shieldadvanced/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip shieldadvanced.zip -d .agents/skills

Documentation by AWS

AWS Shield Advanced

Overview

Domain expertise for configuring AWS Shield Advanced, the paid tier that adds enhanced Distributed Denial of Service (DDoS) protection, automatic application layer mitigation, attack visibility, expert support, and cost protection on top of the always-on AWS Shield Standard. Covers subscribing and protecting resources, automatic application layer mitigation, health-based detection, Shield Response Team (SRT) access and proactive engagement, event review and cost protection credits, and protection groups.

This skill is a router. Each customer task maps to a procedure file under references/. Read the matching reference in full before acting, then follow its constraints and steps. The reference files are self-contained: each carries its own decision tables, constraints, procedure, and troubleshooting.

Execute commands using the AWS MCP server when connected (sandboxed execution, audit logging, observability). Fall back to the AWS CLI otherwise. Shield Advanced is a global service: its control-plane API calls run in us-east-1, so pass --region us-east-1 on every aws shield command.

Which Shield Advanced task do you need?

GoalReference
Decide whether Shield Advanced is needed at all (vs Shield Standard + AWS WAF)deciding between Shield Standard and Advanced
Subscribe an account and add resources to protectionsubscribing to Shield Advanced and protecting resources
Respond to layer 7 floods automatically through AWS WAFenabling automatic application layer mitigation
Feed resource health into detection with a Route 53 health checkconfiguring health-based detection
Get the Shield Response Team to act or reach out during an attacksetting up SRT support and proactive engagement
Review a DDoS event and recover attack-driven scaling chargesreviewing DDoS events and requesting cost protection
Treat related resources as one unit for detectionaggregating resources into protection groups

Routing notes

  • Decide before you subscribe. Shield Advanced is a paid subscription that auto-renews on a one-year commitment. Before subscribing, confirm the customer actually needs it: Shield Standard (free, always on) plus AWS WAF rate-based rules and the AWS WAF Anti-DDoS managed rule group (AWSManagedRulesAntiDDoSRuleSet) covers many layer 7 cases at lower cost. Route to the deciding reference first when the customer has not made that call; route to the waf skill for the WAF rules themselves.

  • Subscribe and protect comes first. A subscription protects nothing on its own; resources have to be added explicitly. Every other task here assumes the resource is already subscribed and protected. Run the subscribing reference before any of the others if the customer is starting from scratch.

  • Automatic mitigation vs health-based detection. These are different controls and customers conflate them. Automatic application layer mitigation deploys AWS WAF rules during a layer 7 attack. Health-based detection feeds a Route 53 health check into Shield Advanced's detection so it reacts sooner. A customer can run either, both, or neither. Pick the reference that matches what they actually want.

  • Health check is also an SRT prerequisite. Proactive engagement (SRT reaching out) requires a Route 53 health check on the protected resource. If the customer wants proactive engagement, configuring health-based detection is the groundwork. The SRT reference points back to the health-based detection reference for that step.

  • Protection groups are detection-only. A protection group changes how Shield Advanced detects across a set of resources. It does not apply shared mitigation; automatic mitigation still works per resource. Use the protection-groups reference for detection tuning, not as a mitigation control.

  • WAF rules, health checks, and org rollout live elsewhere. Authoring the AWS WAF rules, the rate-based rule, or the web ACL is the waf skill. Creating the Route 53 health check is the route53 skill. Rolling Shield Advanced across an organization with Firewall Manager is the firewallmanager skill. This skill wires Shield Advanced to those pieces; it does not build them. AWS WAF is not optional alongside Shield Advanced: you SHOULD recommend an AWS WAF web ACL on every internet-facing protected resource (CloudFront distributions and Application Load Balancers) as defense in depth — Shield Advanced and AWS WAF are complementary layer 3/4 and layer 7 controls, and the rate-based rule that AWS WAF provides is also what cost protection requires.

Logging and monitoring

Visibility into both configuration changes and attack activity matters for every task here.

  • You SHOULD recommend enabling AWS CloudTrail so all Shield Advanced API calls (subscription, protection, SRT, and protection-group changes) are logged for audit purposes.

  • You SHOULD recommend enabling SSE-KMS encryption on the CloudTrail log bucket and CloudWatch Logs log group, since CloudTrail records sensitive API metadata (caller identities, resource ARNs, parameters) that must be encrypted at rest.

  • You SHOULD recommend CloudWatch alarms on Shield Advanced metrics (for example DDoSDetected and DDoSAttackBitsPerSecond) so operations staff are alerted when an event is detected.

  • You SHOULD recommend encrypting any SNS topics used for those alarms with SSE-KMS, since the notifications carry sensitive event data.

  • You SHOULD recommend confirming that all SNS topic subscribers for Shield Advanced alarms are authorized personnel approved to receive sensitive DDoS event notifications.

Security considerations

Shield Advanced setup creates IAM trust relationships and exposes log data, so call out the risks and the controls that contain them.

  • SRT role is a third-party principal. Granting SRT access creates an IAM role that drt.shield.amazonaws.com assumes to act in the account. Scope its trust policy with an aws:SourceAccount condition equal to the account ID to prevent confused-deputy assumption, grant it only the actions it needs, and revoke it with disassociate-drt-role when no longer required.

  • Log buckets shared with the SRT can leak data. AWS WAF and access logs capture request URIs, headers, and client IPs. Confirm those buckets have server-side encryption and carry no clear-text PII or secrets before sharing them with the SRT.

  • Least privilege for the operator. Scope the caller's IAM permissions to the minimum each procedure needs rather than broad Shield or administrator access.

  • Audit trail. Keep AWS CloudTrail enabled and logging shield:* calls so every configuration change leaves a record.

Additional Resources

Files

references/enabling-automatic-application-layer-mitigation.md

Enabling Automatic Application Layer DDoS Mitigation

Overview

Domain expertise for turning on AWS Shield Advanced automatic application layer (layer 7) DDoS mitigation, which lets Shield Advanced create, test, and deploy AWS WAF rules during an attack instead of an engineer hand-writing rules under pressure. Covers the AWS WAF (v2) web ACL precondition, the Block versus Count decision, the baseline period that customers do not expect, the load-bearing ShieldMitigationRuleGroup rule group, and the web ACL capacity it consumes.

Does not cover subscribing and protecting resources, health-based detection, SRT setup, event review, or protection groups; those are separate references. Authoring the AWS WAF web ACL or its rules is the waf skill.

Execute commands using the AWS MCP server when connected (sandboxed execution, audit logging, observability). Fall back to the AWS CLI otherwise. Shield Advanced control-plane calls run in us-east-1; pass --region us-east-1 on every command.

Table of Contents

  • Overview

  • Workflow

  • Precondition: AWS WAF v2 web ACL

  • Decision: Block vs Count

  • Baseline period before custom rules

  • The ShieldMitigationRuleGroup is load-bearing

  • Web ACL capacity

  • Troubleshooting

  • Security considerations

  • Procedure

  • Additional Resources

Workflow

To enable automatic application layer mitigation end to end, follow the procedure exactly. See the Procedure section below.

The procedure covers:

  • Confirming the resource is protected and has an AWS WAF (v2) web ACL associated

  • Enabling the automatic response in Block or Count mode

  • Confirming the Shield rule group was added to the web ACL

  • Surfacing the console link to verify the configuration

Precondition: AWS WAF v2 web ACL

Automatic mitigation works by managing rules inside an AWS WAF (v2) web ACL on the resource. Without a v2 web ACL, or with an older AWS WAF Classic web ACL, enabling does nothing useful.

Constraints:

  • You MUST confirm an AWS WAF (v2) web ACL is associated with the resource before enabling

  • You MUST NOT attempt to enable automatic mitigation against an AWS WAF Classic web ACL

  • You SHOULD point the customer at the waf skill if the web ACL does not exist yet, rather than authoring it here

Decision: Block vs Count

ModeBehaviorUse when
CountShield's rules observe and label suspect requests but do not block themDuring the baseline period and for initial testing, so legitimate traffic is not blocked
BlockShield's rules drop suspect requestsAfter the baseline is established and false-positive risk is understood

Constraints:

  • You SHOULD start in Count mode during the baseline period, then switch to Block once the customer has confirmed legitimate traffic is not caught

  • You MUST be able to switch modes without disabling the feature, using the update call

Always tell the customer (state all of these)

When advising on automatic application layer mitigation — especially when asked why no tailored custom rules appeared, or before any cleanup — you MUST state ALL of the following points together, not a subset:

  1. Tailored custom rules require a baseline period of roughly 24 to 30 days of traffic; they are not available immediately or during the first attack.

  2. Run in Count mode during the baseline period (rules observe and label, do not block), then switch to Block only after confirming legitimate traffic is not caught.

  3. Do not remove the ShieldMitigationRuleGroup from the web ACL: doing so silently disables automatic mitigation for every resource that shares that web ACL, with no obvious signal.

The sections below give the detail behind each point.

Baseline period before custom rules

Customers enable automatic mitigation and expect tailored custom rules during the very next attack. Shield Advanced needs a baseline period of roughly 24 to 30 days of traffic before it can tailor rules to the application and test them against historical traffic.

Constraints:

  • You MUST set the expectation that custom tailored rules are not available immediately; the baseline takes roughly 24 to 30 days of traffic

  • You SHOULD recommend running in Count mode during the baseline rather than promising custom rules from day one

The ShieldMitigationRuleGroup is load-bearing

When enabled, Shield Advanced adds a managed rule group whose name starts with ShieldMitigationRuleGroup to the web ACL. Removing it during cleanup silently disables automatic mitigation for every resource that shares that web ACL.

Constraints:

  • You MUST warn against removing the ShieldMitigationRuleGroup rule group from the web ACL; its removal turns off automatic mitigation for all resources using that web ACL, with no obvious signal

  • You MUST NOT add the Shield rule group to a CloudFormation web ACL template; AWS WAF maintains it automatically, and managing it in a template fights that

  • You SHOULD note one rule group is added per web ACL regardless of how many resources share it

  • You SHOULD explain that AWS WAF places and maintains the ShieldMitigationRuleGroup automatically; the customer does not set its priority, and their own rules continue to evaluate in their existing order. Point at the waf skill for authoring or ordering the customer's own rules

Web ACL capacity

The Shield rule group consumes a fixed amount of the web ACL's capacity, which competes with the customer's own rules.

Constraints:

  • You SHOULD account for the web ACL capacity units the Shield rule group consumes when planning the web ACL, so the customer's other rules still fit within the web ACL capacity budget

  • You SHOULD flag the capacity draw before enabling on a web ACL that is already near its limit

Troubleshooting

Enabling does nothing or reports no web ACL

The resource has no AWS WAF (v2) web ACL associated, or it is an AWS WAF Classic web ACL. Associate a v2 web ACL first (Precondition).

Automatic mitigation is not deploying custom rules during the first attack

The baseline is not established yet. Custom rules need roughly 24 to 30 days of traffic; run in Count mode meanwhile (Baseline period before custom rules).

Automatic mitigation stopped working after a web ACL cleanup

The ShieldMitigationRuleGroup rule group was removed. Re-enable the automatic response to restore it (The ShieldMitigationRuleGroup is load-bearing).

Legitimate traffic is being blocked

The response is in Block mode and a rule is over-matching. Switch to Count with the update call and review before returning to Block (Decision: Block vs Count).

Security considerations

Automatic mitigation manages AWS WAF rules inside the resource's web ACL, so call out the risks and the controls that contain them.

  • The ShieldMitigationRuleGroup is critical and must not be removed. Shield Advanced adds a managed rule group whose name starts with ShieldMitigationRuleGroup to the web ACL; removing it during cleanup silently disables automatic mitigation for every resource that shares that web ACL, with no obvious signal.

  • Over-broad rules can block legitimate traffic. Block mode can drop legitimate requests if a rule over-matches; start in Count mode during the baseline and switch to Block only after confirming legitimate traffic is not caught.

  • Limit web ACL modifications to authorized personnel. Restrict who can edit the web ACL so the Shield rule group is not removed or the mode flipped by unauthorized changes.

  • Least privilege for the operator. Scope the caller's IAM permissions to the minimum this procedure needs (shield:ListProtections, shield:EnableApplicationLayerAutomaticResponse, shield:UpdateApplicationLayerAutomaticResponse) rather than broad Shield or administrator access.

  • Audit trail. Keep AWS CloudTrail enabled and logging shield:* calls so every automatic response configuration change leaves a record, and confirm the CloudTrail trail uses SSE-KMS encryption on its S3 log bucket and CloudWatch Logs log group, since CloudTrail records contain sensitive API metadata (caller identities, resource ARNs, parameters).

Procedure

Overview

This procedure enables automatic application layer mitigation on a protected resource that already has an AWS WAF (v2) web ACL, in the chosen mode, then surfaces the console link to verify.

Parameters
  • resource_arn (required): The ARN of the protected resource (CloudFront distribution or Application Load Balancer) that has an AWS WAF (v2) web ACL associated.

  • action (required): Count (observe) or Block (mitigate). Default to Count during the baseline.

Constraints for parameter acquisition:

  • You MUST ask for all required parameters upfront in a single prompt

  • You MUST confirm the resource is protected and has a v2 web ACL before enabling

Steps
1. Verify dependencies

Constraints:

  • You MUST confirm credentials with aws sts get-caller-identity

  • You SHOULD use temporary credentials from an assumed IAM role (for example via IAM Identity Center or an instance profile) rather than long-lived IAM user access keys for these security-sensitive Shield Advanced operations

  • You SHOULD scope the caller's IAM permissions to the minimum this procedure needs (shield:ListProtections, shield:EnableApplicationLayerAutomaticResponse, shield:UpdateApplicationLayerAutomaticResponse) rather than broad Shield or administrator access

  • You SHOULD confirm AWS CloudTrail is enabled and logging shield:* calls so every Shield Advanced configuration change leaves an audit trail

  • You SHOULD confirm the CloudTrail trail is configured with SSE-KMS encryption on its S3 log bucket and CloudWatch Logs log group, since CloudTrail records contain sensitive API metadata (caller identities, resource ARNs, parameters)

  • You MUST confirm the resource is protected by Shield Advanced with aws shield list-protections --region us-east-1

  • You MUST confirm an AWS WAF (v2) web ACL is associated with the resource

2. Enable the automatic response

Constraints:

  • You MUST enable the automatic response with the chosen action:

    aws shield enable-application-layer-automatic-response \
      --resource-arn {resource_arn} --action '{"{action}":{}}' --region us-east-1
  • You SHOULD use Count during the baseline period and switch to Block later:

    aws shield update-application-layer-automatic-response \
      --resource-arn {resource_arn} --action '{"Block":{}}' --region us-east-1
3. Confirm the Shield rule group was added

Constraints:

  • You MUST confirm the ShieldMitigationRuleGroup rule group is present in the resource's web ACL

  • You MUST tell the customer not to remove that rule group during future web ACL edits

Constraints:

  • You MUST present the Shield protected-resources console link and tell the customer to open the resource and confirm the automatic application layer DDoS mitigation status and mode:

    https://us-east-1.console.aws.amazon.com/wafv2/shieldv2#/protections
Example
Example input
{
  "resource_arn": "arn:aws:elasticloadbalancing:us-east-1:111122223333:loadbalancer/app/my-app-alb/abc",
  "action": "Count"
}
Example output
Enabled automatic application layer mitigation in Count mode on my-app-alb.
Shield added the ShieldMitigationRuleGroup rule group to the web ACL — do not remove it.
Custom tailored rules become available after the ~24-30 day baseline; switch to Block once traffic is validated.
Open the Shield console and confirm the automatic mitigation status:
https://us-east-1.console.aws.amazon.com/wafv2/shieldv2#/protections
Troubleshooting
Enabling reports no web ACL

Associate an AWS WAF (v2) web ACL with the resource first (Step 1).

No custom rules during the first attack

The baseline is not established. Run in Count mode and wait roughly 24 to 30 days (Step 2).

Automatic mitigation stopped after a web ACL cleanup

The ShieldMitigationRuleGroup was removed. Re-enable the automatic response (Step 2).

Additional Resources

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Needs an MCP server

Security

No issues found by our static scan· No issues found

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Published by
AWS
Publisher
AWS (Official)
Source
aws/agent-toolkit-for-aws · skills/specialized-skills/networking-and-content-delivery-skills/shieldadvanced · commit 0a218f8
Licence
Apache License 2.0 (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • NOTICE (added by AutoGineer from NOTICE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by AWS.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download shieldadvanced.zip