Ce document explique comment lister un sujet Pub/Sub. Pour lister un sujet, vous pouvez utiliser la console Google Cloud , gcloud CLI, la bibliothèque cliente ou l'API Pub/Sub.
Avant de commencer
- Découvrez les sujets et le workflow de publication de messages.
- Créez un sujet.
Rôles et autorisations requis
Pour obtenir les autorisations nécessaires pour lister et gérer les thèmes, demandez à votre administrateur de vous accorder le rôle IAM Éditeur Pub/Sub(roles/pubsub.editor
) sur votre thème ou votre projet.
Pour en savoir plus sur l'attribution de rôles, consultez la page Gérer l'accès aux projets, aux dossiers et aux organisations.
Ce rôle prédéfini contient les autorisations requises pour lister et gérer les thèmes. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour lister et gérer les thèmes :
-
Créez un sujet :
pubsub.topics.create
-
Supprimer un thème :
pubsub.topics.delete
-
Dissocier un abonnement d'un sujet :
pubsub.topics.detachSubscription
-
Obtenir un sujet :
pubsub.topics.get
-
Lister un sujet :
pubsub.topics.list
-
Publier dans un sujet :
pubsub.topics.publish
-
Mettre à jour un thème :
pubsub.topics.update
-
Obtenez la stratégie IAM pour un sujet :
pubsub.topics.getIamPolicy
-
Configurez la stratégie IAM pour un sujet :
pubsub.topics.setIamPolicy
Vous pouvez également obtenir ces autorisations 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 au niveau 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.
Lister un thème
Console
Dans la console Google Cloud , accédez à la page Sujets de Pub/Sub.
La page Thèmes liste tous les thèmes disponibles.
Par défaut, la console renvoie 50 sujets. Vous pouvez augmenter cette valeur pour renvoyer un maximum de 200 thèmes à l'aide du menu déroulant Lignes par page. Ce bouton n'apparaît dans la console que si vous avez plus de 20 thèmes dans un projet.
gcloud
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
-
Pour lister les sujets, utilisez la commande
gcloud pubsub topics list
:gcloud pubsub topics list
- PROJECT_ID est l'ID de votre projet.
Par défaut, 100 résultats au maximum sont renvoyés par requête.
Vous pouvez spécifier une autre valeur allant jusqu'à 1 000 à l'aide du paramètre de taille des pages.
Par exemple, avec Google Cloud CLI, spécifiez --page-size=1000
.
REST
Pour lister les thèmes, utilisez la méthode projects.topics.list
:
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 actuels de l'application, exécutez la commande suivante : gcloud auth application-default print-access-token
.
GET https://pubsub.googleapis.com/v1/projects/PROJECT_ID/topics Authorization: Bearer ACCESS_TOKEN
Où :
Réponse :
{ "topics": [ { "name": "projects/PROJECT_ID/topics/mytopic1", ... }, { "name": "projects/PROJECT_ID/topics/mytopic2", ... } ] }
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 sur l'API Pub/Sub pour 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 sur l'API Pub/Sub pour 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 consulter la liste des exemples de code de la version 1, consultez les exemples de code obsolètes.
Avant d'essayer cet exemple, suivez les instructions de configuration pour Go du guide de démarrage rapide : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Go.
Java
Avant d'essayer cet exemple, suivez les instructions d'installation dans le langage Java 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 sur l'API Pub/Sub pour 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 sur l'API Pub/Sub pour 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 sur l'API Pub/Sub pour 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 sur l'API Pub/Sub pour 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 sur l'API Pub/Sub pour Python.
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 version 3. 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 pour Ruby du guide de démarrage rapide : Utiliser les bibliothèques clientes. Pour en savoir plus, consultez la documentation de référence sur l'API Pub/Sub pour Ruby.
Étapes suivantes
Choisissez le type d'abonnement pour votre sujet.
Créez un abonnement pour votre sujet : pull, push ou BigQuery.
Créez ou modifiez un sujet avec la gcloud CLI.
Créez ou modifiez un thème à l'aide des API REST.