Questa pagina descrive gli account di servizio, i ruoli e le autorizzazioni di Cloud Deploy.
L'accesso in Cloud Deploy è controllato utilizzando Identity and Access Management (IAM). IAM consente di creare e gestire le autorizzazioni per le risorse Google Cloud. Cloud Deploy fornisce un insieme specifico di ruoli IAM predefiniti in cui ciascun ruolo contiene un set di autorizzazioni. Puoi utilizzare questi ruoli per concedere un accesso più granulare a risorse Google Cloud specifiche e impedire accessi indesiderati ad altre risorse. IAM consente di adottare il principio di sicurezza del privilegio minimo, in modo da concedere solo l'accesso necessario alle tue risorse.
Consulta Utilizzo di IAM per limitare l'accesso a Cloud Deploy per scoprire di più sulle funzionalità di sicurezza avanzate per il controllo dell'accesso.
Account di servizio in Cloud Deploy
Per impostazione predefinita, Cloud Deploy viene eseguito utilizzando l'account di servizio predefinito di Compute Engine. L'account di servizio dispone di autorizzazioni sufficienti per il rendering dei manifest e il deployment nelle destinazioni.
Scopri di più su come Cloud Deploy utilizza gli account di servizio.
Ruoli predefiniti di Cloud Deploy
Con IAM, ogni metodo API nell'API Cloud Deploy richiede che l'identità che effettua la richiesta API disponga delle autorizzazioni appropriate per utilizzare la risorsa. Le autorizzazioni vengono concesse impostando criteri che concedono ruoli a un'entità (account utente, gruppo o di servizio) del progetto. Puoi concedere più ruoli a un'entità nella stessa risorsa.
La documentazione IAM include un riferimento disponibile per la ricerca di tutti i ruoli predefiniti.
La tabella seguente elenca i ruoli IAM di Cloud Deploy e le autorizzazioni che includono:
Ruoli di Cloud Deploy |
Autorizzazioni |
Amministratore Cloud Deploy( Controllo completo delle risorse Cloud Deploy. |
|
Approvatore Cloud Deploy( Autorizzazione per l'approvazione o il rifiuto delle implementazioni. |
|
Amministratore CustomTargetType Cloud Deploy( Autorizzazione per gestire le risorse CustomTargetType |
|
Sviluppatore Cloud Deploy( Autorizzazione per gestire la configurazione del deployment senza l'autorizzazione ad accedere alle risorse operative, come i target. |
|
Esecutore Cloud Deploy( Autorizzazione per eseguire le operazioni di Cloud Deploy senza autorizzazione a consegnare a una destinazione. |
|
Operatore Cloud Deploy( Autorizzazione per gestire la configurazione del deployment. |
|
Responsabile release di Cloud Deploy( Autorizzazione per creare release e lanci di Cloud Deploy. |
|
Visualizzatore Cloud Deploy( Può visualizzare le risorse di Cloud Deploy. |
|
Oltre ai ruoli predefiniti di Cloud Deploy, i ruoli Visualizzatore, Editor e Proprietario di base includono anche le autorizzazioni relative a Cloud Deploy. Tuttavia, ti consigliamo di concedere ruoli predefiniti, ove possibile, per rispettare il principio di sicurezza del privilegio minimo.
Autorizzazioni
Nella tabella seguente sono elencate le autorizzazioni di cui il chiamante deve disporre per chiamare ciascun metodo:
Metodo API | Autorizzazione obbligatoria | Descrizione |
---|---|---|
automations.create() |
clouddeploy.automations.create |
Crea una nuova risorsa di automazione. |
automations.delete() |
clouddeploy.automations.delete |
Elimina una risorsa di automazione esistente. |
automations.get() |
clouddeploy.automations.get |
Recupera i dettagli per una singola risorsa di automazione. |
automations.list() |
clouddeploy.automations.list |
Elenca le risorse di automazione e i relativi metadati. |
automations.update() |
clouddeploy.automations.update |
Aggiorna una risorsa di automazione esistente. |
automationRuns.cancel() |
clouddeploy.automationRuns.cancel |
Annullare un'automazione in esecuzione. |
automationRuns.get() |
clouddeploy.automationRuns.get |
Recupera i dettagli per una singola esecuzione dell'automazione. |
automationRuns.list() |
clouddeploy.automationRuns.list |
Elenca le esecuzioni dell'automazione e i relativi metadati. |
customTargetTypes.create() |
clouddeploy.customTargetType.create |
Creare una risorsa di tipo target personalizzato. |
customTargetTypes.delete() |
clouddeploy.customTargetType.delete |
Elimina una risorsa di tipo target personalizzato. |
customTargetTypes.get() |
clouddeploy.customTargetType.get |
Recupera i dettagli per un tipo di targeting personalizzato. |
customTargetTypes.getIamPolicy() |
clouddeploy.customTargetType.getIamPolicy |
Ottieni il criterio IAM per una risorsa di tipo di destinazione personalizzata. |
customTargetTypes.list() |
clouddeploy.customTargetType.list |
Elenca i tipi di target personalizzati disponibili e i relativi metadati. |
customTargetTypes.patch() |
clouddeploy.customTargetType.patch |
Aggiorna un tipo di target personalizzato esistente. |
customTargetTypes.setIamPolicy() |
clouddeploy.customTargetType.setIamPolicy |
Imposta il criterio IAM per una risorsa di tipo destinazione personalizzata. |
deliveryPipelines.create() |
clouddeploy.deliveryPipelines.create |
Creare una nuova risorsa della pipeline di distribuzione. |
deliveryPipelines.delete() |
clouddeploy.deliveryPipelines.delete |
Elimina una risorsa esistente della pipeline di distribuzione. |
deliveryPipelines.get() |
clouddeploy.deliveryPipelines.get |
Recupera i dettagli di una singola pipeline di distribuzione. |
deliveryPipelines.getIamPolicy() |
clouddeploy.deliveryPipelines.getIamPolicy |
Recupera il criterio IAM per una risorsa della pipeline di distribuzione. |
deliveryPipelines.list() |
clouddeploy.deliveryPipelines.list |
Elenca le pipeline di distribuzione e i relativi metadati. |
deliveryPipelines.rollbackTarget() |
clouddeploy.rollouts.rollback |
Esegue il rollback di una destinazione. |
deliveryPipelines.setIamPolicy() |
clouddeploy.deliveryPipelines.setIamPolicy |
Imposta il criterio IAM per una risorsa della pipeline di distribuzione. |
deliveryPipelines.update() |
clouddeploy.deliveryPipelines.update |
Aggiorna una risorsa esistente della pipeline di distribuzione. |
jobRuns.get() |
clouddeploy.jobRuns.get |
Recupera una risorsa JobRuns . |
jobRuns.list() |
clouddeploy.jobRuns.list |
Elenca JobRuns risorse e i relativi metadati. |
jobRuns.terminate() |
clouddeploy.jobRuns.terminate |
Termina l'esecuzione di un job in corso. |
operations.cancel() |
clouddeploy.operations.cancel |
Annullare un'operazione a lunga esecuzione. |
operation.delete() |
clouddeploy.operations.delete |
Elimina un'operazione a lunga esecuzione. |
operations.get() |
clouddeploy.operations.get |
Recupera un'operazione specifica a lunga esecuzione (ad esempio, per restituire lo stato della creazione di una release). |
operations.list() |
clouddeploy.operations.list |
Elenca le operazioni a lunga esecuzione. |
releases.abandon() |
clouddeploy.releases.abandon |
Abbandona una release e impedisci ulteriori implementazioni a fronte della release. |
releases.create() |
clouddeploy.releases.create |
Crea una nuova risorsa di release. Il chiamante richiede anche l'autorizzazione iam.serviceAccounts.actAs per l'account di servizio utilizzato per eseguire il rendering del manifest. |
releases.get() |
clouddeploy.releases.get |
Recupera i dettagli per una singola release. |
releases.list() |
clouddeploy.releases.list |
Elenca le uscite e i metadati. |
releases.promote() |
clouddeploy.rollouts.create |
Promuovi la release al target successivo. |
rollouts.advance() |
clouddeploy.rollouts.advance |
Porta un'implementazione alla fase successiva. |
rollouts.approve() |
clouddeploy.rollouts.approve |
Approva o rifiuta un'implementazione con stato di approvazione required . |
rollouts.cancel() |
clouddeploy.rollouts.cancel |
Annullare un'implementazione. |
rollouts.create() |
clouddeploy.rollouts.create |
Creare una nuova risorsa di implementazione. Il chiamante richiede anche l'autorizzazione iam.serviceAccounts.actAs per l'account di progetto o di servizio utilizzato per il deployment. |
rollouts.get() |
clouddeploy.rollouts.get |
Recupera i dettagli di una singola implementazione. |
rollouts.ignoreJob() |
clouddeploy.rollouts.ignoreJob |
Ignora un job non riuscito. |
rollouts.list() |
clouddeploy.rollouts.list |
Elenca le implementazioni e i metadati. |
rollouts.retryJob() |
clouddeploy.rollouts.retryJob |
Riprova un job non riuscito. |
targets.create() |
clouddeploy.targets.create |
Creare una nuova risorsa di destinazione. |
targets.delete() |
clouddeploy.targets.delete |
Elimina una risorsa di destinazione esistente. |
targets.get() |
clouddeploy.targets.get |
Recupera i dettagli per un singolo target. |
targets.getIamPolicy() |
clouddeploy.targets.getIamPolicy |
Ottiene il criterio IAM per una risorsa di destinazione. |
targets.list() |
clouddeploy.targets.list |
Elenca le destinazioni e i relativi metadati. |
targets.setIamPolicy() |
clouddeploy.targets.setIamPolicy |
Imposta il criterio IAM per una risorsa di destinazione. |
targets.update() |
clouddeploy.targets.update |
Aggiorna una risorsa di destinazione esistente. |
Utilizzo di IAM per limitare le azioni sulle risorse Cloud Deploy
Puoi proteggere le risorse Cloud Deploy utilizzando IAM nei seguenti modi:
Meta API IAM
Utilizza
setIamPolicy
sulle risorse Cloud Deploy per limitare le azioni su queste risorse.IAM condizionale
Applica i criteri di accesso in modo programmatico, incluse le conditions in base alle quali concedere o negare l'accesso.
Puoi utilizzare questi criteri e condizioni per limitare le azioni seguenti sulle risorse Cloud Deploy:
Crea una pipeline di distribuzione o una destinazione
Puoi concedere questo accesso a utenti o gruppi specifici.
Aggiorna o elimina una pipeline di distribuzione specifica
Puoi concedere questo accesso a utenti o gruppi specifici.
Creare una release per una pipeline di distribuzione specifica
Puoi concedere questo accesso a utenti o gruppi specifici.
Aggiornare o eliminare un target specifico
Puoi concedere questo accesso a utenti o gruppi specifici.
Creare o approvare un'implementazione o promuovere una release
Puoi concedere questo accesso a utenti o gruppi specifici per una pipeline di destinazione o di distribuzione specifica.
Puoi anche impostare una condizione che limiti questo accesso entro un intervallo di tempo specificato.
Passaggi successivi
- Scopri di più su IAM.
- Scopri di più sull'utilizzo delle condizioni in IAM
- Scopri di più sugli account di servizio Cloud Deploy.