Wenn Sie ein Abo erstellen, fügen Sie es einem Thema hinzu. Abonnenten können dann Nachrichten aus dem Abo empfangen. Wenn Sie verhindern möchten, dass Abonnenten Nachrichten erhalten, können Sie Abos vom Thema trennen.
Hinweis
- Weitere Informationen zu Abos
- Erstellen Sie eines der folgenden Abos: Pull, Push oder BigQuery.
Erforderliche Rollen und Berechtigungen
Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle Pub/Sub Editor (roles/pubsub.editor) für das Thema zuzuweisen, damit Sie die Berechtigung zum Trennen von Abos erhalten.
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.
Diese vordefinierte Rolle enthält die Berechtigung pubsub.topics.detachSubscription, die zum Trennen von Abos erforderlich ist.
Sie können diese Berechtigung auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.
Sie können die Zugriffssteuerung auf Projekt- und auf Ressourcenebene konfigurieren. Sie können ein Abo in einem Projekt erstellen und es an ein Thema in einem anderen Projekt anhängen. Prüfen Sie, ob Sie die erforderlichen Berechtigungen für jedes Projekt haben.
Abo von einem Thema trennen
Sie können ein Abo mit der Google Cloud Console, der Google Cloud CLI, der Clientbibliothek oder der Pub/Sub API von einem Thema trennen.
Console
So trennen Sie ein Abo:
Rufen Sie in der Google Cloud Console die Seite Themen auf.
Wählen Sie das Thema aus, für das Sie ein Abo trennen möchten.
Wählen Sie auf dem Tab Abos das Abo aus, das Sie trennen möchten.
Klicken Sie auf der Seite Abodetails auf Trennen.
Klicken Sie im angezeigten Dialogfeld noch einmal auf Trennen.
gcloud
-
Aktivieren Sie Cloud Shell in der Google Cloud Console.
Unten in der Google Cloud Console wird eine Cloud Shell-Sitzung gestartet und eine Eingabeaufforderung angezeigt. Cloud Shell ist eine Shell-Umgebung, in der das Google Cloud CLI bereits installiert ist und Werte für Ihr aktuelles Projekt bereits festgelegt sind. Das Initialisieren der Sitzung kann einige Sekunden dauern.
-
Verwenden Sie den Befehl
gcloud pubsub topics detach-subscription, um ein Abo zu trennen:gcloud pubsub topics detach-subscription SUBSCRIPTION_ID
Wenn die Anfrage erfolgreich ist, wird in der Befehlszeile eine Bestätigung angezeigt:
Detached subscription [SUBSCRIPTION_ID].
REST
Wenn Sie ein Abo trennen möchten, verwenden Sie die Methode projects.subscriptions.detach.
Anfrage:
Die Anfrage muss mit einem Zugriffstoken im Header Authorization authentifiziert werden. Verwenden Sie den Befehl
gcloud auth application-default print-access-token, um ein Zugriffstoken für die aktuellen Standardanmeldedaten für Anwendungen abzurufen.
POST https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID:detach Authorization: Bearer ACCESS_TOKEN
Wobei:
- PROJECT_ID ist die Projekt-ID.
- SUBSCRIPTION_ID ist Ihre Abo-ID.
Response:
Wenn die Anfrage erfolgreich ist, ist die Antwort ein leeres JSON-Objekt.
C++
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für C++ in der Kurzanleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Pub/Sub C++ API-Referenzdokumentation.
C#
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für C# in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub C# API.
Go
Im folgenden Beispiel wird die Hauptversion der Go Pub/Sub-Clientbibliothek (v2) verwendet. Wenn Sie noch die v1-Bibliothek verwenden, finden Sie hier die Migrationsanleitung zu v2. Eine Liste der Codebeispiele für Version 1 finden Sie unter Eingestellte Codebeispiele.
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Go in der Kurzanleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Go API.
Java
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Java in der Kurzanleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Java API.
Node.js
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Node.js in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Node.js API.
Node.ts
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Node.js in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Node.js API.
PHP
Folgen Sie der Einrichtungsanleitung für PHP unter Schnellstart: Clientbibliotheken verwenden, bevor Sie dieses Beispiel ausprobieren. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub PHP API.
Python
Bevor Sie dieses Beispiel testen, folgen Sie der Einrichtungsanleitung für Python in der Schnellstart-Anleitung: Clientbibliotheken verwenden. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Python API.
Ruby
Im folgenden Beispiel wird die Ruby Pub/Sub-Clientbibliothek v3 verwendet. Wenn Sie noch die v2-Bibliothek verwenden, finden Sie hier die Migrationsanleitung für v3. Eine Liste der Ruby v2-Codebeispiele finden Sie unter eingestellte Codebeispiele.
Bevor Sie dieses Beispiel ausprobieren, folgen Sie der Einrichtungsanleitung für Ruby in der Kurzanleitung zur Verwendung von Clientbibliotheken. Weitere Informationen finden Sie in der Referenzdokumentation zur Pub/Sub Ruby API.
Es kann einige Minuten dauern, bis der Pub/Sub-Dienst das Abo vom Thema getrennt hat.
Nachdem der Pub/Sub-Dienst das Abo von dem Thema getrennt hat, löscht er alle Nachrichten, die er für das Abo erhalten hat. Sie können diese Nachrichten weder aus dem Abo abrufen noch das Abo an ein Thema anhängen. Wenn Sie Ihr Google Cloud -Projektkontingent freigeben möchten, löschen Sie das Abo.
Wenn sich das Abo und das Thema in verschiedenen Google Cloud Projekten befinden, fügt der Pub/Sub-Dienst einen Eintrag in die Audit-Logs beider Projekte ein.
Nächste Schritte
- Abo mit
gcloud-Befehlen erstellen oder ändern - Abo mit REST APIs erstellen oder ändern