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.
Modification de l'abonnement à la destination au moment de l'exécution
Vous pouvez rencontrer des situations où vous devez ajouter ou supprimer des expéditeurs de journaux d'une destination qui vous appartient. Vous pouvez utiliser les PutAccountPolicy
actions PutDestinationPolicyet sur votre destination avec la nouvelle politique d'accès. Dans l'exemple suivant, un compte précédemment ajouté 111111111111 est écarté de l'envoi de données du journal supplémentaires, et le compte 333333333333 est activé.
-
Récupérez la politique actuellement associée à la destination testDestinationet notez : AccessPolicy
aws logs describe-destinations \ --destination-name-prefix "testFirehoseDestination"
Les données renvoyées peuvent ressembler à ceci.
{ "destinations": [ { "destinationName": "testFirehoseDestination", "targetArn": "arn:aws:firehose:us-east-1:222222222222:deliverystream/my-delivery-stream", "roleArn": "arn:aws:iam:: 222222222222:role/CWLtoKinesisFirehoseRole", "accessPolicy": "{\n \"Version\" : \"2012-10-17\",\n \"Statement\" : [\n {\n \"Sid\" : \"\",\n \"Effect\" : \"Allow\",\n \"Principal\" : {\n \"AWS\" : \"111111111111 \"\n },\n \"Action\" : \"logs:PutSubscriptionFilter\",\n \"Resource\" : \"arn:aws:logs:us-east-1:222222222222:destination:testFirehoseDestination\"\n }\n ]\n}\n\n", "arn": "arn:aws:logs:us-east-1: 222222222222:destination:testFirehoseDestination", "creationTime": 1612256124430 } ] }
-
Mettez à jour la politique de façon à refléter l'arrêt du compte 111111111111 et l'activation du compte 333333333333. Insérez cette politique dans le fichier ~/ NewAccessPolicy .json :
{ "Version" : "2012-10-17", "Statement" : [ { "Sid" : "", "Effect" : "Allow", "Principal" : { "AWS" : "333333333333 " }, "Action" : ["logs:PutSubscriptionFilter","logs:PutAccountPolicy"], "Resource" : "arn:aws:logs:us-east-1:222222222222:destination:testFirehoseDestination" } ] }
-
Utilisez la commande suivante pour associer la politique définie dans le fichier NewAccessPolicy.json à la destination :
aws logs put-destination-policy \ --destination-name "testFirehoseDestination" \ --access-policy file://~/NewAccessPolicy.json
Cela désactive éventuellement les événements du journal à partir de l'ID de compte 111111111111. Les événements du journal de l'ID de compte 333333333333 commencent à passer à la destination dès que le propriétaire du compte 333333333333 crée un filtre d'abonnement.