Dopo aver creato un abbonamento, puoi modificare il metodo di pubblicazione in push, pull o esportazione.
Prima di iniziare
- Crea uno degli abbonamenti supportati.
Ruoli e autorizzazioni richiesti
Per ottenere le autorizzazioni
necessarie per modificare i tipi di sottoscrizione e gestirli,
chiedi all'amministratore di concederti il
ruolo IAM Pub/Sub Editor (roles/pubsub.editor
)
nell'argomento o nel progetto.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questo ruolo predefinito contiene le autorizzazioni necessarie per modificare i tipi di abbonamento e gestirli. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per modificare i tipi di abbonamento e gestirli sono necessarie le seguenti autorizzazioni:
-
Pull da un abbonamento:
pubsub.subscriptions.consume
-
Crea un abbonamento:
pubsub.subscriptions.create
-
Eliminare un abbonamento:
pubsub.subscriptions.delete
-
Acquista un abbonamento:
pubsub.subscriptions.get
-
Elenca un abbonamento:
pubsub.subscriptions.list
-
Aggiornare un abbonamento:
pubsub.subscriptions.update
-
Allega un abbonamento a un argomento:
pubsub.topics.attachSubscription
-
Recupera il criterio IAM per un abbonamento:
pubsub.subscriptions.getIamPolicy
-
Configura la policy IAM per un abbonamento:
pubsub.subscriptions.setIamPolicy
Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.
Puoi configurare il controllo dell'accesso a livello di progetto e a livello di singola risorsa. Puoi creare una sottoscrizione in un progetto e collegarla a un argomento che si trova in un altro progetto. Assicurati di disporre delle autorizzazioni necessarie per ogni progetto.
Modificare i metodi di invio
Puoi passare da un tipo di abbonamento all'altro.
Console
Per modificare un abbonamento, completa i seguenti passaggi.
- Nella console Google Cloud , vai alla pagina Sottoscrizioni.
- Fai clic su more_vert accanto all'abbonamento da aggiornare.
- In Tipo di pubblicazione, scegli un'opzione di pubblicazione.
- Compila le altre proprietà dell'abbonamento in base alle esigenze.
- Fai clic su Aggiorna.
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.
-
Per modificare l'URL dell'endpoint push, esegui il comando
gcloud pubsub subscriptions modify-push-config
:gcloud pubsub subscriptions modify-push-config SUBSCRIPTION_ID \ --push-endpoint=PUSH_ENDPOINT
Se l'abbonamento utilizza già il recupero, l'impostazione dell'endpoint push cambia il metodo di pubblicazione in push.
Puoi passare dalla pubblicazione al recupero modificando l'endpoint di pubblicazione in una stringa vuota.
- PROJECT_ID è l'ID progetto.
- SUBSCRIPTION_ID è l'ID abbonamento.
- PUSH_ENDPOINT è un URL modificato che vuoi applicare come nuovo endpoint push. Ad esempio,
https://myproject.appspot.com/myhandler
.
REST
Per modificare le configurazioni push di un'iscrizione, utilizza il metodo
projects.subscriptions.modifyPushConfig
:
Richiesta:
La richiesta deve essere autenticata con un token di accesso nell'intestazione
Authorization
. Per ottenere un token di accesso per le attuali
Credenziali predefinite dell'applicazione: gcloud auth application-default print-access-token
.
POST https://pubsub.googleapis.com/v1/projects/PROJECT_ID/subscriptions/SUBSCRIPTION_ID:modifyPushConfig Authorization: Bearer ACCESS_TOKEN
Corpo della richiesta:
{ "pushConfig": { "pushEndpoint": "PUSH_ENDPOINT" } }
Dove:
Risposta:
Se la richiesta ha esito positivo, la risposta è un oggetto JSON vuoto.
C++
Prima di provare questo esempio, segui le istruzioni di configurazione di C++ nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API C++ di Pub/Sub.
C#
Prima di provare questo esempio, segui le istruzioni di configurazione di C# nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub C#.
Go
L'esempio seguente utilizza la versione principale della libreria client Go Pub/Sub (v2). Se utilizzi ancora la libreria v1, consulta la guida alla migrazione alla v2. Per visualizzare un elenco di esempi di codice della versione 1, consulta gli esempi di codice deprecati.
Prima di provare questo esempio, segui le istruzioni di configurazione di Go nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Go.
Java
Prima di provare questo esempio, segui le istruzioni di configurazione di Java nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Java di Pub/Sub.
Node.js
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Node.ts
Prima di provare questo esempio, segui le istruzioni di configurazione di Node.js nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Node.js.
Python
Prima di provare questo esempio, segui le istruzioni di configurazione di Python nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Python.
Ruby
L'esempio seguente utilizza la libreria client Ruby Pub/Sub v3. Se utilizzi ancora la libreria v2, consulta la guida alla migrazione alla v3. Per visualizzare un elenco di esempi di codice Ruby v2, consulta gli esempi di codice deprecati.
Prima di provare questo esempio, segui le istruzioni di configurazione di Ruby nella guida rapida all'utilizzo delle librerie client. Per saperne di più, consulta la documentazione di riferimento dell'API Pub/Sub Ruby.
Passaggi successivi
- Crea o modifica un abbonamento con i comandi
gcloud
. - Crea o modifica un abbonamento con le API REST.