Migration de Hyper Protect Crypto Services (HPCS) vers Key Protect Dedicated

Si vous utilisez Hyper Protect Crypto Services (HPCS) et que vous devez migrer vers Key Protect Dedicated, suivez ce guide de migration. Il couvre

Phase d'évaluation :

Migration par caractéristiques :

Achèvement :

Identifier l'utilisation des HPCS

Vérifiez tous les comptes IBM Cloud pour les instances HPCS.

Pour chaque compte IBM Cloud, exécutez la commande CLI IBM Cloud suivante :

ibmcloud resource service-instances --all-resource-groups --long --service-name hs-crypto --limit 100

Avant d'exécuter la commande, confirmez que le CLI de IBM Cloud cible le compte prévu :

ibmcloud target

Vérifiez que le compte qui apparaît dans le résultat correspond au compte que vous voulez vérifier. L'interface de programmation IBM Cloud fonctionne avec un seul compte actif à la fois. L'exécution de la commande avec le mauvais compte peut entraîner l'absence d'instances HPCS.

Veillez à ce que vous :

  • Se connecter avec un utilisateur qui est un administrateur de compte avec un accès Viewer (plateforme) et Reader (service) pour l'ensemble du compte dans tous les services.

  • Ciblez explicitement chaque compte que vous souhaitez vérifier en utilisant la commande suivante :

    ibmcloud target -c <account_id>
    

La commande recherche les instances HPCS dans tous les groupes de ressources du compte ciblé, mais seules les instances que vous êtes autorisé à voir sont renvoyées. Un résultat vide peut indiquer des autorisations insuffisantes ou l'absence d'instances HPCS.

Lister les instances HPCS nécessite un accès au niveau du service car IBM Cloud IAM applique à la fois l'autorisation de la plateforme et du service, et HPCS limite la découverte d'instances aux utilisateurs autorisés.

Vous pouvez également vérifier l'utilisation de HPCS en consultant les rapports de facturation sur le site IBM Cloud. La présence de frais HPCS indique qu'une instance HPCS existe dans le compte. Pour ce faire, connectez-vous à IBM Cloud avec un utilisateur qui est un administrateur de compte et qui dispose d'autorisations suffisantes pour consulter les données de facturation et d'utilisation, ouvrez https://cloud.ibm.com/billing/usage et vérifiez le type d'utilisation Hyper Protect Crypto Services.

Vous pouvez également vérifier l'utilisation des HPCS en consultant la liste des ressources IBM Cloud. Pour ce faire, connectez-vous à IBM Cloud avec un utilisateur qui est un administrateur de compte disposant d'un accès Viewer (plateforme) et Reader (service) pour l'ensemble des services, ouvrez https://cloud.ibm.com/resources et recherchez les instances de ressources du produit Hyper Protect Crypto Services.

Pour plus d'informations sur les rôles IAM et sur la manière d'attribuer un accès, consultez IBM Cloud IAM roles.

Si aucune instance HPCS n'existe, aucune migration n'est nécessaire.

Recherche d'usage

Si vous avez des instances HPCS, vous devez déterminer comment vous utilisez ces ressources. Le tableau suivant décrit les différentes méthodes d'identification de l'utilisation des HPCS :

Tableau 1. Méthodes d'identification de l'utilisation des HPCS
Méthode Description Considérations
événements de suivi de l'activité Fournit des indications factuelles sur l'utilisation du système HPCS par le biais des événements enregistrés Recherchez des événements en utilisant la plus grande fenêtre temporelle possible. L'absence d'événements ne signifie pas nécessairement l'absence d'utilisation. L'utilisation peut se produire lors d'événements rares (par exemple, le redémarrage d'une instance de service IBM Cloud ) ou entre de longs intervalles qui pourraient dépasser la période de conservation des événements.
Associations Montre l'utilisation de HPCS par les ressources IBM Cloud L'absence d'associations ne signifie pas nécessairement l'absence d'utilisation en raison de la nature des systèmes informatiques distribués dans lesquels les ressources ne sont pas toujours synchronisées. Inversement, la présence d'associations n'est pas nécessairement synonyme d'utilisation active. Les associations peuvent être périmées. Certaines ressources IBM Cloud ne créent ni n'utilisent d'associations. Lister les associations en utilisant la commande kp registrations.
Synchronisation des ressources associées Améliore la synchronisation des associations Utilisez la commande kp key sync pour synchroniser explicitement les ressources associées et obtenir des données d'association plus précises.
Rapport sur l'utilisation des clés(KUR) Outil CLI fourni par IBM qui analyse les comptes IBM Cloud et génère un rapport sur les ressources qui font référence aux clés HPCS, regroupées par instance KMS et par clé. Il est également capable de traiter les fichiers journaux d'audit de suivi des activités. Outil de découverte et de rapport uniquement. N'effectue pas d'actions de migration. L'outil peut ne pas détecter toutes les utilisations possibles des clés.

Le présent document fait référence à deux outils distincts :

  • Outil de migration des clés (CRKM )- utilisé pour créer des intentions de migration et déclencher la synchronisation. Cet outil est nécessaire pour la migration automatisée des CRK, voir Outil de migration des clés(CRKM).
  • Key Usage Reporter (KUR)- outil de découverte et de rapport utilisé pour identifier les services qui font référence à des clés HPCS. KUR n'effectue pas d'actions de migration. Voir Key Usage Reporter(KUR).

Avant de procéder à la migration, assurez-vous que la dernière version du plug-in Key Protect CLI est installée. Cette mise à jour assure la compatibilité avec toutes les fonctions et commandes de migration.

Pour vérifier la version actuelle de votre plug-in :

ibmcloud plugin show key-protect

Pour mettre à jour le plug-in CLI d' Key Protect. vers la dernière version :

ibmcloud plugin update key-protect

Si le plug-in n'est pas installé, vous pouvez l'installer en lançant le programme :

ibmcloud plugin install key-protect

Pour HPCS et Key Protect Dedicated, le plug-in CLI Key Protect doit lire le point de terminaison de l'instance cible à partir de la variable d'environnement KP_TARGET_ADDR. La variable KP_TARGET_ADDR fonctionne à la fois pour les points d'extrémité privés et publics.

Cet exemple de commande cible un exemple d'instance HPCS :

export KP_TARGET_ADDR=https://fadedbee-0000-0000-0000-1234567890ab.api.us-south.hs-crypto.appdomain.cloud

Cet exemple de commande cible un exemple d'instance Key Protect Dedicated :

export KP_TARGET_ADDR=https://fadedbee-0000-0000-0000-1234567890ab.api.us-south.kms.appdomain.cloud

Vous pouvez trouver le point de terminaison de l'instance pour HPCS et Key Protect Dedicated dans la console IBM Cloud UI pour l'instance spécifique.

Lorsque vous suivez ce document et que vous utilisez le CLI IBM Cloud pour vous connecter à HPCS, assurez-vous que votre utilisateur de connexion dispose d'une politique IAM au niveau de l'instance HPCS. Une politique IAM au niveau du porte-clés ou de la clé peut ne pas répertorier toutes les associations et autres ressources.

Applications personnalisées versus IBM Cloud services et logiciels Utilisation de HPCS

L'utilisation des HPCS provient de deux sources principales : les applications personnalisées et les services ou logiciels IBM Cloud.

Applications personnalisées

L'utilisation du HPCS par les applications personnalisées se produit lorsque le code personnalisé ou les applications ISV utilisent directement le HPCS.

La recherche de l'utilisation du système HPCS par les applications personnalisées est une tâche que vous devez effectuer à l'aide des événements de suivi de l'activité HPCS, de la recherche de code et d'autres méthodes.

Recherche de l'utilisation des éléments suivants :

Recherchez également l'utilisation de HPCS dans la bibliothèque HPCS PKCS11:

Recherchez également l'utilisation des SDK clients :

Recherche d'identités IAM avec accès à HPCS, principalement des identifiants de service et des profils de confiance, et des identités d'utilisateur moins courantes. Toute identité dont les rôles sont liés au service, à l'instance, au trousseau ou à la clé HPCS est un bon indicateur de l'utilisation potentielle d'une application personnalisée.

IBM Cloud services et logiciels

Pour identifier les services et logiciels IBM Cloud qui utilisent les HPCS, il est recommandé de suivre l'approche suivante :

  1. Commencer par le Key Usage Reporter (KUR )- L'outil Key Usage Reporter(KUR) est le point de départ recommandé. Il analyse vos comptes IBM Cloud et génère un rapport complet des ressources qui font référence aux clés HPCS, regroupées par service et par clé.

  2. Recoupement avec le suivi des activités- Examiner les événements de suivi des activités HPCS sur la plus grande fenêtre temporelle disponible afin d'identifier les services qui ont effectué des opérations cryptographiques. L'outil Key Usage Reporter(KUR) peut traiter les fichiers journaux d'audit de suivi d'activité, produisant des résumés CSV qui aident à identifier l'utilisation de HPCS.

Classification de l'utilisation

Chaque type d'utilisation de HPCS pertinent pour la migration entre dans l'une des catégories suivantes :

Tableau 2. Types d'utilisation des HPCS
Type d'utilisation Description
Clé racine du client(CRK) Chiffrement des clés de chiffrement des données
Clés standard Secrets
KMIP for VMware Utilisé par les clients KMIP de VMware
Clés d'entreprise PKCS#11 Utilisé par l'intermédiaire de PKCS #11 ou GREP11 interfaces
Clés gérées par l'UKO Géré par Unified Key Orchestrator
Terraform Provisionnement des instances HPCS en utilisant l'infrastructure en tant que code
Provisionnement d'instances à l'aide de la CLI IBM Cloud Mise à disposition des instances
Importation sécurisée des informations de clé racine Utilisé en option dans le cadre de l'importation de clés

Migration des clés racine (CRK)

Vérification de l'existence des CRK

Utilisez le script Bash suivant pour compter le nombre total de CRK dans tous les états d' une instance HPCS.

Assurez-vous que vous êtes connecté à IBM Cloud via le CLI IBM Cloud.

# count the total number of CRKs in all states
HPCS_ADDR=https://fadedbee-0000-0000-0000-1234567890ab.api.us-south.hs-crypto.appdomain.cloud
HPCS_INSTANCE_ID=fadedbee-0000-0000-0000-1234567890ab
AUTH_HEADER="${AUTH_TOKEN:-$(jq -r .IAMToken ~/.bluemix/config.json)}"
header="$(curl -i -k -s --head \
  "${HPCS_ADDR}/api/v2/keys?state=0,1,2,3,5&extractable=false" \
  -H "authorization: ${AUTH_HEADER}" \
  -H "bluemix-instance: ${HPCS_INSTANCE_ID}" \
  -H "prefer: return=representation" \
| grep '^Key-Total:' \
| tr -d '\r')"
if [ -n "$header" ]; then
  total="${header#Key-Total: }"
  echo "Total number of CRKs in all states: $total"
else
  echo "Error: Key-Total header not found. Try logging into IBM Cloud again. Check endpoint, auth token, or permissions." >&2
fi

Remplacer HPCS_ADDR et HPCS_INSTANCE_ID par des valeurs valables pour chaque instance HPCS. Vous pouvez trouver le point de terminaison de l'instance pour HPCS et l'ID de l'instance dans la console de l'interface utilisateur IBM Cloud pour l'instance spécifique.

La sortie est similaire à la suivante :

Total number of CRKs in all states: 11

S'il n'existe aucun CRK dans toutes les instances HPCS, la migration des CRK n'est pas nécessaire.

Vérifiez le nombre de CRK dans les états actif (1) et désactivé (expiré) (3) à l'aide du script suivant. Seuls les CRK à l'état actif (1) ou désactivé (expiré) (3) peuvent être utilisés pour des opérations cryptographiques telles que l' enveloppement, le déballage et le remballage. Une CRK désactivée (3) prend en charge le déballage et le remballage, mais pas le remballage.

# count the total number of CRKs in Active (1) or Deactivated (Expired) (3) states
HPCS_ADDR=https://fadedbee-0000-0000-0000-1234567890ab.api.us-south.hs-crypto.appdomain.cloud
HPCS_INSTANCE_ID=fadedbee-0000-0000-0000-1234567890ab
AUTH_HEADER="${AUTH_TOKEN:-$(jq -r .IAMToken ~/.bluemix/config.json)}"
header="$(curl -i -k -s --head \
  "${HPCS_ADDR}/api/v2/keys?state=1,3&extractable=false" \
  -H "authorization: ${AUTH_HEADER}" \
  -H "bluemix-instance: ${HPCS_INSTANCE_ID}" \
  -H "prefer: return=representation" \
| grep '^Key-Total:' \
| tr -d '\r')"
if [ -n "$header" ]; then
  total="${header#Key-Total: }"
  echo "Total number of CRKs in Active (1) or Deactivated (Expired) (3) states: $total"
else
  echo "Error: Key-Total header not found. Try logging into IBM Cloud again. Check endpoint, auth token, or permissions." >&2
fi

S'il n'y a aucun CRK dans l'état actif (1) ou désactivé (expiré) (3) dans toutes les instances HPCS, aucun CRK n'est disponible pour les opérations cryptographiques. Toutefois, il est possible que le système HPCS soit encore utilisé. Des ressources ou des applications peuvent encore être configurées pour référencer des CRK dans d'autres états. Toute tentative d'effectuer des opérations cryptographiques avec de tels CRK échoue.

Interprétation des comptes CRK :

Condition Interprétation Action
Total des CRK = 0 (tous les États) Aucun CRK n'existe dans une instance HPCS La migration CRK n'est pas nécessaire
Total des CRK > 0, mais Actif (1) + Désactivé (3) = 0 Aucun CRK n'est actuellement utilisable pour des opérations cryptographiques Une migration peut encore être nécessaire. Vérifier si des ressources ou des applications font référence à des CRK dans d'autres États
Il existe des CRK actifs (1) ou désactivés (3) Les CRK sont disponibles pour des opérations cryptographiques (entièrement ou partiellement) La migration du CCR est nécessaire

Vous pouvez obtenir le CRN complet des CRK HPCS en utilisant le CLI IBM Cloud kp keys commande.

L'exemple suivant dresse la liste des CRK dans tous les États :

export KP_TARGET_ADDR=https://fadedbee-0000-0000-0000-1234567890ab.api.us-south.hs-crypto.appdomain.cloud
ibmcloud kp keys --instance-id fadedbee-0000-0000-0000-1234567890ab --crn --key-type root-key --key-states active,suspended,deactivated,destroyed --number-of-keys 5000

Remplacer KP_TARGET_ADDR par des valeurs valides pour chaque instance HPCS. Vous pouvez trouver le point de terminaison de l'instance pour HPCS dans la console de l'interface utilisateur IBM Cloud pour l'instance spécifique.

  • La commande répertorie les CRK dans tous les états, y compris les états Suspendu (Disabled) et Détruit (soft deleted).
  • L'utilisation cryptographique active des CRK en état suspendu (désactivé) et détruit (supprimé en douceur) n'est pas autorisée, mais les CRK dans ces états peuvent toujours être référencés par les ressources IBM Cloud ou le code personnalisé.
  • Il est possible de faire passer les CRK des états Suspendu (désactivé) et Détruit (supprimé) à l'état Actif.
  • La commande peut répertorier jusqu'à 5000 CRK à la fois. Une pagination pourrait être nécessaire pour lister tous les CRK.

Migration des clés racine client (CRK) dans les applications personnalisées

Les applications personnalisées peuvent migrer les CRK vers Key Protect Dedicated en réenveloppant la clé de chiffrement des données (DEK) qui est protégée par HPCS.

Le processus de migration comprend les étapes suivantes :

  • Déballer la clé de chiffrement des données (DEK) de HPCS.
  • Envelopper le DEK avec Key Protect Dedicated.
  • Générer une nouvelle clé de chiffrement des données enveloppées (WDEK).
  • Utilisez le nouveau WDEK pour les opérations cryptographiques suivantes.

Dans tous les cas, les applications personnalisées doivent

  • Utiliser un autre point de terminaison. Une instance dédiée à Key Protect possède un point d'arrivée spécifique à cette instance.
  • Utilisez un identifiant de clé différent.
  • Utilisez une identité IAM, probablement un identifiant de service, qui permet d'accéder à Key Protect Dedicated au niveau approprié. De nouvelles politiques IAM ciblant Key Protect Dedicated pourraient être nécessaires.

Pour plus d'informations sur l'API Key Protect, voir la référence de l'API Key Protect.

Migration des clés racine du client (CRK) dans les services et logiciels IBM Cloud

Certains services IBM Cloud et logiciels IBM qui s'intègrent à HPCS peuvent participer à un flux de migration automatisé des CRK vers Key Protect Dedicated. Ce flux de travail est basé sur les intentions de migration et les événements de synchronisation du cycle de vie des clés et minimise les perturbations tout en préservant la continuité cryptographique.

Autre voie de migration : recréer des instances de service

Une alternative à la procédure de migration consiste à créer une nouvelle instance du service IBM Cloud et à la configurer avec un CRK provenant de Key Protect Dedicated dès le départ. Vous copiez ensuite les données et les métadonnées de l'instance de service existante vers la nouvelle. Une fois la nouvelle instance vérifiée, l'instance originale qui utilise le CRK HPCS peut être mise hors service.

Cette approche peut entraîner des interruptions de service pendant la période de transition au cours de laquelle les données sont copiées et les références sont mises à jour pour pointer vers la nouvelle instance. En contrepartie, cette approche nécessite le provisionnement d'une nouvelle infrastructure, la copie des données et la mise à jour de toutes les références (par exemple, les points d'extrémité, les liaisons ou la configuration de l'application) qui pointent vers l'instance de service d'origine. Évaluer le coût opérationnel de la recréation de l'instance de service par rapport à la simplicité d'un nouveau départ avec un CRK dédié Key Protect.

Les sections suivantes décrivent le modèle d'intention de migration, les conditions préalables, le déroulement de la migration et le suivi de la progression.

Aperçu sur la migration

Dans les services IBM Cloud, les clés racine client (CRK) sont généralement utilisées pour chiffrer les clés de chiffrement des données (DEK) gérées par le service. Lors de la migration, les DEK sont réenveloppés de sorte qu'ils sont cryptés par un CRK dédié Key Protect au lieu d'un CRK HPCS, sans qu'il soit nécessaire de recrypter les données.

À un niveau élevé, la migration fonctionne comme suit :

  1. Vous déclarez votre intention de migrer un CRK HPCS vers un CRK dédié spécifique Key Protect.
  2. IBM Cloud les services associés à ce CRK HPCS détectent l'intention.
  3. Chaque service réenveloppe ses DEK et met à jour ses associations de clés.
  4. Les associations avec le CRK HPCS sont supprimées une fois la migration terminée.

Prérequis

Avant de commencer la migration du CRK pour les services et logiciels IBM Cloud, assurez-vous que les conditions suivantes sont remplies :

  • support de service
    • Seuls les services et logiciels IBM Cloud qui supportent explicitement l'intention de migration HPCS vers Key Protect Dedicated CRK peuvent participer.
    • Actuellement, les services et logiciels IBM qui prennent en charge l'intention de migration sont les suivants :
Tableau 1. Méthodes d'identification de l'utilisation des HPCS
IBM Service Soutien aux intentions de migration Instructions spécifiques au service
Configuration d'application Complet N/A
Block Storage for VPC Complet N/A
Cloud Object Storage (COS) Complet N/A
Services de base de données(ICD) Complet N/A
Event Notifications Complet N/A
Event Streams Complet La migration peut prendre jusqu'à un jour ouvrable
Kubernetes(IKS) Complet Composants de stockage
Red Hat OpenShift (ROKS) Complet Composants de stockage
Schematics Complet N/A
Secrets Manager Complet N/A
  • La prise en charge des services et logiciels suivants IBM n'est pas disponible actuellement :

    Il n'est pas nécessaire d'attendre que tous les services prennent en charge les intentions de migration avant de commencer la migration. Utilisez l'outil Key Usage Reporter(KUR) et les événements de suivi des activités pour déterminer quels services utilisent vos CRK HPCS. Si vos clés HPCS ne sont utilisées que par des services qui prennent en charge les intentions de migration, vous pouvez terminer la migration maintenant.

    Un seul CRK HPCS peut être utilisé simultanément par des services pris en charge et des services non pris en charge. Dans ce cas, créez l'intention de migration maintenant. Les services qui prennent en charge les intentions de migration détectent l'intention et achèvent leur migration. L'intention de migration reste attachée au CRK. Lorsque d'autres services ajoutent la prise en charge des intentions de migration, vous devez exécuter la commande de synchronisation à partir de l'outil de migration des clés(CRKM) sur les mêmes CRK. Il n'est pas nécessaire de créer de nouvelles intentions de migration.

    Cela signifie que vous pouvez commencer le processus de migration aujourd'hui et revenir plus tard pour l'achever pour les services restants au fur et à mesure que le support devient disponible.

  • CRKs cibles
    Key Protect Des CRK dédiés doivent exister. Les CRK cibles peuvent être générés ou importés, avec ou sans matériel de clé fourni par le client, à l'aide de l'API, de la CLI ou de l'interface utilisateur.
  • Autorisation IAM
    Les politiques d'autorisation IAM de service à service doivent permettre aux services IBM Cloud d'accéder à l'instance dédiée, au trousseau de clés ou à la clé individuelle Key Protect. Reportez-vous à la documentation de chaque service pour savoir comment établir ces politiques d'autorisation IAM de service à service. Les politiques d'autorisation IAM Service-to-Service doivent être définies dans le même compte que l'instance cible Key Protect Dedicated. Ce compte peut être différent du compte de l'instance de service. Pour les cas d'utilisation tels que les services IBM Cloud Databases, Messages for RabbitMQ, Kubernetes et OpenShift, assurez-vous que l'autorisation déléguée est activée lorsque vous créez la politique IAM. La plupart des échecs de migration sont dus au fait que cette étape n'a pas été exécutée ou qu'elle l'a été de manière incorrecte.

Intentions de migration

Une intention de migration est une sous-ressource facultative attachée à un CRK HPCS. Il spécifie la cible Key Protect Dédié CRK par CRN.

Pour initier la migration :

  1. Créer une intention de migration sur le CRK HPCS source.
  2. L'intention fait référence au CRK dédié à la cible Key Protect.
  3. Les intentions de migration sont créées à l'aide de l'outil de migration des clés.

Après la création d'une intention de migration, le service HPCS émet des événements de synchronisation (un par association existante) qui informent les services IBM Cloud qu'une migration est demandée.

Pour certains services (par exemple, les services IBM Cloud Databases, Messages for RabbitMQ, Kubernetes et OpenShift ), d'autres événements de synchronisation doivent être explicitement déclenchés quelques minutes après la création de l'intention. Vous pouvez déclencher ces événements en utilisant la commande de synchronisation de l'outil de migration des clés.

Logique de migration utilisée par les services IBM Cloud

Lorsqu'un service IBM Cloud traite une intention de migration pour un CRK HPCS, il effectue les étapes suivantes :

  1. Déballer: Le service déballe la DEK enveloppée existante (WDEK) en appelant HPCS pour récupérer la DEK en clair.

  2. Enveloppe: Le DEK est enveloppé en utilisant le CRK dédié à la cible Key Protect, produisant ainsi un nouveau WDEK.

  3. Remplacer: Le service remplace la DEK enveloppée HPCS par la DEK enveloppée Key Protect Dedicated.

  4. Association: Une nouvelle association est créée sur le site Key Protect Dedicated, reliant le CRK cible à la ressource de service.

  5. Informer: Le service notifie au système HPCS que la migration de cette ressource est terminée, ce qui amène le système HPCS à supprimer automatiquement l'association d'origine.

Ce processus est exécuté indépendamment par chaque ressource de service associée au CRK HPCS.

Suivi des progrès de la migration

Plusieurs mécanismes permettent de suivre l'évolution de la migration :

Associations
Le nombre d'associations associées au CRK HPCS diminue, pour atteindre idéalement zéro s'il n'existe pas d'associations d'États. Le nombre d'associations associées au CRK dédié à Key Protect augmente.
Outil de migration des clés (CRKM)
Le rapport indique le nombre d'associations pour les CRKs source et cible. Prend en charge les opérations d'inspection d'état et de réessai en vrac.
Synchronisation manuelle
Les événements de synchronisation peuvent être redéclenchés à tout moment par l'intermédiaire de l'API REST ou de l'outil de migration des clés pour réessayer les migrations incomplètes.

Pour Event Streams après la création d'une intention de migration, la migration peut prendre jusqu'à un jour ouvrable. Pour les autres services, la migration devrait être terminée en moins de quatre heures.

Identifier l'utilisation des CRK HPCS avec le Key Usage Reporter (KUR)

Pour faciliter l'identification des services IBM Cloud qui utilisent des clés racine client (CRK) HPCS, IBM fournit l'outil Key Usage Reporter(KUR).

KUR est un outil en ligne de commande qui analyse les comptes IBM Cloud et génère un rapport sur les ressources qui font référence aux clés HPCS. Il permet d'identifier les services et les ressources qui utilisent des clés HPCS et qui pourraient nécessiter une migration.

Le rapport regroupe les ressources par service et inclut les CRN des ressources cryptées et des clés associées. Vous pouvez utiliser ces informations pour :

  • Identifier les services candidats pour les migrations clés.
  • Recouper les associations et les données de suivi des activités.
  • Soutenir la planification et la validation de la migration.

KUR est également capable de traiter des fichiers journaux d'audit de suivi d'activité, produisant des résumés CSV qui aident à identifier les schémas d'utilisation de HPCS.

Considérations importantes et limites

  • L'outil de migration est fourni dans la mesure du possible et peut ne pas détecter tous les schémas d'utilisation possibles.
  • Tous les services IBM Cloud ne prennent pas actuellement en charge les intentions de migration.
  • Certains services ou parties spécifiques de services (par exemple, les demandes de remboursement de volumes persistants IKS et ROKS) nécessitent des procédures spécifiques et ne sont pas entièrement couverts par les intentions de migration. Pour plus d'informations, consultez les sections suivantes.
  • Vous êtes responsable de la validation de l'arrêt de l'utilisation de HPCS avant la mise hors service de HPCS.

Exemple de scénario de migration

L'exemple suivant illustre comment migrer un CRK HPCS utilisé par une instance Cloud Object Storage.

Point de départ :

  • Un CRK HPCS (HPCS_key_1) protège un DEK utilisé par une instance Cloud Object Storage (COS_1).
  • L'objectif est que COS_1 utilise à la place un CRK dédié à Key Protect (KP_D_key_1), sans déplacer de données.

Étape 1 : Identifier l'utilisation du CRK HPCS

Utilisez l'outil Key Usage Reporter(KUR) pour analyser vos comptes et identifier les services et ressources qui utilisent HPCS_key_1. Recouper le rapport KUR avec les événements de suivi des activités pour confirmer l'utilisation.

Étape 2 : Créer le CRK cible dans Key Protect Dedicated

Créez KP_D_key_1 dans votre instance dédiée Key Protect. Le CRK cible peut être généré ou importé, avec ou sans matériel clé fourni par le client, par l'intermédiaire de l'API, de l'ILC ou de l'interface utilisateur.

Étape 3 : Mise en place de politiques d'autorisation IAM

Créer des politiques d'autorisation IAM de service à service qui permettent à Cloud Object Storage d'accéder à l'instance dédiée Key Protect, au trousseau de clés ou à la clé individuelle où réside KP_D_key_1. Les politiques IAM doivent être définies dans le même compte que l'instance Key Protect Dedicated cible. Pour les services tels que IBM Cloud Databases, Messages for RabbitMQ, Kubernetes, et OpenShift,, assurez-vous que l'autorisation déléguée est activée lorsque vous créez la politique IAM.

Dans la plupart des cas, les migrations échouent parce que les politiques d'autorisation IAM ne sont pas configurées ou le sont de manière incorrecte.

Avant de poursuivre, utilisez la commande authz-check de l'outil CRKM pour vérifier que les politiques d'autorisation IAM requises sont en place. La commande authz-check inspecte l'association sur chaque CRK HPCS source et vérifie s'il existe une politique d'autorisation IAM correspondante qui permettrait à chaque service enregistré d'accéder au CRK dédié cible Key Protect. Pour chaque association, l'outil indique si une politique correspondante a été trouvée ou si une politique est manquante, ainsi qu'un modèle de la politique à créer. L'exécution de ce contrôle avant la création des intentions de migration permet d'identifier et de corriger les lacunes en matière d'autorisation qui, autrement, entraîneraient des échecs de migration. Pour plus d'informations, voir l'outil de migration des clés(CRKM).

Étape 4 : Créer l'intention de migration

Utiliser l'outil de migration des clés(CRKM) pour créer une intention de migration sur HPCS_key_1 qui fait référence au CRK cible KP_D_key_1. L'outil CRKM accepte un fichier CSV qui contient des paires de CRN HPCS source et de CRN dédiés Key Protect cible, ce qui permet de créer des intentions de migration en masse.

Après la création de l'intention de migration, HPCS émet des événements de synchronisation qui informent les services associés de la demande de migration.

Étape 5 : Lancer la synchronisation

Pour certains services (par exemple, IBM Cloud Databases, Messages for RabbitMQ, Kubernetes, et OpenShift ), d'autres événements de synchronisation doivent être explicitement déclenchés quelques minutes après la création de l'intention. Utilisez la commande de synchronisation de l'outil CRKM pour déclencher ces événements.

Vous pouvez exécuter la commande sync à tout moment pour réessayer des migrations incomplètes.

Étape 6 : Suivre la progression de la migration

Utilisez la commande Status de l'outil CRKM pour vérifier l'état d'avancement de la migration. L'outil indique le nombre d'associations pour le CRK HPCS source et le CRK dédié cible Key Protect. En tant que services, la migration est complète :

  • Le nombre d'associations sur HPCS_key_1 diminue.
  • Le nombre d'associations sur KP_D_key_1 augmente.

Pour Event Streams, la migration peut prendre jusqu'à un jour ouvrable. Pour les autres services, la migration devrait s'achever en moins de quatre heures.

À propos de l'outil de migration des clés (CRKM)

L' outil de migration des clés(CRKM) est un outil CLI qui prend en charge les opérations suivantes :

  • Statut: Indique l'état d'avancement de la migration en montrant le nombre d'associations pour les CRK source et cible sur l'ensemble des paires de CRK.
  • Authz-check: Vérifie que les politiques d'autorisation IAM requises sont en place pour chaque service enregistré avant la migration. Il signale les politiques correspondantes et manquantes à l'aide de modèles exploitables.
  • Create (Créer ): Crée des intentions de migration en masse à partir d'un fichier CSV de paires CRK CRN source et cible.
  • Sync: Déclenche des événements de synchronisation pour inciter les services à traiter l'intention de migration. Peut être exécuté plusieurs fois pour réessayer des migrations incomplètes.
  • Supprimer: supprime l'intention de migration d'une ou plusieurs clés source.

L'outil CRKM est nécessaire pour la migration automatisée des CRK et fonctionne avec l'outil KUR, qui gère la découverte et les rapports.

Migration des clés standard

Les clés standard du système HPCS stockent des données secrètes telles que des clés API, des mots de passe ou des clés de chiffrement qui sont utilisées directement par les applications. Contrairement aux CRK, les clés standard n'utilisent pas le flux de travail de l'intention de migration. La migration des clés standard nécessite que vous récupériez le matériel de clé de HPCS et que vous le reprovisionniez dans un service pris en charge.

Vérification de l'existence de clés standard

Utilisez le script bash suivant pour compter le nombre total de clés standard dans tous les états de clé standard valides, dans chaque instance HPCS.

Assurez-vous que vous êtes connecté à IBM Cloud via le CLI IBM Cloud.

# count the total number of Standard keys in all states
HPCS_ADDR=https://fadedbee-0000-0000-0000-1234567890ab.api.us-south.hs-crypto.appdomain.cloud
HPCS_INSTANCE_ID=fadedbee-0000-0000-0000-1234567890ab
AUTH_HEADER="${AUTH_TOKEN:-$(jq -r .IAMToken ~/.bluemix/config.json)}"
header="$(curl -i -k -s --head \
  "${HPCS_ADDR}/api/v2/keys?state=1,5&extractable=true" \
  -H "authorization: ${AUTH_HEADER}" \
  -H "bluemix-instance: ${HPCS_INSTANCE_ID}" \
  -H "prefer: return=representation" \
| grep '^Key-Total:' \
| tr -d '\r')"
if [ -n "$header" ]; then
  total="${header#Key-Total: }"
  echo "Total number of Standard keys in all states: $total"
else
  echo "Error: Key-Total header not found. Try logging into IBM Cloud again. Check endpoint, auth token, or permissions." >&2
fi

Remplacer HPCS_ADDR et HPCS_INSTANCE_ID par des valeurs valables pour chaque instance HPCS. Vous pouvez trouver le point de terminaison de l'instance pour HPCS et l'ID de l'instance dans la console de l'interface utilisateur IBM Cloud pour l'instance spécifique.

La sortie est similaire à la suivante :

Total number of Standard keys in all states: 4

Si la sortie est une ligne vide, connectez-vous de nouveau à IBM Cloud via le CLI IBM Cloud.

Si les clés standard sont nulles dans toutes les instances HPCS, la migration des clés standard n'est pas nécessaire.

Vérifiez le nombre de clés standard dans l'état Détruit (5) à l'aide du script suivant.

# count the total number of Standard keys in Destroyed (5) state.
HPCS_ADDR=https://fadedbee-0000-0000-0000-1234567890ab.api.us-south.hs-crypto.appdomain.cloud
HPCS_INSTANCE_ID=fadedbee-0000-0000-0000-1234567890ab
AUTH_HEADER="${AUTH_TOKEN:-$(jq -r .IAMToken ~/.bluemix/config.json)}"
header="$(curl -i -k -s --head \
  "${HPCS_ADDR}/api/v2/keys?state=5&extractable=true" \
  -H "authorization: ${AUTH_HEADER}" \
  -H "bluemix-instance: ${HPCS_INSTANCE_ID}" \
  -H "prefer: return=representation" \
| grep '^Key-Total:' \
| tr -d '\r')"
if [ -n "$header" ]; then
  total="${header#Key-Total: }"
  echo "Total number of Standard keys in Destroyed (5) state: $total"
else
  echo "Error: Key-Total header not found. Try logging into IBM Cloud again. Check endpoint, auth token, or permissions." >&2
fi

Si toutes les touches standard sont dans l'état Détruit (5) (effacement progressif), l'absence d'utilisation n'est pas garantie. Une ressource IBM Cloud ou une application personnalisée peut encore faire référence à la clé. Dans ce cas, les opérations sont censées échouer lors de la prochaine tentative de récupération des clés.

Les clés standard ne peuvent exister qu'à l'état actif (1) ou détruit (5). D'autres États clés ne s'appliquent qu'aux CRK.

Vous pouvez obtenir le CRN complet des clés standard HPCS en utilisant le CLI IBM Cloud kp keys commande.

L'exemple suivant répertorie les touches standard dans les différents états possibles :

export KP_TARGET_ADDR=https://fadedbee-0000-0000-0000-1234567890ab.api.us-south.hs-crypto.appdomain.cloud
ibmcloud kp keys --instance-id fadedbee-0000-0000-0000-1234567890ab --crn --key-type standard-key --key-states active,destroyed --number-of-keys 5000

Remplacer KP_TARGET_ADDR par des valeurs valides pour chaque instance HPCS. Vous pouvez trouver le point de terminaison de l'instance pour HPCS dans la console de l'interface utilisateur IBM Cloud pour l'instance spécifique.

  • La commande peut répertorier jusqu'à 5000 touches standard à la fois. Une pagination peut être nécessaire pour énumérer toutes les clés standard.

Vérification de l'utilisation des HPCS sur AIX

Si vous disposez de systèmes AIX (sur IBM Cloud ou sur site) et que des clés standard sont présentes dans HPCS, exécutez les commandes suivantes sur l'hôte AIX pour vérifier si ces clés sont utilisées. Le champ TYPE dans la sortie des commandes hdcryptmgr indique la méthode d'authentification HPCS.

keysvrmgr show -t hpcs
hdcryptmgr showlv <lvname> -v
hdcryptmgr showpv <pvname> -v

Si aucun volume logique ou physique ne signale TYPE=hpcs, le système AIX n'utilise pas activement les clés standard HPCS.

À partir de AIX® 7.3 Technology Level (TL) 4 Service Pack (SP) 1, la méthode d'authentification Key Protect Dedicated Server remplace la méthode d'authentification Hyper Protect Crypto Services (HPCS) qui est obsolète. L'option -t de la commande hdcryptmgr est mise à jour pour inclure la valeur kms comme valeur valide à la place de la valeur hpcs. La valeur de l'option hpcs est acceptée même pour Key Protect. Pour migrer de HPCS vers le serveur Key Protect, voir la section Migration de HPCS vers le serveur Key Protect dans la rubrique Volumes logiques chiffrés.

Migration des clés standard

S'il existe des clés standard, en plus des utilisations Direct Link et AIX mentionnées précédemment, vous devez les migrer en suivant les étapes suivantes :

  1. Récupérer le support de la clé: Utilisez l'API HPCS pour récupérer le matériel de clé en clair de chaque clé standard.

  2. Reprovisionner le support de clé: Stocker le support de clé récupéré dans un service pris en charge. Pour ce faire, vous pouvez :

    • Importation du matériau de la clé dans une nouvelle clé standard dédiée Key Protect.
    • Stocker le secret dans IBM Cloud Secrets Manager, ce qui est la solution recommandée pour les documents secrets généraux.
  3. Mettre à jour les références des applications: Mettez à jour les applications personnalisées, les configurations de service ou les politiques IAM qui font référence à la clé standard HPCS. Les applications doivent être mises à jour avec le nouveau point de terminaison du service, l'identifiant de la clé et toutes les politiques IAM requises qui autorisent l'accès à la nouvelle clé sur Key Protect Dedicated ou Secrets Manager.

  4. Valider: Confirmez que toutes les applications et tous les services fonctionnent correctement avec la nouvelle clé avant de mettre hors service la clé standard HPCS.

KMIP pour la migration VMWare

VMware Le support KMIP pour HPCS se termine le 31 décembre 2026, après quoi le service KMIP pour VMware ne fonctionnera plus. Des instructions détaillées sur la migration vers Key Protect Dedicated sont publiées ici.

PKCS #11 ( GREP11 )

Les clés PKCS #11 d'entreprise utilisées par l'intermédiaire des interfaces PKCS #11 ou GREP11 ne sont pas prises en charge par Key Protect Dedicated.

Pour déterminer si cette fonction est utilisée, vérifiez les journaux de suivi des activités HPCS pour les entrées dont le champ d'action est hs-crypto.ep11.use ou commence par hs-crypto.keystore. La présence de ces entrées indique que la norme PKCS #11 ( GREP11 ) est utilisée.

Consultez le guide de migration GREP11/PKCS#11.

Orchestrateur de clés unifiées (UKO)

Les clés gérées par l'UKO ne sont pas prises en charge par Key Protect Dedicated.

Reportez-vous au guide de migration de l'UKO.

Terraform

Pour utiliser Terraform avec Key Protect Dedicated, la variable d'environnement IBMCLOUD_KP_API_ENDPOINT doit être définie sur le point de terminaison API public ou privé de l'instance Key Protect Dedicated spécifique.

Le provisionnement d'une nouvelle instance Key Protect Dedicated est disponible via l'interface utilisateur de la console IBM Cloud et le CLI IBM Cloud. La création de nouvelles instances Key Protect Dedicated avec Terraform n'est pas prise en charge.

Pour plus d'informations, voir Mise en place de Terraform pour Key Protect

Provisionnement d'instances à l'aide de l'interface de ligne de commande (CLI) d' IBM Cloud

Le processus de provisionnement des instances Hyper Protect Crypto Services diffère du processus de provisionnement des instances dédiées Key Protect en utilisant le CLI IBM Cloud.

Voir les instructions pour provisionner les instances Key Protect Dedicated en utilisant le CLI IBM Cloud.

Importation sécurisée des informations de clé racine

L' importation sécurisée de matériel de clé racine n'est pas prise en charge par Key Protect Dedicated.

Pour déterminer si cette fonction est utilisée, vérifiez les journaux de suivi des activités HPCS pour les entrées dont le champ d'action est hs-crypto.import-token.create ou hs-crypto.import-token.read. La présence de ces entrées indique que l'importation sécurisée du matériel de clé racine est utilisée.

Key Protect Dedicated prend en charge l'importation régulière d'éléments de clé racine, lorsque les éléments de clé sont cryptés en transit à l'aide de HTTPS.

Après la migration

Après avoir terminé la migration vers Key Protect Dedicated, vous devez valider que les instances HPCS ne sont plus utilisées activement et prendre des mesures contrôlées pour réduire les risques avant la date de fin de service de HPCS.

Valider que le système HPCS n'est plus utilisé

Après la migration, inspectez les événements de suivi de l'activité HPCS pour confirmer qu'aucune opération n'est effectuée sur les instances HPCS.

Examiner les événements sur la plus grande fenêtre de conservation disponible.

Si les événements de suivi de l'activité indiquent une utilisation continue :

  1. Identifier le service ou la charge de travail responsable de l'utilisation.
  2. Vérifier si la ressource prend en charge la migration du CRK en utilisant l'intention de migration.
  3. Terminez ou réessayez la migration pour cette utilisation avant de poursuivre.

L'absence d'événements de suivi d'activité ne prouve pas de manière concluante l'absence d'utilisation. Certains services et applications personnalisées utilisent des clés peu fréquemment ou uniquement lors d'événements du cycle de vie tels que le redémarrage, la restauration ou le basculement.

Désactiver progressivement les CRK HPCS migrés

Une fois que vous êtes sûr que certains CRK HPCS ne sont plus nécessaires, vous pouvez désactiver ces CRK.

Il est recommandé de désactiver les CRK avant de les supprimer, pour les raisons suivantes

  • Toute opération cryptographique restante échoue immédiatement avec une erreur claire.
  • Les clés désactivées peuvent être réactivées rapidement si des dépendances inattendues sont découvertes.
  • Un mécanisme de retour en arrière sûr est prévu pendant la validation.

Il est recommandé de s'assurer que tous les CRK HPCS qui ont été migrés avec succès sont dans l'état désactivé.

Les CRK désactivés peuvent être réactivés à tout moment et ne bloquent pas de manière permanente la remédiation.

Étapes finales et considérations relatives au déclassement

La suppression des CRK et des clés standard HPCS est techniquement possible. Il convient toutefois de faire preuve de prudence lors de la suppression :

  • Les clés supprimées ne peuvent être récupérées que pendant une période limitée après leur suppression.
  • À l'expiration de la fenêtre de récupération, la suppression est permanente.
  • La récupération devient de plus en plus difficile à mesure que le temps passe et que les charges de travail évoluent.

Pour ces raisons, il n'est pas nécessaire de supprimer les clés HPCS dans le cadre de la migration.

Une approche conservatrice est recommandée :

  1. Laisser les instances HPCS et les CRK désactivés.
  2. Ne les réactivez pas et ne les modifiez pas après la validation.

Cette approche minimise les risques tout en garantissant la réussite de la migration cryptographique.

Vos responsabilités

Vous êtes responsable de :

  • Vérification de l'arrêt de l'utilisation du système HPCS
  • Valider le comportement des applications et des services après la migration

Ne procédez aux activités de déclassement que lorsque vous avez la certitude que les HPCS ne sont plus nécessaires pour aucune charge de travail.