Configuration de Key Protect

DevOps Insights arrivera en fin de vie et sera supprimé le 31 août 2026. Continuous Delivery sera supprimé dans les régions suivantes le 12 février 2027 : au-syd, ca-mon, ca-tor, us-east. Code Risk Analyzer sera également retiré du marché dans toutes les régions à cette date. Si ces fonctionnalités ne sont pas activement utilisées dans une région donnée, elles pourraient être supprimées plus tôt dans cette région et ne plus accepter de nouvelles instances. En savoir plus

IBM® Key Protect for IBM Cloud® vous aide à stocker et appliquer des valeurs de secret pour les applications dans les différents services IBM Cloud.

Un secret est tout ce qui permet d'accéder à des informations sensibles, telles qu'une clé d'API. Si vous stockez des secrets en tant que clés standard dans Key Protect, vous pouvez utiliser cette intégration d'outils pour accéder à des secrets, où qu'ils soient nécessaires dans le flux de travaux de la chaîne d'outils. Pour en savoir plus sur les clés standard dans Key Protect, voir Types de clé.

Avant de configurer une intégration d'outils Key Protect, vérifiez que vous disposez d'une instance du service Key Protect mis à disposition dans la région et le groupe de ressources dans lequel vous souhaitez créer l'outil. Dans certains cas, une instance de service Key Protect peut être générée automatiquement. Par exemple, si vous sélectionnez une nouvelle clé d'API et que vous choisissez de la stocker en tant que secret pour une utilisation ultérieure, vous générez automatiquement l'instance de service Key Protect. Pour obtenir des instructions sur la mise à disposition d'une instance du service Key Protect, voir Mise à disposition du service.

Configurez Key Protect pour gérer les secrets faisant partie de votre chaîne d'outils en toute sécurité :

  1. Si vous configurez cette intégration d'outils lorsque vous créez la chaîne d'outils, à la section Intégrations configurables, cliquez sur Key Protect. Si Key Protect est défini en tant qu'intégration d'outils facultative, il se trouve sous Plus d'outils. Pour créer une autorisation entre la chaîne d'outils et l'instance de service Key Protect, sélectionnez l'option Créer une autorisation pour cette chaîne d'outils dans la liste déroulante Type d'autorisation. Cela permet à la chaîne d'outils d'accéder au matériel secret stocké dans l'instance de service Key Protect.

  2. Si vous disposez d'une chaîne d'outils et que vous souhaitez y ajouter cette intégration d'outil, dans la console IBM Cloud, cliquez sur l'icône de menu ( icône en forme de hamburger ) > Automatisation de la plateforme > Chaînes d'outils. Sur la page Chaînes d'outils, cliquez sur la chaîne d'outils afin d'ouvrir sa page Vue d'ensemble. Vous pouvez également, depuis votre page de présentation de l'application, sur la carte Continuous Delivery, cliquer sur Afficher la chaîne d'outils. Ensuite, cliquez sur Vue d'ensemble.

    a. Cliquez sur Ajouter un outil.

    b. Dans la section Intégrations d'outils, cliquez sur Key Protect.

  3. Saisissez un nom pour cette instance de l'intégration d'outils Key Protect à utiliser dans votre chaîne d'outils. Le nom que vous spécifiez est utilisé dans les outils d'interface utilisateur qui sélectionnent les secrets Key Protect. Il est également utilisé dans le cadre de la référence qui résout les valeurs secrètes lors de l'exécution de la chaîne d'outils. Ce nom d'instance est également affiché sur la vignette d'intégration d'outils Key Protect dans l'espace de travail de la chaîne d'outils.

  4. Examinez les valeurs par défaut de Région et Groupe de ressources et procédez à leur mise à jour, si nécessaire.

  5. Sélectionnez l'instance du service Key Protect que vous souhaitez utiliser.

  6. Pour créer une autorisation entre la chaîne d'outils et l'instance de service Key Protect, cliquez sur le bouton Créer une autorisation. Cela permet à la chaîne d'outils d'accéder au matériel secret stocké dans l'instance de service Key Protect.

  7. Cliquez sur Créer une intégration.

  8. Sur la page Présentation de la chaîne d'outils, sur la carte Outils tiers, cliquez sur Key Protect.

Application des secrets

Une fois votre intégration d'outils Key Protect configurée, vous pouvez l'utiliser pour appliquer des secrets partout où ils sont requis par la chaîne d'outils. L'exemple suivant applique un secret stocké dans Key Protect à une clé d'API IBM Cloud requise par l'intégration d'outils Pipeline. Vous pouvez suivre les mêmes étapes pour appliquer des secrets aux intégrations d'outils Continuous Delivery nécessitant des valeurs secrètes.

Vous devez enregistrer des secrets tiers, tels qu'un webhook Slack ou un jeton d'API Artifactory, dans Key Protect avant de créer une nouvelle chaîne d'outils. Vous ne pouvez sélectionner et stocker que des secrets gérés par IBM tels que des clés d'API IBM Cloud dans Key Protect lorsque vous utilisez votre chaîne d'outils.

  1. Cliquez sur l'icône de clé pour extraire des secrets des magasins sécurisés, tels que Key Protect, pour la clé d'API IBM Cloud.

  2. Dans la zone Fournisseur, indiquez le fournisseur et le nom de l'intégration d'outils Key Protect que vous utilisez pour gérer vos secrets de chaîne d'outils. Par exemple, pour utiliser l'intégration d'outils Key Protect, sélectionnez Key Project: ibm-keyprotect-secrets-1. Vous pouvez utiliser d'autres fournisseurs pour gérer les secrets de votre chaîne d'outils, tels que Hashicorp Vault.

  3. Sélectionnez un nom de secret et cliquez sur OK pour appliquer le secret stocké à la zone qui lui est associée.

Référence secrète à une chambre forte*Référence
à une
forte*

Le nom du secret que vous sélectionnez s'affiche sous forme de capsule. Vous ne pouvez pas modifier le nom secret en ligne, mais vous pouvez cliquer sur Icône Supprimer pour supprimer le nom. Vous pouvez également remplacer le nom du secret en utilisant à nouveau la commande Secrets Picker. Si vous entrez ou collez manuellement un nom de secret dans la zone Secrets, il s'affiche dans un format différent :

Valeur secrète littérale
Valeur secrète

Le format dans lequel s'affiche le secret indique si la valeur fait référence à un secret stocké dans un coffre de back end ou dans votre chaîne d'outils. Si vous utilisez des références à des secrets qui sont gérés par des fournisseurs de secrets tels que Key Protect, vos valeurs secrètes sont centralisées et stockées en toute sécurité dans un seul emplacement. Cette approche résout l'étalement et la prolifération des secrets et vous permet de mettre à jour des secrets sans mettre à jour votre chaîne d'outils. Lorsque vous utilisez des références secrètes, la valeur secrète réelle est résolue lorsque la chaîne d'outils s'exécute en l'extrayant de manière dynamique de Key Protect. Cette approche est utile lorsque vous devez régulièrement appliquer une rotation à la valeur des secrets de votre chaîne d'outils.

Ajout d'une intégration d'outils Key Protect à votre modèle de chaîne d'outils

Vous pouvez ajouter une intégration d'outils Key Protect à votre modèle de chaîne d'outils en ajoutant une définition de service au fichier toolchain.yml de votre référentiel de modèles. Ce fichier est le plan directeur de conception de votre chaîne d'outils et inclut toutes les intégrations d'outils qui sont disponibles lorsque vous créez une instance de chaîne d'outils basée sur ce modèle. Pour personnaliser un modèle de chaîne d'outils existant afin d'inclure une intégration d'outils Key Protect, insérez une définition YAML.

  kp-tool:
    service_id: keyprotect
    parameters:
      name: kp-compliance-secrets
      region: us-south
      resource-group: default
      instance-name: ffs-secrets
      setup-authorization-type: create

Dans certains cas, vous pouvez ajouter une intégration d’outils Key Protect de manière dynamique lors de la création d'une chaîne d'outils. Par exemple, si vous cliquez sur Nouveau pour sélectionner une nouvelle clé d'API, vous pouvez cocher la case Sauvegardez cette clé dans un magasin de secrets pour la réutiliser pour l'enregistrer dans une instance Key Protect afin de l'utiliser à nouveau ultérieurement. Si vous ne disposez pas déjà d'une instance Key Protect, une nouvelle instance est créée pour vous.

Autorisation d'accès de votre chaîne d'outils aux secrets

Les références aux secrets qui sont stockés dans Key Protect sont résolues de manière dynamique lors de l'exécution de la chaîne d'outils. Pour accéder aux secrets requis, vous devez autoriser votre chaîne d'outils à accéder à l'instance Key Protect. Si vous créez une chaîne d'outils à partir d'un modèle, utilisez la liste déroulante Type d'autorisation lors de la configuration de l'intégration Key Protect. Si vous ajoutez une intégration Key Protect à une chaîne d'outils existante, utilisez le bouton Créer une autorisation.

Pour afficher vos autorisations dans IBM Cloud, procédez comme suit :

  1. Dans la console d' IBM Cloud, cliquez sur Gérer > Accès (IAM).
  2. Cliquez sur Autorisations.

Vous pouvez également consulter vos autorisations sur la page « Gérer les autorisations ».

Autorisations de la chaîne d'outils pour Key Protect
Autorisations de la chaîne d'outils pour Key Protect

Vous pouvez créer l'autorisation manuellement, si nécessaire. Pour résoudre avec succès les références secrètes, votre instance de chaîne d'outils doit disposer d'accès Viewer et ReaderPlus à l'instance de service Key Protect appropriée.

Configuration d' Key Protect s à l'aide de l'API

L'intégration d'outils Key Protect prend en charge les paramètres de configuration suivants que vous pouvez utiliser avec l'API et les SDK de la chaîne d'outils HTTP lorsque vous créez, lisez et mettez à jour des intégrations d'outils.

Vous devez spécifier la propriété tool_type_id dans le corps de la demande avec la valeur keyprotect.

Key Protect Paramètres d'intégration de l'outil
Paramètre Utilisation Type Argument Terraform Description
nom d'instance requis, pouvant être mis à jour Chaîne nom_instance Nom de l'instance du service « Key Protect ».
nom requis, pouvant être mis à jour Chaîne nom Nom de cette intégration d'outils. Les références de secret incluent ce nom pour identifier le magasin de secrets dans lequel résident les secrets. Tous les outils de magasin de secrets qui sont intégrés dans une chaîne d'outils doivent avoir un nom unique pour permettre la résolution des secrets de fonctionner correctement.
région requis, pouvant être mis à jour Chaîne emplacement Région IBM Cloud dans laquelle se trouve l'instance de service Key Protect.
groupe-ressources requis, pouvant être mis à jour Chaîne resource_group_name Nom du groupe de ressources dans lequel se trouve l'instance de service Key Protect.

Plus d'informations sur Key Protect

Pour en savoir plus sur Key Protect, voir Présentation du service.