Questa pagina descrive le pratiche di Identity and Access Management (IAM) per l'operatore di applicazioni (AO) sull'appliance air-gapped Google Distributed Cloud (GDC).
Un provider di identità (IdP) è un'entità di sistema che crea, gestisce e amministra le informazioni sull'identità per i principal. L'IdP fornisce anche servizi di autenticazione alle applicazioni all'interno di una federazione o di una rete distribuita.
Accedi
Questa sezione descrive come accedere ai tuoi workload tramite l'interfaccia utente web o l'interfaccia a riga di comando.
Accedere all'interfaccia utente web
Questa pagina descrive come accedere e gestire i tuoi carichi di lavoro e le tue risorse all'interno dell'appliance air-gap di Google Distributed Cloud (GDC). Descrive come autenticarsi, generare file kubeconfig sia per un server API Management sia per un cluster Kubernetes e gestire l'inattività della sessione. La comprensione di questi processi garantisce un accesso sicuro e affidabile ai tuoi progetti e workload.
Accedi ai tuoi carichi di lavoro tramite la console GDC o gdcloud CLI.
Accedi
Per accedere alla console GDC o a un cluster, segui questi passaggi:
Console
Apri il seguente URL in una nuova scheda del browser per accedere all'interfaccia utente (UI) dell'appliance GDC air-gapped:
https://GDC_URL
Sostituisci GDC_URL
con il nome di dominio che utilizzi per accedere a GDC fornito dall'operatore dell'infrastruttura (IO). Quando apri un URL per la prima
volta, GDC ti reindirizza alla pagina di accesso
del tuo provider di identità se l'operatore dell'infrastruttura (IO) ha configurato la pagina.
Ad esempio, la seguente pagina viene visualizzata dopo l'accesso alla console per un'organizzazione denominata `org-1:
Interfaccia a riga di comando
Puoi accedere a qualsiasi cluster per cui disponi dell'autorizzazione. La procedura di accesso
alla CLI per tutti i cluster è la stessa. Devi fornire solo il nome del cluster e il relativo file kubeconfig
e accedere separatamente a ogni cluster.
Prima di accedere, assicurati di:
- Scarica il file binario di gcloud CLI e installalo nel sistema. Per saperne di più, vedi Scaricare gcloud CLI.
- Configura e inizializza la configurazione predefinita di gcloud CLI. Assicurati di impostare l'URL dell'organizzazione corretto, che viene utilizzato per recuperare l'endpoint di configurazione di accesso. Per saperne di più, consulta la sezione Installazione di gcloud CLI.
- Installa il plug-in di autenticazione
gdcloud-k8s-auth-plugin
. Per ulteriori informazioni, consulta Autenticazione di gcloud CLI.
Per accedere a un cluster:
Autentica l'istanza di gcloud CLI per accedere. Esistono due modi per autenticarsi:
Accesso standard al browser:utilizza questo flusso di autenticazione quando accedi da un browser.
gdcloud auth login
Accesso da un dispositivo secondario:utilizza questo flusso di autenticazione se il tuo dispositivo principale non dispone di un browser. Questo flusso avvia l'accesso sul dispositivo principale senza accesso al browser e continua l'accesso con il dispositivo secondario che ha accesso al browser.
Avvia l'accesso sul tuo dispositivo principale senza browser:
gdcloud auth login --no-browser
Il comando nel dispositivo principale stampa un altro comando
gdcloud
che devi eseguire sul dispositivo secondario nel passaggio c.Ripeti il passaggio 1 di Accedi a un cluster per scaricare il certificato sul dispositivo secondario.
Completa l'accesso sul dispositivo secondario inserendo il comando stampato sul dispositivo principale nel passaggio a.
Questa azione apre un browser per accedere al provider di identità (IdP) configurato. Fornisci l'utente e la password che hai impostato durante la configurazione iniziale di gcloud CLI per accedere.
Esporta il file
kubeconfig
dell'identità utente come variabile:export KUBECONFIG=/tmp/admin-kubeconfig-with-user-identity.yaml
Genera un file
kubeconfig
con l'identità utente:gdcloud clusters get-credentials CLUSTER_NAME
Viene generato un file
kubeconfig
con la tua identità utente. Il seguente file YAML mostra un esempio:apiVersion: v1 clusters: - cluster: certificate-authority-data: <REDACTED> server: https://10.200.0.32:443 name: cluster-name contexts: - context: cluster: cluster-name user: cluster-name-anthos-default-user name: cluster-name-cluster-name-anthos-default-user current-context: cluster-name-cluster-name-anthos-default-user kind: Config preferences: {} users: - name: cluster-name-anthos-default-user user: exec: apiVersion: client.authentication.k8s.io/v1 args: - --audience=root-admin command: gdcloud-k8s-auth-plugin env: null installHint: Run 'gdcloud components install gdcloud-k8s-auth-plugin' to use plugin interactiveMode: Never provideClusterInfo: false
Per verificare di poter accedere al cluster, accedi con il file
kubeconfig
generato con un'identità utente:kubectl --kubeconfig /tmp/admin-kubeconfig-with-user-identity.yaml version
Esci
Per uscire dalla console GDC:
Console
Fai clic su
Disconnetti nella barra dei menu.Interfaccia a riga di comando
Esci dalla CLI:
gdcloud auth revoke
Generare manualmente il file kubeconfig
Se gestisci le risorse con la CLI kubectl chiamando direttamente le API KRM, devi generare il file kubeconfig per il cluster che ospita la risorsa, a seconda del tipo di risorsa che stai gestendo. Consulta la documentazione della risorsa per determinare il file kubeconfig di cui hai bisogno.
Completa la configurazione applicabile in base al tipo di risorsa.
Risorse del server API di gestione
Completa i seguenti passaggi per generare il file kubeconfig per il server API Management:
Imposta la variabile di ambiente
MANAGEMENT_API_SERVER
:export MANAGEMENT_API_SERVER="root-admin"
Genera il file kubeconfig del server API Management e convalida le credenziali:
export KUBECONFIG=${HOME}/${MANAGEMENT_API_SERVER:?}-kubeconfig.yaml rm ${KUBECONFIG:?} gdcloud clusters get-credentials ${MANAGEMENT_API_SERVER:?} [[ $(kubectl config current-context) == *${MANAGEMENT_API_SERVER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
Il comando
rm ${KUBECONFIG:?}
rimuove il file kubeconfig esistente nella home directory. Quando generi un nuovo file kubeconfig, quello esistente viene sovrascritto. Se non vuoi sovrascrivere o rimuovere il file esistente, esegui il backup in un'altra posizione sicura.
Risorse del cluster Kubernetes
Completa i seguenti passaggi per generare il file kubeconfig per il cluster Kubernetes Bare Metal:
Imposta la variabile di ambiente
KUBERNETES_CLUSTER
:export KUBERNETES_CLUSTER="root-infra"
Genera il file kubeconfig del cluster Kubernetes e convalida le credenziali:
export KUBECONFIG=${HOME}/${KUBERNETES_CLUSTER:?}-kubeconfig.yaml rm ${KUBECONFIG:?} gdcloud clusters get-credentials ${KUBERNETES_CLUSTER:?} [[ $(kubectl config current-context) == *${KUBERNETES_CLUSTER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
Il comando
rm ${KUBECONFIG:?}
rimuove il file kubeconfig esistente nella home directory. Quando generi un nuovo file kubeconfig, quello esistente viene sovrascritto. Se non vuoi sovrascrivere o rimuovere il file esistente, esegui il backup in un'altra posizione sicura.
Disconnessione per inattività della sessione
Dopo quindici o più minuti di inattività in una sessione, la console GDC e gcloud CLI ti disconnettono. GDC considera l'inattività della sessione come un periodo durante una sessione aperta senza coinvolgimento attivo da parte tua, ad esempio nessun movimento del cursore o della tastiera. Una sessione attiva dura fino a 12 ore con l'attività dell'utente.
Console
Per inattività della sessione, la console GDC ti disconnette. Due minuti prima che la console GDC ti disconnetta per inattività, ricevi una finestra di dialogo che ti avvisa della disconnessione:
Dopo la disconnessione per inattività, viene visualizzata la seguente schermata:
Per accedere di nuovo alla console GDC, seleziona il tuo identity provider e aggiungi le tue credenziali di accesso. Se utilizzi un servizio, ad esempio la dashboard di monitoraggio, e la console GDC ti disconnette per inattività, accedi di nuovo per ottenere l'accesso.
Interfaccia a riga di comando
Per inattività della sessione, gcloud CLI ti disconnette. Dopo che gcloud CLI ti disconnette e provi a eseguire un comando, ricevi un errore di autorizzazione:
Error: error when creating kube client: unable to create k8sclient: Unauthorized
Per accedere nuovamente a gcloud CLI, segui i passaggi della CLI descritti in Accedi.
kubectl
L'interfaccia a riga di comando gdcloud fa scadere i file kubeconfig dopo l'inattività della sessione. Se tenti di eseguire un comando kubectl
dopo un periodo di inattività,
ricevi un errore di autorizzazione:
error: You must be logged in to the server (Unauthorized)
Per accedere di nuovo e utilizzare il file kubeconfig, segui i passaggi della CLI descritti in Accedi. Per ogni timeout della sessione, devi rigenerare i file kubeconfig.
Imposta criteri di autorizzazione IAM
Descrizioni dei ruoli predefiniti
Un operatore di applicazioni (AO) è un membro del team di sviluppo all'interno dell'organizzazione dell'amministratore della piattaforma (PA). Le AO interagiscono con le risorse a livello di progetto. Puoi assegnare i seguenti ruoli predefiniti ai membri del team:
- Amministratore IAM progetto:gestisce i criteri di autorizzazione IAM dei progetti.
- AI OCR Developer: accedi al servizio di riconoscimento ottico dei caratteri per rilevare il testo nelle immagini.
- AI Speech Developer: accedi al servizio Speech-to-Text per riconoscere la voce e trascrivere l'audio.
- Sviluppatore AI Translation: accedi al servizio Vertex AI Translation per tradurre il testo.
- Amministratore della gestione degli artefatti: dispone dell'accesso amministrativo alle risorse in tutti i progetti Harbor nello spazio dei nomi del progetto.
- Editor di gestione degli artefatti: ha accesso in lettura e scrittura alle risorse in tutti i progetti Harbor nello spazio dei nomi del progetto.
- Amministratore Certificate Authority Service: ha accesso alla gestione di autorità di certificazione e richieste di certificati nel proprio progetto.
- Amministratore del servizio di certificati: ha accesso alla gestione dei certificati e degli emittenti di certificati nel proprio progetto.
- Editor dashboard: ha accesso in lettura e scrittura alle risorse personalizzate
Dashboard
. - Visualizzatore dashboard: dispone dell'accesso di sola lettura alle risorse personalizzate
Dashboard
. - Amministratore istanza Harbor: ha accesso completo alla gestione delle istanze Harbor in un progetto.
- Visualizzatore istanze Harbor: dispone dell'accesso di sola lettura per visualizzare le istanze Harbor in un progetto.
- Creatore di progetti Harbor: ha accesso per gestire i progetti dell'istanza Harbor.
- Amministratore criteri di rete K8s: gestisce i criteri di rete nei cluster Kubernetes.
- LoggingRule Creator: crea risorse personalizzate
LoggingRule
nello spazio dei nomi del progetto. - Editor LoggingRule: modifica le risorse personalizzate
LoggingRule
nello spazio dei nomi del progetto. - Visualizzatore LoggingRule: visualizza le risorse personalizzate
LoggingRule
nello spazio dei nomi del progetto. - LoggingTarget Creator: crea risorse personalizzate
LoggingTarget
nello spazio dei nomi del progetto. - LoggingTarget Editor: modifica le risorse personalizzate
LoggingTarget
nello spazio dei nomi del progetto. - LoggingTarget Viewer: visualizza le risorse personalizzate
LoggingTarget
nello spazio dei nomi del progetto. - Amministratore del bilanciatore del carico: dispone delle autorizzazioni di lettura e scrittura su tutte le risorse del bilanciatore del carico nello spazio dei nomi del progetto.
- Editor regole di monitoraggio: ha accesso in lettura e scrittura alle risorse
MonitoringRule
. - Visualizzatore MonitoringRule: dispone dell'accesso in sola lettura alle risorse personalizzate
MonitoringRule
. - Editor MonitoringTarget: ha accesso in lettura e scrittura alle risorse personalizzate
MonitoringTarget
. - Visualizzatore MonitoringTarget: dispone dell'accesso in sola lettura alle risorse personalizzate
MonitoringTarget
. - Visualizzatore NAT: dispone dell'accesso in sola lettura ai deployment nei cluster Kubernetes.
- Amministratore spazio dei nomi: gestisce tutte le risorse all'interno dello spazio dei nomi del progetto.
- Editor pipeline di osservabilità: ha accesso in lettura e scrittura alle risorse personalizzate
ObservabilityPipeine
. - Visualizzatore ObservabilityPipeline: dispone dell'accesso di sola lettura alle risorse personalizzate
ObservabilityPipeline
. - Amministratore bucket progetto: gestisce i bucket di archiviazione e gli oggetti all'interno dei bucket.
- Amministratore oggetti bucket progetto: dispone dell'accesso di sola lettura ai bucket all'interno di un progetto e dell'accesso in lettura/scrittura agli oggetti in questi bucket.
- Visualizzatore oggetti bucket progetto: dispone dell'accesso di sola lettura ai bucket all'interno di un progetto e agli oggetti in questi bucket.
- Editor di Project Cortex Alertmanager: concede le autorizzazioni per modificare l'istanza di Cortex Alertmanager nello spazio dei nomi del progetto.
- Visualizzatore di Project Cortex Alertmanager: concede le autorizzazioni per accedere all'istanza di Cortex Alertmanager nello spazio dei nomi del progetto.
- Project Cortex Prometheus Viewer: concede le autorizzazioni per accedere all'istanza Cortex Prometheus nello spazio dei nomi del progetto.
- Visualizzatore Grafana del progetto: accede all'istanza Grafana nello spazio dei nomi del progetto del cluster di amministrazione del parco risorse.
- Amministratore NetworkPolicy progetto:gestisce le policy di rete del progetto nello spazio dei nomi del progetto.
- Visualizzatore progetto:ha accesso di sola lettura a tutte le risorse all'interno degli spazi dei nomi del progetto.
- Amministratore VirtualMachine progetto: gestisce le VM nello spazio dei nomi del progetto.
- Amministratore immagini macchina virtuale progetto: gestisce le immagini VM nello spazio dei nomi del progetto.
- Amministratore dei secret: gestisce i secret Kubernetes nei progetti.
- Visualizzatore secret: visualizza i secret Kubernetes nei progetti.
- Amministratore configurazione servizio: ha accesso in lettura e scrittura alle configurazioni del servizio all'interno di uno spazio dei nomi del progetto.
- Visualizzatore configurazione servizio: dispone dell'accesso in lettura alle configurazioni di servizio all'interno di uno spazio dei nomi del progetto.
- Amministratore della replica del volume: gestisce le risorse di replica del volume.
- Amministratore di Workbench Notebooks: ottieni l'accesso in lettura e scrittura a tutte le risorse notebook all'interno di uno spazio dei nomi del progetto.
- Visualizzatore notebook Workbench: ottieni l'accesso in sola lettura a tutte le risorse del notebook all'interno di uno spazio dei nomi del progetto e visualizza l'interfaccia utente di Vertex AI Workbench.
- Visualizzatore workload: dispone dell'accesso in lettura ai workload in un progetto.
Ruoli comuni
I seguenti ruoli comuni predefiniti si applicano a tutti gli utenti autenticati:
- AI Platform Viewer: concede le autorizzazioni per visualizzare i servizi pre-addestrati.
- Visualizzatore suffissi DNS: accede alla mappa di configurazione del suffisso del servizio di nomi di dominio (DNS).
- Amministratore log di flusso: ha accesso in lettura e scrittura a tutte le risorse dei log di flusso.
- Visualizzatore log di flusso: dispone dell'accesso di sola lettura a tutte le risorse di log di flusso.
- Visualizzatore di Project Discovery: dispone dell'accesso in lettura per tutti gli utenti autenticati alla visualizzazione del progetto.
- Visualizzatore immagini pubbliche: dispone dell'accesso in lettura per tutti gli utenti autenticati
alle immagini VM pubbliche nello spazio dei nomi
vm-images
. - System Artifact Registry anthos-creds secret Monitor: dispone dell'accesso in sola lettura
ai secret nello spazio dei nomi
anthos-creds
. - System Artifact Registry gpc-system secret Monitor: dispone dell'accesso in sola lettura
ai secret nello spazio dei nomi
gpc-system
. - Monitoraggio secret harbor-system di System Artifact Registry: ha accesso in sola lettura ai secret nello spazio dei nomi
harbor-system
. - Visualizzatore del tipo di macchina virtuale: dispone dell'accesso in lettura ai tipi di macchine virtuali con ambito cluster.
- Visualizzatore tipi di VM: dispone dell'accesso in lettura ai tipi di macchine virtuali predefiniti nei cluster di amministrazione.
Definizioni dei ruoli
Le tabelle di questa sezione descrivono i diversi ruoli predefiniti e le relative autorizzazioni. Le tabelle contengono le seguenti colonne:
- Nome:il nome di un ruolo visualizzato nell'interfaccia utente.
- Nome risorsa Kubernetes:il nome della risorsa personalizzata Kubernetes corrispondente.
- Livello:la specifica che indica se questo ruolo è limitato all'organizzazione o a un progetto.
- Type: il tipo di questo ruolo. Ad esempio, alcuni valori possibili sono
Role
,ProjectRole
,ClusterRole
oProjectClusterRole
. - Tipo di binding:il tipo di binding che devi applicare a questo ruolo.
- Autorizzazioni del server API di gestione o del cluster Kubernetes: le autorizzazioni che questo ruolo ha per il server API di gestione o per il cluster Kubernetes. Ad esempio, alcuni valori possibili sono lettura, scrittura, lettura e scrittura o non applicabile (N/A).
- Riassegnazione a: la specifica se questo ruolo viene riassegnato ad altri ruoli o meno.
Persona AO, identità predefinita e ruoli di accesso
AO persona | ||||
---|---|---|---|---|
Nome | Nome risorsa Kubernetes | Amministratore iniziale | Livello | Tipo |
Amministratore IAM progetto | project-iam-admin |
Vero | Progetto | Role |
Sviluppatore OCR AI | ai-ocr-developer |
Falso | Progetto | Role |
Visualizzatore AI Platform | ai-platform-viewer |
Falso | Progetto | Role |
AI Speech Developer | ai-speech-developer |
Falso | Progetto | Role |
AI Translation Developer | ai-translation-developer |
Falso | Progetto | Role |
Amministratore gestione artefatti | artifact-management-admin |
Falso | Progetto | Role |
Editor gestione artefatti | artifact-management-editor |
Falso | Progetto | Role |
Amministratore di Certificate Authority Service | certificate-authority-service-admin |
Falso | Progetto | Role |
Certificate Service Admin | certificate-service-admin |
Falso | Progetto | Role |
Editor dashboard | dashboard-editor |
Falso | Progetto | Role |
Visualizzatore dashboard | dashboard-viewer |
Falso | Progetto | Role |
Amministratore istanza Harbor | harbor-instance-admin |
Falso | Progetto | Role |
Harbor Instance Viewer | harbor-instance-viewer |
Falso | Progetto | Role |
Harbor Project Creator | harbor-project-creator |
Falso | Progetto | Role |
K8s Network Policy Admin | k8s-networkpolicy-admin |
Falso | Progetto | ProjectRole |
Amministratore bilanciatore del carico | load-balancer-admin |
Falso | Progetto | ProjectRole |
LoggingRule Creator | loggingrule-creator |
Falso | Progetto | Role |
LoggingRule Editor | loggingrule-editor |
Falso | Progetto | Role |
Visualizzatore LoggingRule | loggingrule-viewer |
Falso | Progetto | Role |
LoggingTarget Creator | loggingtarget-creator |
Falso | Progetto | Role |
LoggingTarget Editor | loggingtarget-editor |
Falso | Progetto | Role |
Visualizzatore LoggingTarget | loggingtarget-viewer |
Falso | Progetto | Role |
MonitoringRule Editor | monitoringrule-editor |
Falso | Progetto | Role |
MonitoringRule Viewer | monitoringrule-viewer |
Falso | Progetto | Role |
MonitoringTarget Editor | monitoringtarget-editor |
Falso | Progetto | Role |
MonitoringTarget Viewer | monitoringtarget-viewer |
Falso | Progetto | Role |
Amministratore spazio dei nomi | namespace-admin |
Falso | Progetto | ProjectRole |
Visualizzatore NAT | nat-viewer |
Falso | Progetto | ProjectRole |
ObservabilityPipeline Editor | observabilitypipeline-editor |
Falso | Progetto | Role |
Visualizzatore ObservabilityPipeline | observabilitypipeline-viewer |
Falso | Progetto | Role |
Project Bucket Admin | project-bucket-admin |
Falso | Progetto | Role |
Project Bucket Object Admin | project-bucket-object-admin |
Falso | Progetto | Role |
Project Bucket Object Viewer | project-bucket-object-viewer |
Falso | Progetto | Role |
Editor di Project Cortex Alertmanager | project-cortex-alertmanager-editor |
Falso | Progetto | Role |
Project Cortex Alertmanager Viewer | project-cortex-alertmanager-viewer |
Falso | Progetto | Role |
Visualizzatore Prometheus di Project Cortex | project-cortex-prometheus-viewer |
Falso | Progetto | Role |
Project Grafana Viewer | project-grafana-viewer |
Falso | Progetto | Role |
Amministratore NetworkPolicy progetto | project-networkpolicy-admin |
Falso | Progetto | Role |
Visualizzatore progetto | project-viewer |
Falso | Progetto | Role |
Project VirtualMachine Admin | project-vm-admin |
Falso | Progetto | Role |
Project VirtualMachine Image Admin | project-vm-image-admin |
Falso | Progetto | Role |
Amministratore dei secret | secret-admin |
Falso | Progetto | Role |
Visualizzatore di secret | secret-viewer |
Falso | Progetto | Role |
Service Configuration Admin | service-configuration-admin |
Falso | Progetto | Role |
Visualizzatore configurazione servizio | service-configuration-viewer |
Falso | Progetto | Role |
Workbench Notebooks Admin | workbench-notebooks-admin |
Falso | Progetto | Role |
Amministratore replica volume | app-volume-replication-admin |
Falso | Cluster | Role |
Visualizzatore di Workbench Notebooks | workbench-notebooks-viewer |
Falso | Progetto | Role |
Workload Viewer | workload-viewer |
Falso | Progetto | Role |
Persona AO, identità predefinita e ruoli di accesso
AO persona | ||||
---|---|---|---|---|
Nome | Tipo di associazione | Autorizzazioni del server API Management | Autorizzazioni del cluster Kubernetes | Riassegnazione a |
Amministratore IAM progetto | RoleBinding |
|
N/D | Tutti gli altri ruoli AO |
Sviluppatore OCR AI | RoleBinding |
Risorse OCR: lettura e scrittura | N/D | N/D |
AI Speech Developer | RoleBinding |
Risorse vocali:lettura e scrittura | N/D | N/D |
AI Translation Developer | RoleBinding |
Risorse di traduzione: lettura e scrittura | N/D | N/D |
Amministratore gestione artefatti | RoleBinding |
HarborProjects : amministratore, crea, leggi, scrivi, elimina e visualizza |
N/D | N/D |
Editor gestione artefatti | RoleBinding |
HarborProjects : lettura, scrittura e visualizzazione |
N/D | N/D |
Amministratore di Certificate Authority Service | RoleBinding |
Autorità di certificazione e richieste di certificati: get, list, watch, update, create, delete e patch | N/D | N/D |
Certificate Service Admin | RoleBinding |
Certificati ed emittenti di certificati:ottieni, elenca, monitora, aggiorna, crea, elimina e applica patch | N/D | N/D |
Editor dashboard | RoleBinding |
Risorse personalizzate:recupera, leggi, crea, aggiorna, elimina e applica patchDashboard |
N/D | N/D |
Visualizzatore dashboard | RoleBinding |
Dashboard : ricevi e leggi |
N/D | N/D |
Amministratore istanza Harbor | RoleBinding |
Istanze Harbor:crea, leggi, aggiorna, elimina e applica patch | N/D | N/D |
Harbor Instance Viewer | RoleBinding |
Istanze Harbor: lettura | N/D | N/D |
Harbor Project Creator | RoleBinding |
Progetti di istanze Harbor: crea, ottieni e guarda | N/D | N/D |
Amministratore NetworkPolicy K8s | ProjectRoleBinding |
N/D | Risorse NetworkPolicy : crea, leggi, ottieni, aggiorna, elimina e applica patch |
N/D |
Amministratore bilanciatore del carico | RoleBinding |
N/D |
|
N/D |
LoggingRule Creator | RoleBinding |
Risorse personalizzate LoggingRule :crea, leggi, aggiorna, elimina e applica patch |
N/D | N/D |
LoggingRule Editor | RoleBinding |
Risorse personalizzate LoggingRule :crea, leggi, aggiorna, elimina e applica patch |
N/D | N/D |
Visualizzatore LoggingRule | RoleBinding |
Risorse personalizzate LoggingRule : lettura |
N/D | N/D |
LoggingTarget Creator | RoleBinding |
Risorse personalizzate LoggingTarget :crea, leggi, aggiorna, elimina e applica patch |
N/D | N/D |
LoggingTarget Editor | RoleBinding |
Risorse personalizzate LoggingTarget :crea, leggi, aggiorna, elimina e applica patch |
N/D | N/D |
Visualizzatore LoggingTarget | RoleBinding |
Risorse personalizzate LoggingTarget : lettura |
N/D | N/D |
MonitoringRule Editor | RoleBinding |
Risorse personalizzate MonitoringRule :crea, leggi, aggiorna, elimina e applica patch |
N/D | N/D |
MonitoringRule Viewer | RoleBinding |
Risorse personalizzate MonitoringRule : lettura |
N/D | N/D |
MonitoringTarget Editor | RoleBinding |
Risorse personalizzate MonitoringTarget :crea, leggi, aggiorna, elimina e applica patch |
N/D | N/D |
MonitoringTarget Viewer | RoleBinding |
Risorse personalizzate MonitoringTarget : lettura |
N/D | N/D |
Amministratore spazio dei nomi | ProjectRoleBinding |
N/D | Tutte le risorse:accesso in lettura e scrittura nello spazio dei nomi del progetto | N/D |
Visualizzatore NAT | ProjectRoleBinding |
N/D | Deployment: ottieni e leggi | N/D |
ObservabilityPipeline Editor | RoleBinding |
Risorse ObservabilityPipeline :recupera, leggi, crea, aggiorna, elimina e applica patch |
N/D | N/D |
Visualizzatore ObservabilityPipeline | RoleBinding |
Risorse ObservabilityPipeline : ottieni e leggi |
N/D | N/D |
Project Bucket Admin | RoleBinding |
Bucket:lettura e scrittura nello spazio dei nomi del progetto | N/D | N/D |
Project Bucket Object Admin | RoleBinding |
|
N/D | N/D |
Project Bucket Object Viewer | RoleBinding |
Bucket e oggetti: lettura | N/D | N/D |
Editor di Project Cortex Alertmanager | RoleBinding |
Sistema Cortex e Cortex Alertmanager: lettura e scrittura | N/D | N/D |
Project Cortex Alertmanager Viewer | RoleBinding |
Sistema Cortex e Cortex Alertmanager: lettura | N/D | N/D |
Visualizzatore Prometheus di Project Cortex | RoleBinding |
Sistema Cortex e Cortex Prometheus: leggi | N/D | N/D |
Project Grafana Viewer | RoleBinding |
Sistema Grafana e Grafana: lettura e scrittura | N/D | N/D |
Amministratore NetworkPolicy progetto | RoleBinding |
Project network policies:lettura e scrittura nello spazio dei nomi del progetto | N/D | N/D |
Visualizzatore progetto | RoleBinding |
Tutte le risorse nello spazio dei nomi del progetto: lettura | N/D | N/D |
Project VirtualMachine Admin | RoleBinding |
|
N/D | N/D |
Project VirtualMachine Image Admin | RoleBinding |
|
N/D | N/D |
Amministratore dei secret | RoleBinding |
Secret Kubernetes:lettura, creazione, aggiornamento, eliminazione e applicazione di patch | N/D | N/D |
Visualizzatore di secret | RoleBinding |
Secret Kubernetes: lettura | N/D | N/D |
Service Configuration Admin | RoleBinding |
ServiceConfigurations : lettura e scrittura
|
N/D | N/D |
Visualizzatore configurazione servizio | RoleBinding |
ServiceConfigurations : Letto
|
N/D | N/D |
Amministratore replica volume | ClusterRoleBinding |
Volume failovers, volume relationship replicas :
Create, get, list, watch, delete
|
N/D | N/D |
Workbench Notebooks Admin | RoleBinding |
N/D |
|
N/D |
Visualizzatore di Workbench Notebooks | RoleBinding |
N/D |
|
N/D |
Workload Viewer | ProjectRoleBinding |
N/D |
|
N/D |
Ruoli comuni predefiniti per l'identità e l'accesso
Ruoli comuni | ||||
---|---|---|---|---|
Nome | Nome risorsa Kubernetes | Amministratore iniziale | Livello | Tipo |
Visualizzatore AI Platform | ai-platform-viewer |
Falso | Progetto | Role |
Visualizzatore del suffisso DNS | dnssuffix-viewer |
Falso | Organizzazione | Role |
Flow Log Admin | flowlog-admin |
Falso | Organizzazione | ClusterRole |
Visualizzatore log di flusso | flowlog-viewer |
Falso | Progetto | ClusterRole |
Project Discovery Viewer | projectdiscovery-viewer |
Falso | Progetto | ClusterRole |
Visualizzatore immagini pubblico | public-image-viewer |
Falso | Organizzazione | Role |
Monitoraggio del secret anthos-creds di Artifact Registry di sistema | sar-anthos-creds-secret-monitor |
Falso | Organizzazione | Role |
System Artifact Registry gpc-system secret Monitor | sar-gpc-system-secret-monitor |
Falso | Organizzazione | Role |
Monitoraggio del secret di sistema Artifact Registry harbor-system | sar-harbor-system-secret-monitor |
Falso | Organizzazione | Role |
Visualizzatore del tipo di macchina virtuale | virtualmachinetype-viewer |
Falso | Organizzazione | OrganizationRole |
Visualizzatore tipo di VM | vmtype-viewer |
Falso | Organizzazione | Role |
Ruoli comuni predefiniti per l'identità e l'accesso
Ruoli comuni | ||||
---|---|---|---|---|
Nome | Tipo di associazione | Autorizzazioni del cluster di amministrazione | Autorizzazioni del cluster Kubernetes | Riassegnazione a |
Visualizzatore AI Platform | RoleBinding |
Servizi preaddestrati: lettura | N/D | N/D |
Visualizzatore del suffisso DNS | ClusterRoleBinding |
Config Maps del suffisso DNS:lettura | N/D | N/D |
Flow Log Admin | ClusterRoleBinding |
Risorse dei log di flusso:ottieni e leggi | Risorse dei log di flusso:ottieni e leggi | N/D |
Visualizzatore log di flusso | ClusterRoleBinding |
Risorse di log di flusso:crea, ottieni, leggi, applica patch, aggiorna ed elimina | Risorse di log di flusso:crea, ottieni, leggi, applica patch, aggiorna ed elimina | N/D |
Project Discovery Viewer | ClusterRoleBinding |
Progetti: lettura | N/D | N/D |
Visualizzatore immagini pubblico | RoleBinding |
Immagini VM: lettura | N/D | N/D |
Monitoraggio del secret anthos-creds di Artifact Registry di sistema | RoleBinding |
anthos-creds secrets: ottieni e leggi |
anthos-creds secrets: ottieni e leggi |
N/D |
System Artifact Registry gpc-system secret Monitor | RoleBinding |
gpc-system secrets: ottieni e leggi |
gpc-system secrets: ottieni e leggi |
N/D |
Monitoraggio del secret di sistema Artifact Registry harbor-system | RoleBinding |
harbor-system secrets: ottieni e leggi |
harbor-system secrets: ottieni e leggi |
N/D |
Visualizzatore del tipo di macchina virtuale | OrganizationRoleBinding |
N/D | Tipi di VM:lettura | N/D |
Visualizzatore tipo di VM | ClusterRoleBinding |
Tipi di VM:lettura | N/D | N/D |
Esistono due modi per concedere l'accesso alle risorse:
- Configurare le associazioni di ruoli utilizzando la CLI
- Configurare i binding dei ruoli utilizzando la console GDC
Configurare i binding dei ruoli utilizzando la CLI
Accesso AO nel cluster di amministrazione
A differenza degli operatori di infrastruttura (IO) e degli amministratori della piattaforma (PA),
GDC associa gli operatori delle applicazioni (AO) a un Project
tramite un RoleBinding
, anziché un ClusterRoleBinding
.
Per concedere a un AO l'accesso al cluster di amministrazione, completa i seguenti passaggi:
Esporta l'email che utilizzi per l'accesso AO. Ad esempio, un'email come
ao-alice@example.com
.export AO_EMAIL=AO_EMAIL
Crea un'associazione dei ruoli per concedere l'accesso all'amministratore IAM progetto nello spazio dei nomi
iam-test
:${AO_EMAIL}
kubectl create --kubeconfig PA_KUBECONFIG \ rolebinding $AO_EMAIL-project-iam-admin \ --role=project-iam-admin --user=$AO_EMAIL \ --namespace=iam-test
Il ruolo
project-iam-admin
è un ruolo predefinito per GDC. Lo spazio dei nomi Kubernetesiam-test
corrisponde al progettoiam-test
nel cluster di amministrazione.Verifica che l'account AO disponga delle autorizzazioni per creare associazioni di ruoli nello spazio dei nomi
iam-test
:kubectl --kubeconfig AO_KUBECONFIG auth can-i create rolebinding -n iam-test
Viene visualizzato l'output seguente:
yes
Crea un'associazione dei ruoli per concedere l'accesso al ruolo Visualizzatore progetto nello spazio dei nomi
bar
:${AO_EMAIL}
kubectl create --kubeconfig PA_KUBECONFIG \ rolebinding $AO_EMAIL-project-viewer \ --role=project-viewer --user=$AO_EMAIL \ --namespace=bar
Il ruolo
project-viewer
è un ruolo preimpostato per GDC. Lo spazio dei nomi Kubernetesbar
corrisponde al progettobar
nel cluster di amministrazione dell'organizzazione.Verifica che l'account AO non disponga delle autorizzazioni per creare associazioni di ruoli nello spazio dei nomi
bar
:kubectl --kubeconfig AO_KUBECONFIG auth can-i create rolebinding -n bar
Viene visualizzato l'output seguente:
no
(Facoltativo) Elimina l'associazione di ruolo per revocare l'autorizzazione concessa all'account AO:
kubectl --kubeconfig PA_KUBECONFIG delete rolebinding $AO_EMAIL-project-iam-admin -n iam-test
Accesso AO nei cluster utente
Un AO utilizza le risorse ProjectRole
e ProjectRoleBinding
per ottenere l'accesso allo spazio dei nomi ai cluster utente. Tuttavia, gli amministratori delegati possono concedere all'organizzazione
autorizzazioni a livello di organizzazione nei cluster di utenti utilizzando le risorse preimpostate OrganizationRole
e
ProjectRoleBinding
.
Completa i seguenti passaggi per fornire agli AO l'accesso ai cluster di utenti:
Per concedere l'accesso ai cluster utente, devi disporre del ruolo Amministratore IAM progetto.
Crea una risorsa
ProjectRoleBinding
per concedere l'accesso di amministratore dello spazio dei nomi${AO_EMAIL}
in tutti i cluster utente nello spazio dei nomiiam-test
:kubectl --kubeconfig AO_KUBECONFIG apply -f - <<EOF apiVersion: resourcemanager.gdc.goog/v1 kind: ProjectRoleBinding metadata: name: ${AO_EMAIL%@*}-namespace-admin namespace: iam-test spec: roleRef: apiGroup: resourcemanager.gdc.goog kind: ProjectRole name: namespace-admin subjects: - apiGroup: rbac.authorization.k8s.io kind: User name: ${AO_EMAIL} EOF
Segui le istruzioni della sezione Accedere con la CLI e kubectl per ottenere le credenziali utente per il cluster utente ed esportarle nella variabile
AO_USER_CLUSTER_KUBECONFIG
:export AO_USER_CLUSTER_KUBECONFIG=GENERATED_KUBECONFIG
Verifica che l'account AO disponga delle autorizzazioni per creare deployment nello spazio dei nomi
iam-test
:kubectl --kubeconfig ${AO_USER_CLUSTER_KUBECONFIG} auth can-i create deployment -n iam-test
Viene visualizzato l'output seguente:
yes
(Facoltativo) Elimina i binding dei ruoli del progetto per revocare l'autorizzazione concessa all'account AO di test:
kubectl --kubeconfig ${AO_USER_CLUSTER_KUBECONFIG} delete projectrolebinding ${AO_EMAIL%@*}-namespace-admin -n iam-test
Configura i binding dei ruoli a livello di progetto utilizzando la UI
Un operatore dell'applicazione aggiunge altri operatori dell'applicazione al progetto in modo che abbiano accesso alle risorse del progetto.
Per ottenere le autorizzazioni necessarie per configurare i binding dei ruoli, chiedi all'amministratore IAM del progetto di concederti il ruolo Amministratore IAM del progetto.
Segui questi passaggi per configurare i binding dei ruoli:
- Accedi alla console dell'appliance GDC con air gap.
- Seleziona un progetto.
- Nel menu di navigazione, fai clic su Gestione accessi.
- Fai clic su Aggiungi membro.
- Nell'elenco Provider di identità, seleziona un provider di identità.
- Scegli se aggiungere singoli utenti o gruppi.
- Nel campo Nome utente o alias del gruppo, inserisci il nome utente, l'indirizzo email o l'alias.
- Nell'elenco Ruolo, seleziona il ruolo che vuoi assegnare all'utente o al gruppo, ad esempio Visualizzatore progetto.
- Fai clic su Aggiungi.
Rimuovere le associazioni di ruoli utilizzando la UI
Quando l'accesso non è più necessario, rimuovi un membro e i relativi ruoli, autorizzazioni e accesso.
Per rimuovere i membri, segui questi passaggi:
- Accedi alla console dell'appliance GDC con air gap.
- Seleziona un progetto.
- Nel menu di navigazione, fai clic su Gestione accessi.
- Nell'elenco Membri autorizzati, seleziona un membro.
- Fai clic su Rimuovi membro.
- Quando richiesto, fai clic su Rimuovi membro per confermare.