AWS Systems Manager Parameter Store - AWS Systems Manager

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.

AWS Systems Manager Parameter Store

Parameter Store, une fonctionnalité de AWS Systems Manager, fournit un stockage hiérarchique sécurisé pour la gestion des données de configuration et la gestion des secrets. Vous pouvez stocker des données telles que des mots de passe, des chaînes de base de données, des ID d'Amazon Machine Image (AMI) et des codes de licence en tant que valeurs de paramètres. Vous pouvez stocker ces valeurs sous forme de texte brut ou de données chiffrées. Vous pouvez référencer des paramètres Systems Manager dans vos scripts, commandes, documents SSM et flux de travail de configuration et d'automatisation à l'aide du nom unique que vous avez spécifié lors de la création du paramètre. Pour vos premiers pas dans Parameter Store, ouvrez Systems Manager console. Dans le panneau de navigation, sélectionnez Parameter Store.

Parameter Store est également intégré à Secrets Manager. Vous pouvez récupérer les secrets Secrets Manager lors de l'utilisation d'autres Services AWS qui prennent déjà en charge les références aux paramètres Parameter Store. Pour plus d’informations, consultez Référencement des secrets AWS Secrets Manager à partir des paramètres Parameter Store.

Note

Pour implémenter les cycles de vie de rotation des mots de passe, utilisez. AWS Secrets Manager Vous pouvez effectuer une rotation, gérer et récupérer les informations d'identification de la base de données, les clés d'API et d'autres secrets tout au long de leur cycle de vie à l'aide de Secrets Manager. Pour plus d'informations, voir Qu'est-ce que c'est AWS Secrets Manager ? dans le guide de AWS Secrets Manager l'utilisateur.

Comment mon organisation peut-elle tirer parti de Parameter Store ?

Parameter Store offre les avantages suivants :

  • Utilisation d'un service de gestion sécurisé, évolutif et hébergé des codes secrets, sans serveurs à gérer.

  • Amélioration de vos niveaux de sécurité en séparant les données du code.

  • Stockage des données de configuration et des chaînes chiffrées en hiérarchies et en versions de suivi.

  • Accès de contrôle et d'audit à niveaux granulaires.

  • Stockez les paramètres de manière fiable car Parameter Store est hébergé dans plusieurs zones de disponibilité dans une Région AWS.

À qui est destiné Parameter Store ?

  • Tout AWS client qui souhaite disposer d'une méthode centralisée pour gérer les données de configuration.

  • Les développeurs de logiciels qui veulent stocker différentes connexions et différents flux de référence.

  • Les administrateurs qui veulent recevoir des notifications lorsque leurs secrets et leurs mots de passe sont ou ne sont pas modifiés.

Quelles sont les fonctions d'Parameter Store ?

  • Notification de modification

    Vous pouvez configurer des notifications de modifications et invoquer des actions automatisées à la fois pour les paramètres et les politiques de paramètres. Pour plus d’informations, consultez Configuration des notifications ou déclenchement d'actions en fonction Parameter Store des événements.

  • Organisation des paramètres

    Vous pouvez baliser vos paramètres individuellement pour vous aider à identifier un ou plusieurs paramètres en fonction des balises que vous leur avez affectées. Par exemple, vous pouvez baliser des paramètres pour des environnements ou des services spécifiques. Pour plus d’informations, consultez Balisage de paramètres Systems Manager.

  • Versions d'étiquettes

    Vous pouvez associer un alias aux versions de votre paramètre en créant des étiquettes. Les étiquettes peuvent vous aider à vous souvenir de l'objectif d'une version de paramètre lorsqu'il existe plusieurs versions.

  • Validation des données

    Vous pouvez créer des paramètres désignant une instance Amazon Elastic Compute Cloud (Amazon EC2), et Parameter Store les valide pour s'assurer qu'il fait référence au type de ressource attendu, que la ressource existe et que le client a l'autorisation d'utiliser la ressource. Par exemple, vous pouvez créer un paramètre avec un ID d'Amazon Machine Image (AMI) comme valeur avec le type de données aws:ec2:image, et Parameter Store effectue une opération de validation asynchrone pour s'assurer que la valeur du paramètre répond aux exigences de mise en forme d'un ID d'AMI et que la valeur spécifiée AMI est disponible dans votre Compte AWS.

  • Secrets de référence

    Parameter Storeest intégré AWS Secrets Manager afin que vous puissiez récupérer les secrets de Secrets Manager lorsque vous en utilisez un autre Services AWS qui prend déjà en charge les références aux Parameter Store paramètres.

  • Partage de paramètres avec d'autres comptes

    Vous pouvez éventuellement centraliser les données de configuration en un seul Compte AWS et partager les paramètres avec d'autres comptes qui ont besoin d'y accéder.

  • Accessible depuis d'autres Services AWS

    Vous pouvez utiliser les paramètres Parameter Store avec d'autres fonctionnalités de Systems Manager et Services AWS pour récupérer les secrets et les données de configuration à partir d'un magasin central. Les paramètres fonctionnent avec les fonctionnalités de Systems Manager telles que Run Command l'automatisation et State Manager les fonctionnalités de AWS Systems Manager. Vous pouvez également référencer des paramètres dans plusieurs autres domaines Services AWS, notamment les suivants :

    • Amazon Elastic Compute Cloud (Amazon EC2)

    • Amazon Elastic Container Service (Amazon ECS)

    • AWS Secrets Manager

    • AWS Lambda

    • AWS CloudFormation

    • AWS CodeBuild

    • AWS CodePipeline

    • AWS CodeDeploy

  • Intégrez avec d'autres Services AWS

    Configurez l'intégration avec les éléments suivants Services AWS pour le chiffrement, les notifications, la surveillance et l'audit :

Qu'est-ce qu'un paramètre ?

Un paramètre Parameter Store est tout élément de données enregistré dans Parameter Store, tel qu'un bloc de texte, une liste de noms, un mot de passe, un ID d'AMI, une clé de licence, etc. Vous pouvez référencer ces données de manière centralisée et sécurisée dans vos scripts, commandes et documents SSM.

Lorsque vous référencez un paramètre, vous spécifiez son nom à l'aide de la convention suivante.

{{ssm:parameter-name}}

Note

Les paramètres ne peuvent pas être référencés ou imbriqués dans les valeurs d'autres paramètres. Vous ne pouvez pas inclure {{}} ou {{ssm:parameter-name}} dans une valeur de paramètre.

Parameter Store prend en charge trois types de paramètres. String, StringList et SecureString.

À une exception près, lorsque vous créez ou mettez à jour un paramètre, vous saisissez sa valeur sous forme de texte brut et Parameter Store n'effectue aucune validation sur le texte en question. Pour les paramètres String, vous pouvez néanmoins spécifier le type de données comme aws:ec2:image. Alors, Parameter Store valide la valeur que vous saisissez comme étant au format approprié pour une AMI Amazon EC2 ; par exemple : ami-12345abcdeEXAMPLE.

Type de paramètre : String

Par défaut, les paramètres String sont constitués d'un bloc de texte que vous saisissez. Par exemple :

  • abc123

  • Example Corp

  • <img src="images/bannerImage1.png"/>

Type de paramètre : StringList

Les paramètres StringList contiennent une liste de valeurs séparées par des virgules, comme le montre les exemples suivants.

Monday,Wednesday,Friday

CSV,TSV,CLF,ELF,JSON

Type de paramètre : SecureString

Un paramètre SecureString correspond à des données sensibles qui doivent être stockées et référencées de manière sécurisée. Si vous ne voulez pas que les utilisateurs modifient ou référencent en texte brut certaines de vos données, telles que les mots de passe ou les clés de licence, créez ces paramètres à l'aide du type de données SecureString.

Important

Ne stockez pas de données sensibles dans un paramètre StringList ou String. Pour toutes les données sensibles qui doivent rester chiffrées, utilisez uniquement le type de paramètre SecureString.

Pour plus d’informations, consultez Créer un paramètre SecureString (AWS CLI).

Nous recommandons l'utilisation des paramètres SecureString pour les scénarios suivants :

  • Vous souhaitez utiliser les données/paramètres Services AWS sans exposer les valeurs sous forme de texte brut dans les commandes, les fonctions, les journaux des agents ou les journaux. CloudTrail

  • Vous voulez contrôler les personnes ayant accès aux données sensibles.

  • Vous souhaitez être en mesure d'auditer les accès à des données sensibles (CloudTrail).

  • Vous voulez chiffrer vos données sensibles et vous voulez utiliser vos propres clés de chiffrement pour la gestion des accès.

Important

Seule la valeur d'un paramètre SecureString est chiffrée. Les noms de paramètres, les descriptions et d'autres propriétés ne sont pas chiffrés.

Vous pouvez utiliser le type de SecureString paramètre pour les données textuelles que vous souhaitez chiffrer, telles que les mots de passe, les secrets d'application, les données de configuration confidentielles ou tout autre type de données que vous souhaitez protéger. SecureStringles données sont cryptées et déchiffrées à l'aide d'une clé. AWS KMS Vous pouvez utiliser une clé KMS par défaut fournie par AWS ou créer et utiliser la vôtre AWS KMS key. (Utilisez votre propre AWS KMS key pour restreindre l'accès des utilisateurs aux paramètres SecureString. Pour de plus amples informations, veuillez consulter Autorisations IAM pour l'utilisation des clés AWS par défaut et des clés gérées par le client.)

Vous pouvez également utiliser des SecureString paramètres avec d'autres Services AWS. Dans l'exemple suivant, la fonction Lambda récupère un SecureString paramètre à l'aide de l'API. GetParameters

from __future__ import print_function import json import boto3 ssm = boto3.client('ssm', 'us-east-2') def get_parameters(): response = ssm.get_parameters( Names=['LambdaSecureString'],WithDecryption=True ) for parameter in response['Parameters']: return parameter['Value'] def lambda_handler(event, context): value = get_parameters() print("value1 = " + value) return value # Echo back the first key value
AWS KMS chiffrement et tarification

Si vous choisissez le type de SecureString paramètre lorsque vous créez votre paramètre, Systems Manager l'utilise AWS KMS pour chiffrer la valeur du paramètre.

Important

Parameter Store prend uniquement en charge des clés KMS à chiffrement symétrique. Vous ne pouvez pas utiliser une clé KMS à chiffrement asymétrique pour chiffrer vos paramètres. Pour savoir si une clés KMS est symétrique ou asymétrique, consultez Identification de clés symétriques et asymétriques dans le Guide du développeur AWS Key Management Service .

La création d'Parameter Storeun SecureString paramètre est gratuite, mais des frais d'utilisation du AWS KMS chiffrement s'appliquent. Pour obtenir des informations, veuillez consulter Tarification AWS Key Management Service.

Pour plus d'informations sur les clés gérées par le client Clés gérées par AWS et les clés gérées par le client, consultez la section AWS Key Management Service Concepts du guide du AWS Key Management Service développeur. Pour plus d'informations sur le AWS KMS chiffrement Parameter Store et le chiffrement, consultez la section Comment AWS Systems ManagerParameter Store les utiliser AWS KMS.

Note

Pour afficher un Clé gérée par AWS, utilisez l' AWS KMS DescribeKeyopération. Cet exemple AWS Command Line Interface (AWS CLI) est utilisé DescribeKey pour afficher un Clé gérée par AWS.

aws kms describe-key --key-id alias/aws/ssm