D'autres AWS SDK exemples sont disponibles dans le GitHub dépôt AWS Doc SDK Examples
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Exemples de Shield utilisant AWS CLI
Les exemples de code suivants vous montrent comment effectuer des actions et implémenter des scénarios courants à l'aide de AWS Command Line Interface with Shield.
Les actions sont des extraits de code de programmes plus larges et doivent être exécutées dans leur contexte. Alors que les actions vous montrent comment appeler des fonctions de service individuelles, vous pouvez les visualiser dans leur contexte dans leurs scénarios associés.
Chaque exemple inclut un lien vers le code source complet, où vous trouverez des instructions sur la façon de configurer et d'exécuter le code en contexte.
Rubriques
Actions
L'exemple de code suivant montre comment utiliserassociate-drt-log-bucket
.
- AWS CLI
-
Pour autoriser l'accès DRT à un compartiment Amazon S3
L'
associate-drt-log-bucket
exemple suivant crée une association entre le compartiment S3 DRT et le compartiment S3 spécifié. Cela permet DRT d'accéder au bucket au nom du compte. :aws shield associate-drt-log-bucket \ --log-bucket
flow-logs-for-website-lb
Cette commande ne produit aucun résultat.
Pour plus d'informations, consultez Authorize the DDoS Response Team dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir AssociateDrtLogBucket
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserassociate-drt-role
.
- AWS CLI
-
Pour autoriser le DRT à atténuer les attaques potentielles en votre nom
L'
associate-drt-role
exemple suivant crée une association entre le DRT et le rôle spécifié. Ils DRT peuvent utiliser le rôle pour accéder au compte et le gérer.aws shield associate-drt-role \ --role-arn
arn:aws:iam::123456789012:role/service-role/DrtRole
Cette commande ne produit aucun résultat.
Pour plus d'informations, consultez Authorize the DDoS Response Team dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir AssociateDrtRole
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utilisercreate-protection
.
- AWS CLI
-
Pour activer la protection AWS Shield Advanced pour une seule AWS ressource
L'
create-protection
exemple suivant active la protection Shield Advanced pour la AWS CloudFront distribution spécifiée.aws shield create-protection \ --name
"Protection for CloudFront distribution"
\ --resource-arnarn:aws:cloudfront::123456789012:distribution/E198WC25FXOWY8
Sortie :
{ "ProtectionId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
Pour plus d'informations, voir Spécifiez vos ressources à protéger dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir CreateProtection
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utilisercreate-subscription
.
- AWS CLI
-
Pour activer la protection AWS Shield Advanced pour un compte
L'
create-subscription
exemple suivant active la protection Shield Advanced pour le compte.aws shield create-subscription
Cette commande ne produit aucun résultat.
Pour plus d'informations, consultez Getting Started with AWS Shield Advanced dans le guide du développeur de AWS Shield Advanced.
-
Pour API plus de détails, voir CreateSubscription
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdelete-protection
.
- AWS CLI
-
Pour supprimer la protection AWS Shield Advanced d'une AWS ressource
L'
delete-protection
exemple suivant supprime la protection AWS Shield Advanced spécifiée.aws shield delete-protection \ --protection-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Cette commande ne produit aucun résultat.
Pour plus d'informations, consultez la section Supprimer AWS Shield Advanced d'une AWS ressource dans le Guide du développeur de AWS Shield Advanced.
-
Pour API plus de détails, voir DeleteProtection
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-attack
.
- AWS CLI
-
Pour récupérer la description détaillée d'une attaque
L'
describe-attack
exemple suivant affiche les détails de l'DDoSattaque avec l'ID d'attaque spécifié. Vous pouvez obtenir une attaque IDs en exécutant lalist-attacks
commande.aws shield describe-attack --attack-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE22222
Sortie :
{ "Attack": { "AttackId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "ResourceArn": "arn:aws:elasticloadbalancing:us-west-2:123456789012:loadbalancer/testElb", "SubResources": [ { "Type": "IP", "Id": "192.0.2.2", "AttackVectors": [ { "VectorType": "SYN_FLOOD", "VectorCounters": [ { "Name": "SYN_FLOOD_BPS", "Max": 982184.0, "Average": 982184.0, "Sum": 11786208.0, "N": 12, "Unit": "BPS" } ] } ], "Counters": [] }, { "Type": "IP", "Id": "192.0.2.3", "AttackVectors": [ { "VectorType": "SYN_FLOOD", "VectorCounters": [ { "Name": "SYN_FLOOD_BPS", "Max": 982184.0, "Average": 982184.0, "Sum": 9821840.0, "N": 10, "Unit": "BPS" } ] } ], "Counters": [] }, { "Type": "IP", "Id": "192.0.2.4", "AttackVectors": [ { "VectorType": "SYN_FLOOD", "VectorCounters": [ { "Name": "SYN_FLOOD_BPS", "Max": 982184.0, "Average": 982184.0, "Sum": 7857472.0, "N": 8, "Unit": "BPS" } ] } ], "Counters": [] }, { "Type": "IP", "Id": "192.0.2.5", "AttackVectors": [ { "VectorType": "SYN_FLOOD", "VectorCounters": [ { "Name": "SYN_FLOOD_BPS", "Max": 982184.0, "Average": 982184.0, "Sum": 1964368.0, "N": 2, "Unit": "BPS" } ] } ], "Counters": [] }, { "Type": "IP", "Id": "2001:DB8::bcde:4321:8765:0:0", "AttackVectors": [ { "VectorType": "SYN_FLOOD", "VectorCounters": [ { "Name": "SYN_FLOOD_BPS", "Max": 982184.0, "Average": 982184.0, "Sum": 1964368.0, "N": 2, "Unit": "BPS" } ] } ], "Counters": [] }, { "Type": "IP", "Id": "192.0.2.6", "AttackVectors": [ { "VectorType": "SYN_FLOOD", "VectorCounters": [ { "Name": "SYN_FLOOD_BPS", "Max": 982184.0, "Average": 982184.0, "Sum": 1964368.0, "N": 2, "Unit": "BPS" } ] } ], "Counters": [] } ], "StartTime": 1576024927.457, "EndTime": 1576025647.457, "AttackCounters": [], "AttackProperties": [ { "AttackLayer": "NETWORK", "AttackPropertyIdentifier": "SOURCE_IP_ADDRESS", "TopContributors": [ { "Name": "198.51.100.5", "Value": 2024475682 }, { "Name": "198.51.100.8", "Value": 1311380863 }, { "Name": "203.0.113.4", "Value": 900599855 }, { "Name": "198.51.100.4", "Value": 769417366 }, { "Name": "203.1.113.13", "Value": 757992847 } ], "Unit": "BYTES", "Total": 92773354841 }, { "AttackLayer": "NETWORK", "AttackPropertyIdentifier": "SOURCE_COUNTRY", "TopContributors": [ { "Name": "United States", "Value": 80938161764 }, { "Name": "Brazil", "Value": 9929864330 }, { "Name": "Netherlands", "Value": 1635009446 }, { "Name": "Mexico", "Value": 144832971 }, { "Name": "Japan", "Value": 45369000 } ], "Unit": "BYTES", "Total": 92773354841 }, { "AttackLayer": "NETWORK", "AttackPropertyIdentifier": "SOURCE_ASN", "TopContributors": [ { "Name": "12345", "Value": 74953625841 }, { "Name": "12346", "Value": 4440087595 }, { "Name": "12347", "Value": 1635009446 }, { "Name": "12348", "Value": 1221230000 }, { "Name": "12349", "Value": 1199425294 } ], "Unit": "BYTES", "Total": 92755479921 } ], "Mitigations": [] } }
Pour plus d'informations, consultez la section Révision DDoS des incidents dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir DescribeAttack
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-drt-access
.
- AWS CLI
-
Pour obtenir une description des autorisations, vous devez atténuer les attaques en votre nom. DRT
L'
describe-drt-access
exemple suivant récupère le rôle et les autorisations de compartiment S3 dont il DRT dispose, ce qui lui permet de répondre à des attaques potentielles en votre nom.aws shield describe-drt-access
Sortie :
{ "RoleArn": "arn:aws:iam::123456789012:role/service-role/DrtRole", "LogBucketList": [ "flow-logs-for-website-lb" ] }
Pour plus d'informations, consultez Authorize the DDoS Response Team dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir DescribeDrtAccess
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-emergency-contact-settings
.
- AWS CLI
-
Pour récupérer les adresses e-mail d'urgence que vous avez enregistrées auprès du DRT
L'
describe-emergency-contact-settings
exemple suivant récupère les adresses e-mail enregistrées avec DRT le compte. Voici les adresses qu'il DRT doit contacter lorsqu'il répond à une attaque présumée.aws shield describe-emergency-contact-settings
Sortie :
{ "EmergencyContactList": [ { "EmailAddress": "ops@example.com" }, { "EmailAddress": "ddos-notifications@example.com" } ] }
Pour plus d'informations, consultez How AWS Shield Works< https://docs.aws.amazon.com/waf/ latest/developerguide/ddos -overview.html> dans le Shield Advanced Developer Guide.AWS
-
Pour API plus de détails, voir DescribeEmergencyContactSettings
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-protection
.
- AWS CLI
-
Pour récupérer les informations relatives à une protection AWS Shield Advanced
L'
describe-protection
exemple suivant affiche des détails sur la protection Shield Advanced avec l'ID spécifié. Vous pouvez obtenir une protection IDs en exécutant lalist-protections
commande.aws shield describe-protection \ --protection-id
a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
Sortie :
{ "Protection": { "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Name": "1.2.3.4", "ResourceArn": "arn:aws:ec2:us-west-2:123456789012:eip-allocation/eipalloc-0ac1537af40742a6d" } }
Pour plus d'informations, voir Spécifiez vos ressources à protéger dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir DescribeProtection
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdescribe-subscription
.
- AWS CLI
-
Pour récupérer les détails de la protection AWS Shield Advanced pour le compte
L'
describe-subscription
exemple suivant affiche des détails sur la protection Shield Advanced fournie pour le compte. :aws shield describe-subscription
Sortie :
{ "Subscription": { "StartTime": 1534368978.0, "EndTime": 1597613778.0, "TimeCommitmentInSeconds": 63244800, "AutoRenew": "ENABLED", "Limits": [ { "Type": "GLOBAL_ACCELERATOR", "Max": 1000 }, { "Type": "ROUTE53_HOSTED_ZONE", "Max": 1000 }, { "Type": "CF_DISTRIBUTION", "Max": 1000 }, { "Type": "ELB_LOAD_BALANCER", "Max": 1000 }, { "Type": "EC2_ELASTIC_IP_ALLOCATION", "Max": 1000 } ] } }
Pour plus d'informations, consultez How AWS Shield Works dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir DescribeSubscription
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdisassociate-drt-log-bucket
.
- AWS CLI
-
Pour supprimer l'autorisation d'accéder DRT à un compartiment Amazon S3 en votre nom
L'
disassociate-drt-log-bucket
exemple suivant supprime l'association entre le compartiment S3 DRT et le compartiment S3 spécifié. Une fois cette commande terminée, DRT ils ne peuvent plus accéder au bucket au nom du compte.aws shield disassociate-drt-log-bucket \ --log-bucket
flow-logs-for-website-lb
Cette commande ne produit aucun résultat.
Pour plus d'informations, consultez Authorize the DDoS Response Team dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir DisassociateDrtLogBucket
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserdisassociate-drt-role
.
- AWS CLI
-
Pour supprimer l'autorisation DRT afin d'atténuer les attaques potentielles en votre nom
L'
disassociate-drt-role
exemple suivant supprime l'association entre le DRT et le compte. Après cet appel, ils ne DRT peuvent plus accéder à votre compte ni le gérer.aws shield disassociate-drt-role
Cette commande ne produit aucun résultat.
Pour plus d'informations, consultez Authorize the DDoS Response Team dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir DisassociateDrtRole
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserget-subscription-state
.
- AWS CLI
-
Pour connaître l'état actuel de l'abonnement AWS Shield Advanced du compte
L'
get-subscription-state
exemple suivant permet de récupérer l'état de la protection Shield Advanced pour le compte.aws shield get-subscription-state
Sortie :
{ "SubscriptionState": "ACTIVE" }
Pour plus d'informations, consultez How AWS Shield Works dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir GetSubscriptionState
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserlist-attacks
.
- AWS CLI
-
Pour récupérer les résumés des attaques depuis AWS Shield Advanced
L'
list-attacks
exemple suivant récupère les résumés des attaques pour la AWS CloudFront distribution spécifiée au cours de la période spécifiée. La réponse inclut une attaque IDs que vous pouvez fournir à ladescribe-attack
commande pour obtenir des informations détaillées sur une attaque.aws shield list-attacks \ --resource-arns
arn:aws:cloudfront::12345678910:distribution/E1PXMP22ZVFAOR
\ --start-timeFromInclusive=1529280000,ToExclusive=1529300000
Sortie :
{ "AttackSummaries": [ { "AttackId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "ResourceArn": "arn:aws:cloudfront::123456789012:distribution/E1PXMP22ZVFAOR", "StartTime": 1529280000.0, "EndTime": 1529449200.0, "AttackVectors": [ { "VectorType": "SYN_FLOOD" } ] } ] }
Pour plus d'informations, consultez la section Révision DDoS des incidents dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir ListAttacks
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserlist-protections
.
- AWS CLI
-
Pour récupérer les résumés de protection depuis AWS Shield Advanced
L'
list-protections
exemple suivant permet de récupérer des résumés des protections activées pour le compte.aws shield list-protections
Sortie :
{ "Protections": [ { "Id": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "Name": "Protection for CloudFront distribution", "ResourceArn": "arn:aws:cloudfront::123456789012:distribution/E198WC25FXOWY8" } ] }
Pour plus d'informations, voir Spécifiez vos ressources à protéger dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir ListProtections
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserupdate-emergency-contact-settings
.
- AWS CLI
-
Pour définir les adresses e-mail d'urgence enregistrées auprès du DRT
L'
update-emergency-contact-settings
exemple suivant définit deux adresses e-mail à DRT contacter en cas de réponse à une attaque présumée.aws shield update-emergency-contact-settings \ --emergency-contact-list
EmailAddress=ops@example.com
EmailAddress=ddos-notifications@example.com
Cette commande ne produit aucun résultat.
Pour plus d'informations, consultez How AWS Shield Works dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir UpdateEmergencyContactSettings
la section Référence des AWS CLI commandes.
-
L'exemple de code suivant montre comment utiliserupdate-subscription
.
- AWS CLI
-
Pour modifier l'abonnement AWS Shield Advanced du compte
L'
update-subscription
exemple suivant active le renouvellement automatique de l'abonnement AWS Shield Advanced pour le compte.aws shield update-subscription \ --auto-renew
ENABLED
Cette commande ne produit aucun résultat.
Pour plus d'informations, consultez How AWS Shield Works dans le AWS Shield Advanced Developer Guide.
-
Pour API plus de détails, voir UpdateSubscription
la section Référence des AWS CLI commandes.
-