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 ti consente di creare e gestire le autorizzazioni per le risorse Google Cloud. Cloud Deploy fornisce un insieme specifico di ruoli IAM predefiniti in cui ogni ruolo contiene un insieme di autorizzazioni. Puoi utilizzare questi ruoli per concedere un accesso più granulare a risorse Google Cloud specifiche e impedire l'accesso indesiderato ad altre risorse. IAM ti consente di adottare il principio di sicurezza del privilegio minimo, in modo da concedere solo il livello di accesso necessario per le tue risorse.
Consulta Utilizzare IAM per limitare l'accesso a Cloud Deploy per saperne 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. Per ulteriori informazioni sulla configurazione di questo account di servizio per l'utilizzo con Cloud Deploy o sulla scelta di un account diverso, consulta la documentazione relativa all'account di servizio di esecuzione Cloud Deploy.
Scopri di più su come Cloud Deploy utilizza gli account di servizio.
Ruoli Cloud Deploy predefiniti
Con IAM, ogni metodo dell'API Cloud Deploy richiede che l'identità che effettua la richiesta dell'API disponga delle autorizzazioni appropriate per utilizzare la risorsa. Le autorizzazioni vengono concesse impostando criteri che assegnano i ruoli a un principale (utente, gruppo o account di servizio) del progetto. Puoi concedere più ruoli a un'entità nella stessa risorsa.
La documentazione IAM include un riferimento per la ricerca di tutti i ruoli predefiniti.
La tabella seguente elenca i ruoli IAM di Cloud Deploy e le autorizzazioni che includono:
Ruoli Cloud Deploy |
Autorizzazioni |
Cloud Deploy Admin( Controllo completo delle risorse Cloud Deploy. |
|
Cloud Deploy Approver( Autorizzazione per l'approvazione o il rifiuto delle implementazioni. |
|
Cloud Deploy Custom Target Type Admin( Autorizzazione per gestire le risorse CustomTargetType |
|
Cloud Deploy Developer( Autorizzazione per gestire la configurazione del deployment senza l'autorizzazione ad accedere alle risorse operative, come i target. |
|
Cloud Deploy Runner( Autorizzazione per eseguire le operazioni di Cloud Deploy senza autorizzazione a consegnare a una destinazione. |
|
Cloud Deploy Operator( Autorizzazione per gestire la configurazione del deployment. |
|
Cloud Deploy Policy Admin Beta( Autorizzazione a gestire le policy di deployment. |
|
Cloud Deploy Policy Overrider beta( Autorizzazione a sostituire le policy di deployment. |
|
Cloud Deploy Releaser( Autorizzazione per creare release e lanci di Cloud Deploy. |
|
Cloud Deploy Viewer( Può visualizzare le risorse di Cloud Deploy. |
|
Oltre ai ruoli predefiniti di Cloud Deploy, i ruoli di base Visualizzatore, Editor e Proprietario includono anche le autorizzazioni relative a Cloud Deploy. Tuttavia, ti consigliamo di concedere ruoli predefiniti, se possibile, per rispettare il principio di sicurezza del privilegio minimo.
Autorizzazioni
La tabella seguente elenca le autorizzazioni che chi chiama 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 di 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 di una singola esecuzione dell'automazione. |
automationRuns.list() |
clouddeploy.automationRuns.list |
Elenca le esecuzioni dell'automazione e i relativi metadati. |
customTargetTypes.create() |
clouddeploy.customTargetTypes.create |
Crea una risorsa di tipo target personalizzato. |
customTargetTypes.delete() |
clouddeploy.customTargetTypes.delete |
Elimina una risorsa di tipo di destinazione personalizzata. |
customTargetTypes.get() |
clouddeploy.customTargetTypes.get |
Recupera i dettagli di un tipo di target personalizzato. |
customTargetTypes.getIamPolicy() |
clouddeploy.customTargetTypes.getIamPolicy |
Recupera il criterio IAM per una risorsa di tipo target personalizzato. |
customTargetTypes.list() |
clouddeploy.customTargetTypes.list |
Elenca i tipi di target personalizzati disponibili e i relativi metadati. |
customTargetTypes.patch() |
clouddeploy.customTargetTypes.patch |
Aggiorna un tipo di target personalizzato esistente. |
customTargetTypes.setIamPolicy() |
clouddeploy.customTargetTypes.setIamPolicy |
Imposta il criterio IAM per una risorsa di tipo target personalizzato. |
deliveryPipelines.create() |
clouddeploy.deliveryPipelines.create |
Crea una nuova risorsa della pipeline di distribuzione. |
deliveryPipelines.delete() |
clouddeploy.deliveryPipelines.delete |
Elimina una risorsa della pipeline di distribuzione esistente. |
deliveryPipelines.get() |
clouddeploy.deliveryPipelines.get |
Recupera i dettagli di una singola pipeline di importazione. |
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 importazione 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 importazione. |
deliveryPipelines.update() |
clouddeploy.deliveryPipelines.update |
Aggiorna una risorsa della pipeline di importazione esistente. |
deployPolicies.create() |
clouddeploy.deployPolicies.create |
Crea una risorsa del criterio di deployment. |
deployPolicies.delete() |
clouddeploy.deployPolicies.delete |
Elimina una risorsa del criterio di deployment. |
deployPolicies.get() |
clouddeploy.deployPolicies.get |
Recupera i dettagli di una risorsa del criterio di deployment. |
deployPolicies.list() |
clouddeploy.deployPolicies.list |
Elenca i criteri di deployment disponibili e i relativi metadati. |
jobRuns.get() |
clouddeploy.jobRuns.get |
Recupera una risorsa JobRuns . |
jobRuns.list() |
clouddeploy.jobRuns.list |
Elenca le risorse JobRuns e i relativi metadati. |
jobRuns.terminate() |
clouddeploy.jobRuns.terminate |
Termina un'esecuzione di 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 |
Ottenere un'operazione a lunga esecuzione specifica (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 |
Abbandonare una release ed evitare ulteriori implementazioni. |
releases.create() |
clouddeploy.releases.create |
Crea una nuova risorsa di release. L'utente che chiama richiede inoltre 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 release e i metadati. |
rollouts.advance() |
clouddeploy.rollouts.advance |
Passare a una fase successiva dell'implementazione. |
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 |
Crea una nuova risorsa di implementazione o promuovi una release. L'utente che chiama richiede anche l'autorizzazione iam.serviceAccounts.actAs per il progetto o l'account di servizio utilizzato per il deployment. |
rollouts.get() |
clouddeploy.rollouts.get |
Recupera i dettagli per il singolo 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 |
Esegue un nuovo tentativo per un job non riuscito. |
rollouts.advance() , rollouts.approve() , rollouts.cancel() , rollouts.create() , rollouts.ignoreJob() , rollouts.retryJob() , deliveryPipelines.rollbackTarget() , jobRuns.terminate() |
clouddeploy.deployPolicies.override |
Sostituisci una risorsa del criterio di deployment. |
deployPolicies.update() |
clouddeploy.deployPolicies.update |
Aggiorna una risorsa di criteri di deployment esistente. |
targets.create() |
clouddeploy.targets.create |
Crea una nuova risorsa di destinazione. |
targets.delete() |
clouddeploy.targets.delete |
Elimina una risorsa target esistente. |
targets.get() |
clouddeploy.targets.get |
Recupera i dettagli di un singolo target. |
targets.getIamPolicy() |
clouddeploy.targets.getIamPolicy |
Recupera il criterio IAM per una risorsa di destinazione. |
targets.list() |
clouddeploy.targets.list |
Elenca i target 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:
API meta IAM
Utilizza
setIamPolicy
sulle risorse Cloud Deploy per limitare le azioni su queste risorse.IAM condizionale
Applicare criteri di accesso in modo programmatico, incluse le condizioni in base alle quali concedere o negare l'accesso.
Puoi utilizzare questi criteri e queste condizioni per limitare le seguenti azioni sulle tue risorse Cloud Deploy:
Crea una pipeline di distribuzione o un target
Puoi concedere questo accesso a utenti o gruppi specifici.
Aggiornare o eliminare 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 un target o una pipeline di importazione specifici.
Puoi anche impostare una condizione che limiti questo accesso a un determinato arco di tempo.
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.