Controllo dell'accesso con IAM

Panoramica

L'API Live Stream utilizza Identity and Access Management (IAM) per controllo dell'accesso.

Puoi configurare il controllo dell'accesso per l'API Live Stream a livello di progetto. Ad esempio, puoi concedere agli sviluppatori l'accesso per elencare e recuperare tutti gli eventi all'interno di un progetto.

Per una descrizione dettagliata di IAM e delle sue funzionalità, consulta la documentazione di IAM. in particolare la sezione sulla gestione dei criteri IAM.

Ogni metodo dell'API Live Stream prevede che chi effettua la chiamata debba disporre delle autorizzazioni necessarie. Per ulteriori informazioni, consulta le sezioni relative ad Autorizzazioni e Ruoli.

Autorizzazioni

Questa sezione riepiloga le autorizzazioni dell'API Live Stream supportate da IAM.

Autorizzazioni obbligatorie

Le tabelle riportate di seguito elencano le autorizzazioni IAM associate all'API Live Stream.

Nome del metodo Assets Autorizzazioni obbligatorie
assets.create livestream.assets.create nella posizione principale, che è una combinazione specifica di progetto Google Cloud e posizione dei dati.
assets.delete livestream.assets.delete nella risorsa asset.
assets.get livestream.assets.get nella risorsa asset.
assets.list livestream.assets.list nella posizione principale, che è una combinazione specifica di progetto Google Cloud e posizione dei dati.
Nome del metodo Channels Autorizzazioni obbligatorie
channels.create livestream.channels.create nella posizione principale, che è una combinazione specifica di progetto Google Cloud e posizione dati.
channels.delete livestream.channels.delete nella risorsa del canale.
channels.get livestream.channels.get nella risorsa del canale.
channels.list livestream.channels.list nella posizione principale, che è una combinazione specifica di progetto Google Cloud e posizione dati.
channels.patch livestream.channels.update nella risorsa del canale.
channels.start livestream.channels.start nella risorsa del canale.
channels.stop livestream.channels.stop nella risorsa del canale.
Nome metodo Clip Autorizzazioni obbligatorie
channels.clips.create livestream.clips.create sul canale principale per la risorsa.
channels.clips.delete livestream.clips.delete nella risorsa clip.
channels.clips.get livestream.clips.get nella risorsa clip.
channels.clips.list livestream.clips.list sul canale principale della risorsa.
Nome del metodo Eventi Autorizzazioni obbligatorie
channels.events.create livestream.events.create sul canale principale per la risorsa.
channels.events.delete livestream.events.delete nella risorsa evento.
channels.events.get livestream.events.get nella risorsa evento.
channels.events.list livestream.events.list sul canale principale per la risorsa.
Nome del metodo di input Autorizzazioni obbligatorie
inputs.create livestream.inputs.create nella posizione principale, che è una combinazione specifica di progetto Google Cloud e posizione dei dati.
inputs.delete livestream.inputs.delete nella risorsa di input.
inputs.get livestream.inputs.get nella risorsa di input.
inputs.list livestream.inputs.list nella posizione principale, che è una combinazione specifica di progetto Google Cloud e posizione dei dati.
inputs.patch livestream.inputs.update nella risorsa di input.
Nome metodo Pools Autorizzazioni obbligatorie
pools.get livestream.pools.get nella risorsa pool.
pools.patch livestream.pools.patch nella risorsa pool.

Ruoli

La tabella riportata di seguito elenca i ruoli IAM per l'API Live Stream, comprese le autorizzazioni associate a ciascun ruolo:

Ruolo IAM Autorizzazioni

(roles/livestream.viewer)

Accesso in lettura alle risorse di live streaming.

livestream.assets.get

livestream.assets.list

livestream.channels.get

livestream.channels.list

livestream.clips.get

livestream.clips.list

livestream.events.get

livestream.events.list

livestream.inputs.get

livestream.inputs.list

livestream.locations.*

  • livestream.locations.get
  • livestream.locations.list

livestream.operations.get

livestream.operations.list

livestream.pools.get

resourcemanager.projects.get

resourcemanager.projects.list

(roles/livestream.editor)

Accesso completo alle risorse di live streaming.

livestream.*

  • livestream.assets.create
  • livestream.assets.delete
  • livestream.assets.get
  • livestream.assets.list
  • livestream.channels.create
  • livestream.channels.delete
  • livestream.channels.get
  • livestream.channels.list
  • livestream.channels.start
  • livestream.channels.stop
  • livestream.channels.update
  • livestream.clips.create
  • livestream.clips.delete
  • livestream.clips.get
  • livestream.clips.list
  • livestream.events.create
  • livestream.events.delete
  • livestream.events.get
  • livestream.events.list
  • livestream.inputs.create
  • livestream.inputs.delete
  • livestream.inputs.get
  • livestream.inputs.list
  • livestream.inputs.update
  • livestream.locations.get
  • livestream.locations.list
  • livestream.operations.cancel
  • livestream.operations.delete
  • livestream.operations.get
  • livestream.operations.list
  • livestream.pools.get
  • livestream.pools.update

resourcemanager.projects.get

resourcemanager.projects.list

Per ulteriori informazioni sui ruoli, consulta Informazioni sui ruoli.

Accesso a Cloud Storage

Per impostazione predefinita, l'API Live Stream ha accesso a tutti i bucket Cloud Storage del tuo progetto. Quando crei il tuo primo evento in live streaming, l'API Live Stream crea un account di servizio utilizzando la seguente convenzione di denominazione:

service-PROJECT_NUMBER@gcp-sa-livestream.iam.gserviceaccount.com

PROJECT_NUMBER è il numero del progetto in cui è abilitata l'API Live Stream. A questo account di servizio viene concesso il ruolo Agente di servizio live streaming e ha le autorizzazioni per eseguire le seguenti operazioni:

  • Leggere i file nei bucket Cloud Storage del progetto
  • Carica i file nei bucket Cloud Storage del progetto
  • Eliminare i file nei bucket Cloud Storage del progetto
  • Elenca i file e i relativi metadati nei bucket Cloud Storage del progetto

Limitazione dell'accesso

Per limitare questo accesso ai bucket Cloud Storage, rimuovi il ruolo Agente di servizio live streaming dall'account di servizio e sostituiscilo con un accesso più granulare. Segui questi passaggi:

  1. Vai alla pagina IAM (scheda Autorizzazioni) nella console Google Cloud.
  2. Individua l'account di servizio con il ruolo Agente di servizio live streaming e seleziona il pulsante di modifica.
  3. Elimina il ruolo Agente di servizio live streaming dall'account di servizio.
  4. Concedi l'accesso all'account di servizio per ogni singolo secchio Cloud Storage:
    1. Vai alla pagina Browser Cloud Storage.
    2. Fai clic su un bucket.
    3. Seleziona la scheda Autorizzazioni.
    4. Fai clic su Aggiungi.
    5. Nel campo Nuove entità, digita il nome dell'account di servizio.
    6. In Ruolo, seleziona Amministratore oggetti di archiviazione.
    7. Fai clic su Salva. L'API Live Stream ora ha accesso al bucket.