Questa pagina descrive gli account di servizio, i ruoli e autorizzazioni aggiuntive.
L'accesso in Cloud Deploy è controllato utilizzando Identity and Access Management (IAM). IAM consente di creare e gestire delle autorizzazioni per le risorse Google Cloud. Cloud Deploy fornisce un servizio insieme di ruoli IAM predefiniti in cui ogni ruolo contiene un insieme di autorizzazioni. Puoi usare questi ruoli per assegnare un accesso più granulare a specifiche risorse Google Cloud e prevenire 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 Compute Engine predefinito l'account di servizio. Questo account di servizio dispone delle autorizzazioni sufficienti per eseguire il rendering dei manifest e il relativo deployment nelle destinazioni.
Scopri di più su come Cloud Deploy utilizza 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 dell'entità (utente, gruppo o account di servizio) del tuo progetto. Puoi concedere più ruoli a un'entità sulla stessa risorsa.
La documentazione di 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 |
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. |
|
Amministratore criteri Cloud Deploy Versione beta( Autorizzazione a gestire i criteri di deployment. |
|
Override dei criteri di Cloud Deploy Versione beta( Autorizzazione a sostituire i criteri 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, Visualizzatore di base, I ruoli Editor e Proprietario includono anche le autorizzazioni relative a Cloud Deploy. Tuttavia, ti consigliamo di concedere ruoli predefiniti, ove possibile, per rispettare le principio di sicurezza del privilegio minimo.
Autorizzazioni
Nella tabella seguente sono elencate le autorizzazioni che il chiamante deve avere 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.customTargetTypes.create |
Creare una risorsa di tipo target personalizzato. |
customTargetTypes.delete() |
clouddeploy.customTargetTypes.delete |
Elimina una risorsa di tipo target personalizzato. |
customTargetTypes.get() |
clouddeploy.customTargetTypes.get |
Recupera i dettagli per un tipo di destinazione personalizzato. |
customTargetTypes.getIamPolicy() |
clouddeploy.customTargetTypes.getIamPolicy |
Ottieni il criterio IAM per una risorsa di tipo di destinazione personalizzata. |
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 di 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 per 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 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 |
Esegue un nuovo tentativo per 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 di 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
su Risorse Cloud Deploy per limitare le azioni su queste risorse.IAM condizionale
Applicare i 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 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 un target specifico. di distribuzione dei container.
Puoi anche impostare una condizione che limiti questo accesso all'interno di un finestra temporale.
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.