Lorsque vous créez un abonnement, vous l'associez à un sujet. Les abonnés peuvent alors recevoir des messages de l'abonnement. Pour que les abonnés ne reçoivent plus de messages, vous pouvez dissocier les abonnements du sujet.
Avant de commencer
- En savoir plus sur les abonnements
- Créez l'un des abonnements suivants : pull, push ou BigQuery.
Rôles et autorisations nécessaires
Pour obtenir l'autorisation nécessaire pour dissocier des abonnements, demandez à votre administrateur de vous accorder le rôle IAM Éditeur Pub/Sub (roles/pubsub.editor) sur le sujet.
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 l'autorisation pubsub.topics.detachSubscription, qui est nécessaire pour dissocier des abonnements.
Vous pouvez également obtenir cette autorisation avec des rôles personnalisés ou d'autres rôles prédéfinis.
Vous pouvez configurer le contrôle des accès au niveau du projet et de chaque ressource. Vous pouvez créer un abonnement dans un projet et l'associer à un sujet situé dans un autre projet. Assurez-vous de disposer des autorisations requises pour chaque projet.
Dissocier un abonnement d'un sujet
Vous pouvez dissocier un abonnement d'un sujet à l'aide de la console Google Cloud , de Google Cloud CLI, de la bibliothèque cliente ou de l'API Pub/Sub.
Console
Pour dissocier un abonnement, procédez comme suit :
Dans la console Google Cloud , accédez à la page Sujets.
Sélectionnez le thème dont vous souhaitez détacher un abonnement.
Dans l'onglet Abonnements, sélectionnez l'abonnement à dissocier.
Sur la page Détails de l'abonnement, cliquez sur Dissocier.
Dans la boîte de dialogue qui s'affiche, cliquez de nouveau sur Dissocier.
gcloud
-
Dans la console Google Cloud , activez Cloud Shell.
En bas de la console Google Cloud , une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement de shell dans lequel la Google Cloud CLI est déjà installée, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
-
Pour dissocier un abonnement, utilisez la commande
gcloud pubsub topics detach-subscription:gcloud pubsub topics detach-subscription SUBSCRIPTION_ID
Si la requête aboutit, la ligne de commande affiche une confirmation :
Detached subscription [SUBSCRIPTION_ID].
REST
Pour détacher un abonnement, utilisez la méthode projects.subscriptions.detach.
Requête :
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 de l'application actuels, utilisez la commande
gcloud auth application-default print-access-token.
POST https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID:detach Authorization: Bearer ACCESS_TOKEN
Où :
- PROJECT_ID correspond à l'ID du projet.
- SUBSCRIPTION_ID est l'ID de votre abonnement.
Réponse :
Si la requête aboutit, la réponse est un objet JSON vide.
C++
Avant d'essayer cet exemple, suivez les instructions de configuration pour C++ dans le guide de démarrage rapide : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub en langage C++.
C#
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage C# qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub en langage C#.
Go
L'exemple suivant utilise la version majeure de la bibliothèque cliente Go Pub/Sub (v2). Si vous utilisez toujours la bibliothèque v1, consultez le guide de migration vers la v2. Pour afficher la liste des exemples de code v1, consultez les exemples de code obsolètes.
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go dans le guide de démarrage rapide : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub en langage Go.
Java
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Java se trouvant sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub en langage Java.
Node.js
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Node.js qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub en langage Node.js.
Node.ts
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Node.js qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub en langage Node.js.
PHP
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage PHP qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub en langage PHP.
Python
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Python qui se trouvent sur la page Démarrage rapide : utiliser des bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Python Pub/Sub.
Ruby
L'exemple suivant utilise la bibliothèque cliente Ruby Pub/Sub v3. Si vous utilisez toujours la bibliothèque v2, consultez le guide de migration vers la v3. Pour obtenir la liste des exemples de code Ruby v2, consultez les exemples de code obsolètes.
Avant d'essayer cet exemple, suivez les instructions de configuration de Ruby dans le guide de démarrage rapide : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence de l'API Pub/Sub en langage Ruby.
Le service Pub/Sub peut prendre plusieurs minutes pour finir de dissocier l'abonnement du sujet.
Une fois que le service Pub/Sub a dissocié l'abonnement du sujet, il supprime tous les messages qu'il conserve pour l'abonnement. Vous ne pourrez plus récupérer ces messages dans l'abonnement ni associer de nouveau cet abonnement à un sujet. Pour libérer votre quota de projets Google Cloud , supprimez l'abonnement.
Si l'abonnement et le sujet se trouvent dans des projets Google Cloud différents, le service Pub/Sub ajoute une entrée aux journaux d'audit des deux projets.
Étapes suivantes
- Créez ou modifiez un abonnement à l'aide des commandes
gcloud. - Créez ou modifiez un abonnement avec les API REST.