Contrôle de la sortie de commande dans l’AWS CLI
Cette section décrit les différentes façons de contrôler la sortie de l’AWS Command Line Interface (AWS CLI). La personnalisation de la sortie AWS CLI dans votre terminal peut améliorer la lisibilité, rationaliser l’automatisation des scripts et faciliter la navigation dans des jeux de données plus volumineux.
L’AWS CLI prend en charge plusieurs formats de sortie, notamment json, text, yaml, et table. Certains services proposent une pagination côté serveur pour leurs données et l’AWS CLI fournit ses propres fonctionnalités côté client pour des options de pagination supplémentaires.
Enfin, l’AWS CLI dispose d’un filtrage côté serveur et côté client que vous pouvez utiliser individuellement ou ensemble pour filtrer votre sortie AWS CLI.
Rubriques
Sortie sensible
Certaines opérations de l’AWS CLI peuvent renvoyer des informations pouvant être considérées comme sensibles, notamment des informations provenant de variables d’environnement. L’exposition de ces informations peut représenter un risque de sécurité dans certains scénarios ; par exemple, les informations peuvent être incluses dans les journaux d’intégration continue et de déploiement continu (CI/CD). Il est donc important de vérifier à quel moment vous incluez une telle sortie dans vos journaux et de supprimer la sortie lorsqu’elle n’est pas nécessaire.
Pour plus d’informations sur la protection des données sensibles, consultez Protection des données dans l'AWS CLI.
Tenez compte des bonnes pratiques suivantes :
-
Envisagez d’extraire vos secrets par programmation dans un magasin de secrets, tel que AWS Secrets Manager.
-
Vérifiez le contenu de vos journaux de génération pour vous assurer qu’ils ne contiennent pas d’informations sensibles. Envisagez des approches telles que le transfert vers
/dev/nullou la capture de la sortie sous forme de variable bash ou PowerShell pour supprimer les sorties de commande.Voici un exemple bash pour rediriger la sortie, mais pas les erreurs, vers
/dev/null:$aws s3 ls > /dev/nullPour plus d’informations sur la suppression de la sortie de votre terminal, consultez la documentation utilisateur du terminal que vous utilisez.
-
Tenez compte de l’accès à vos journaux et délimitez cet accès en fonction de votre cas d’utilisation.
Options de sortie côté serveur ou côté client
L’AWS CLI dispose d’un filtrage côté serveur et côté client que vous pouvez utiliser individuellement ou ensemble pour filtrer votre sortie AWS CLI. Le filtrage côté serveur est traité en premier et renvoie votre sortie pour le filtrage côté client. Le filtrage côté serveur est pris en charge par l’API du service. Le filtrage côté client est pris en charge par le client AWS CLI à l’aide du paramètre --query.
Les options de sortie côté serveur sont des fonctionnalités directement prises en charge par l’API Service AWS. Les données filtrées ou renvoyées ne sont pas envoyées au client, ce qui peut accélérer les temps de réponse HTTP et améliorer la bande passante pour les jeux de données plus volumineux.
Les options de sortie côté client sont des fonctionnalités créées par l’AWS CLI. Toutes les données sont envoyées au client, puis l’AWS CLI filtre ou pagine le contenu affiché. Les opérations côté client ne permettent pas d’économiser en termes de vitesse ou de bande passante pour les jeux de données plus volumineux.
Lorsque les options côté serveur et côté client sont utilisées conjointement, les opérations côté serveur sont d’abord effectuées, puis envoyées au client pour les opérations côté client. Cela permet de réaliser des économies de vitesse et de bande passante potentielles des options côté serveur, tout en utilisant des fonctionnalités d’AWS CLI supplémentaires pour obtenir le résultat souhaité.