Supprimer une version de sujet de schéma

Ce document explique comment supprimer une version spécifique d'un sujet de schéma d'un registre de schémas. Il existe deux façons de supprimer une version d'un sujet :

  • Suppression réversible Marque la version comme supprimée, mais ses informations sont conservées et peuvent être récupérées.

  • Supprimer définitivement. Supprime définitivement la version et les données associées.

Rôles et autorisations nécessaires

Pour obtenir les autorisations nécessaires pour supprimer une version de sujet de schéma, demandez à votre administrateur de vous accorder le rôle IAM Éditeur du registre de schémas Kafka géré (roles/managedkafka.schemaRegistryEditor) sur le sujet parent. Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.

Ce rôle prédéfini contient les autorisations nécessaires pour supprimer une version de sujet de schéma. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :

Autorisations requises

Les autorisations suivantes sont requises pour supprimer une version d'un sujet de schéma :

  • Accordez l'autorisation suivante au sujet parent : managedkafka.googleapis.com/subjectVersions.delete

Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.

Pour en savoir plus sur les rôles prédéfinis, consultez la page Rôles prédéfinis de Managed Service pour Apache Kafka.

Supprimer de manière réversible une version de sujet de schéma

Voici quelques bonnes pratiques à suivre pour supprimer provisoirement une version de sujet de schéma :

  • Vérifiez qu'aucun producteur ni consommateur actifs n'utilise la version du sujet de schéma que vous souhaitez supprimer.

  • Après avoir supprimé une version d'un sujet de schéma, surveillez vos applications pour vous assurer qu'elles continuent de fonctionner comme prévu.

  • La suppression réversible permet de récupérer les versions supprimées d'un sujet de schéma, ce qui est utile si vous n'êtes pas sûr de vouloir supprimer une version de sujet de schéma.

Pour supprimer temporairement une version de sujet de schéma, procédez comme suit.

Console

  1. Dans la console Google Cloud , accédez à la page Registres de schémas.

    Accéder aux registres de schémas

  2. Cliquez sur le nom du registre de schémas où se trouve votre sujet.

  3. Sous Sujets dans ce registre de schémas, cliquez sur le nom du sujet.

  4. Dans la liste Toutes les versions, recherchez la version que vous souhaitez supprimer, puis cliquez sur Autres actions.

  5. Cliquez sur Supprimer la version.

  6. Dans la fenêtre Supprimer la version du schéma, cliquez sur Suppression réversible.

  7. Pour confirmer la suppression, saisissez delete, puis cliquez sur Supprimer.

REST

Pour supprimer de façon réversible une version de sujet de schéma, envoyez une requête DELETE à la méthode projects.locations.schemaRegistries.subjects.versions.delete.

La demande doit être authentifiée à l'aide d'un jeton d'accès dans l'en-tête Authorization. Pour obtenir un jeton d'accès pour les identifiants par défaut actuels de l'application, exécutez la commande suivante : gcloud auth application-default print-access-token.

Pour supprimer de façon réversible la version du sujet du schéma :

  • Utilisez la commande suivante pour le contexte par défaut :

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects/SUBJECT_ID/versions/VERSION_ID
    Authorization: Bearer $(gcloud auth application-default print-access-token)
    
  • Utilisez la commande suivante pour un contexte spécifique :

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/contexts/CONTEXT_ID/subjects/SUBJECT_ID/versions/VERSION_ID
    Authorization: Bearer $(gcloud auth print-access-token --impersonate-service-account=SERVICE_ACCOUNT)
    

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet Google Cloud , par exemple test-project.
  • LOCATION : région Google Cloud où se trouve le registre de schémas, par exemple us-central1.
  • REGISTRY_ID : ID de votre registre de schémas, par exemple test_registry.
  • CONTEXT_ID : ID de votre contexte, par exemple test_context.
  • SUBJECT_ID : ID du sujet, par exemple test_subject.
  • VERSION_ID : version du sujet à supprimer (par exemple, 2 ou latest).
  • SERVICE_ACCOUNT : compte de service, par exemple test-service-account@test-project.iam.gserviceaccount.com.

Si la requête aboutit, l'API renvoie un code d'état 200 OK et un corps de réponse vide.

Pour en savoir plus, consultez la documentation sur la méthode projects.locations.schemaRegistries.subjects.versions.delete.

Supprimer définitivement une version d'un sujet de schéma

Voici quelques bonnes pratiques à suivre pour supprimer définitivement une version de sujet de schéma :

  • Assurez-vous de disposer d'une sauvegarde ou d'un moyen de recréer la version du sujet du schéma si nécessaire.

  • Vérifiez qu'aucun producteur ni consommateur actifs n'utilise la version du sujet de schéma que vous souhaitez supprimer.

  • Testez toujours la suppression des versions de sujet de schéma dans un environnement de développement ou de préproduction avant d'appliquer les modifications en production.

  • Après avoir supprimé une version d'un sujet de schéma, surveillez vos applications pour vous assurer qu'elles continuent de fonctionner comme prévu.

  • Utilisez la suppression définitive lorsque vous devez supprimer définitivement une version de sujet de schéma.

Pour supprimer définitivement une version de sujet de schéma, procédez comme suit.

Console

  1. Dans la console Google Cloud , accédez à la page Registres de schémas.

    Accéder aux registres de schémas

  2. Cliquez sur le nom du registre de schémas où se trouve votre sujet.

  3. Sous Sujets dans ce registre de schémas, cliquez sur le nom du sujet.

  4. Dans la liste Toutes les versions, recherchez la version que vous souhaitez supprimer, puis cliquez sur Autres actions.

  5. Cliquez sur Supprimer la version.

  6. Dans la fenêtre Supprimer la version du schéma, cliquez sur Supprimer définitivement.

  7. Pour confirmer la suppression, saisissez delete, puis cliquez sur Supprimer. Cette action supprime de façon réversible la version du sujet avant de la supprimer définitivement.

REST

Pour supprimer définitivement une version de sujet de schéma à l'aide de l'API REST, vous devez d'abord la supprimer de manière réversible. Une fois la suppression logicielle effectuée, vous pouvez procéder à la suppression définitive.

Pour supprimer définitivement une version de sujet de schéma, envoyez une requête DELETE à la méthode projects.locations.schemaRegistries.subjects.versions.delete. Pour supprimer définitivement la version du sujet du schéma, incluez le paramètre de requête hardDelete=true.

La demande doit être authentifiée à l'aide d'un jeton d'accès dans l'en-tête Authorization. Pour obtenir un jeton d'accès pour les identifiants par défaut actuels de l'application, exécutez la commande suivante : gcloud auth application-default print-access-token.

Pour supprimer définitivement la version du sujet du schéma :

  • Utilisez la commande suivante pour le contexte par défaut :

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/subjects/SUBJECT_ID/versions/VERSION_ID?hardDelete=true
    Authorization: Bearer $(gcloud auth application-default print-access-token)
    
  • Utilisez la commande suivante pour un contexte spécifique :

    DELETE https://managedkafka.googleapis.com/v1main/projects/PROJECT_ID/locations/LOCATION/schemaRegistries/REGISTRY_ID/contexts/CONTEXT_ID/subjects/SUBJECT_ID/versions/VERSION_ID?hardDelete=true
    Authorization: Bearer $(gcloud auth print-access-token --impersonate-service-account=SERVICE_ACCOUNT)
    

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet Google Cloud , par exemple test-project.
  • LOCATION : région Google Cloud où se trouve le registre de schémas, par exemple us-central1.
  • REGISTRY_ID : ID de votre registre de schémas, par exemple test_registry.
  • CONTEXT_ID : ID de votre contexte, par exemple test_context.
  • SUBJECT_ID : ID du sujet, par exemple test_subject.
  • VERSION_ID : version du sujet à supprimer (par exemple, 2 ou latest).
  • SERVICE_ACCOUNT : compte de service, par exemple test-service-account@test-project.iam.gserviceaccount.com.

Si la requête aboutit, l'API renvoie un code d'état 200 OK et un corps de réponse vide.

Pour en savoir plus, consultez la documentation sur la méthode projects.locations.schemaRegistries.subjects.versions.delete.

Étapes suivantes

Apache Kafka® est une marque déposée d'Apache Software Foundation ou de ses filiales aux États-Unis et/ou dans d'autres pays.