Ogni soggetto, utente o gruppo, segue una procedura in due passaggi per ottenere l'accesso
al server API globale. Concedi a un soggetto le autorizzazioni nel server API globale
utilizzando IAMRoleBinding
a un IAMRole
predefinito. Tutti i ruoli e i binding dei ruoli sono globali.
Le persone (IO, PA, AO) non sono ruoli, ma raccolte di ruoli utente mappati su autorizzazioni specifiche e assegnati a singoli utenti.
Configurare le associazioni di ruoli
Puoi configurare i binding dei ruoli che consentono ai membri del team di accedere alle risorse a livello di organizzazione o progetto.
Per ottenere le autorizzazioni necessarie per configurare i binding dei ruoli, chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Amministratore IAM dell'organizzazione.
Per assegnare un ruolo a un membro autorizzato:
Console
- Accedi alla console GDC.
- Seleziona un'organizzazione o un progetto dal selettore di ambito.
- Per configurare i binding dei ruoli per un'organizzazione, seleziona un'organizzazione.
- Per configurare i binding dei ruoli per un progetto, seleziona un progetto.
- Nel menu di navigazione, fai clic su Identity and Access Management > Accesso.
- Fai clic su Aggiungi membro.
- Scegli se aggiungere singoli utenti o gruppi.
- Nell'elenco Provider di identità, seleziona un provider di identità.
- 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 organizzazione a livello di organizzazione o Creatore progetto a livello di progetto.
- Fai clic su Aggiungi.
Il membro viene visualizzato nell'elenco Membri autorizzati.
gdcloud
Assicurati di aver installato gcloud CLI.
Accedi utilizzando il comando
gdcloud auth login
per autenticarti con il tuo provider di identità. Per ulteriori informazioni, consulta l'autenticazione di gcloud CLI.Configura le associazioni di ruoli.
Configura i binding dei ruoli per un'organizzazione:
gdcloud organizations add-iam-policy-binding ORGANIZATION \ --member=USER_ACCOUNT \ --role= ROLE
Sostituisci le seguenti variabili:
ORGANIZATION
: il nome dell'organizzazione per cui stai configurando l'associazione del ruolo.USER_ACCOUNT
: l'account utente a cui vuoi concedere il ruolo. Questo flag accetta un indirizzo email utente con il prefisso del provider di identità (user:idpprefix-user@example.com
) o un nome account di servizio con il progetto del account di servizio (serviceAccount:projectName:serviceAccountName
).ROLE
: il nome del ruolo predefinito o personalizzato che vuoi assegnare all'utente.
Configura le associazioni di ruoli per un progetto:
gdcloud projects add-iam-policy-binding PROJECT \ --member=USER_ACCOUNT \ --role= ROLE
Sostituisci le seguenti variabili:
PROJECT
: il nome del progetto per cui stai configurando l'associazione di ruoli.USER_ACCOUNT
: l'account utente a cui vuoi concedere il ruolo. Questo flag accetta un indirizzo email utente con il prefisso del provider di identità (user:idpprefix-user@example.com
) o un nome account di servizio con il progetto del account di servizio (serviceAccount:projectName:serviceAccountName
).ROLE
: il nome del ruolo predefinito o personalizzato che vuoi assegnare all'utente.
API
Esporta le credenziali utente che utilizzi:
export GLOBAL_API_SERVER_KUBECONFIG=GLOBAL_API_SERVER_KUBECONFIG
Esporta l'account utente a cui vuoi assegnare il ruolo, incluso il prefisso del provider di identità (ad esempio
idpprefix-paul@example.com
):export USERNAME=IDP_PREFIX-USER_EMAIL
Esporta il nome del ruolo di cui ha bisogno l'utente, ad esempio
project-creator
. Consulta le definizioni dei ruoli per trovare il ruolo corrispondente.export ROLE_NAME=ROLE_NAME
Esporta lo spazio dei nomi in cui deve essere creato il binding:
export BINDING_NAMESPACE=BINDING_NAMESPACE
Sostituisci BINDING_NAMESPACE con
platform
per i ruoli con ambito organizzazione o con il nome dello spazio dei nomi del progetto di destinazione per i ruoli con ambito progetto.Consulta Definizioni dei ruoli per un elenco dei ruoli e del loro ambito.
Crea e applica una risorsa personalizzata
IAMRoleBinding
:cat <<EOF | kubectl --kubeconfig ${GLOBAL_API_SERVER_KUBECONFIG} apply -f - apiVersion: iam.global.gdc.goog/v1 kind: IAMRoleBinding metadata: name: ${USERNAME}-${ROLE_NAME}-binding namespace: ${BINDING_NAMESPACE} spec: roleRef: apiGroup: iam.global.gdc.goog kind: IAMRole name: ${ROLE_NAME} subjects: - apiGroup: rbac.authorization.k8s.io kind: User name: ${USERNAME} EOF
Rimuovi le associazioni di ruolo
Quando l'accesso non è più necessario, rimuovi un membro e i ruoli, le autorizzazioni e l'accesso associati.
Per rimuovere i membri, segui questi passaggi:
Console
- Accedi alla console GDC.
- Nel menu di navigazione, fai clic su Identity and Access Management > Accesso.
- Nell'elenco Membri autorizzati, seleziona un membro.
- Fai clic su Rimuovi membro.
- Quando richiesto, fai clic su Rimuovi membro per confermare.
gdcloud
Assicurati di aver installato gcloud CLI.
Accedi utilizzando il comando
gdcloud auth login
per autenticarti con il tuo provider di identità. Per ulteriori informazioni, consulta l'autenticazione di gcloud CLI.Rimuovi le associazioni di ruolo.
Rimuovi le associazioni di ruolo per un'organizzazione:
gdcloud organizations remove-iam-policy-binding ORGANIZATION \ --member=USER_ACCOUNT \ --role= ROLE
Sostituisci le seguenti variabili:
ORGANIZATION
: il nome dell'organizzazione da cui stai rimuovendo l'associazione di ruolo.USER_ACCOUNT
: l'account utente da cui vuoi rimuovere il ruolo. Questo flag accetta un indirizzo email utente con il prefisso del provider di identità (user:idpprefix-user@example.com
) o un nome account di servizio con il progetto del account di servizio (serviceAccount:projectName:serviceAccountName
).ROLE
: il nome del ruolo predefinito o personalizzato che vuoi rimuovere dall'account utente.
Rimuovi le associazioni di ruolo per un progetto:
gdcloud projects remove-iam-policy-binding PROJECT \ --member=USER_ACCOUNT \ --role= ROLE
Sostituisci le seguenti variabili:
PROJECT
: il nome del progetto da cui stai rimuovendo l'associazione del ruolo.USER_ACCOUNT
: l'account utente da cui vuoi rimuovere il ruolo. Questo flag accetta un indirizzo email utente con il prefisso del provider di identità (user:idpprefix-user@example.com
) o un nome account di servizio con il progetto del account di servizio (serviceAccount:projectName:serviceAccountName
).ROLE
: il nome del ruolo predefinito o personalizzato che vuoi rimuovere dall'account utente.
API
Elimina IAMRoleBinding
per revocare l'autorizzazione concessa all'account PA:
kubectl --kubeconfig GLOBAL_API_SERVER_KUBECONFIG \
delete iamrolebinding USERNAME-ROLE_NAME-binding -n BINDING_NAMESPACE
Sostituisci quanto segue:
- GLOBAL_API_SERVER_KUBECONFIG: il percorso del file kubeconfig per accedere al server API globale.
- USERNAME: l'account utente per il quale vuoi
rimuovere il ruolo, incluso il prefisso del provider di identità (ad esempio
idpprefix-paul@example.com
). - ROLE_NAME: il nome del ruolo che vuoi rimuovere, ad esempio
project-creator
. - BINDING_NAMESPACE: sostituisci con
platform
per i ruoli con ambito organizzazione o con il nome dello spazio dei nomi del progetto di destinazione per i ruoli con ambito progetto.
Revocare l'accesso utente
Se un membro lascia la tua organizzazione o il tuo team, puoi revocare il suo accesso a Google Distributed Cloud (GDC) air-gapped. La revoca dell'accesso di un utente comporta la sua disconnessione da Distributed Cloud e la rimozione dei suoi ruoli e delle sue autorizzazioni. Puoi anche elencare l'attività e le sessioni dell'utente in base all'ora di inizio e di fine.
Per revocare l'accesso di un utente a un universo GDC, devi revocare l'accesso per ogni zona singolarmente. Completa i seguenti passaggi per ogni zona:
Assicurati di aver eseguito l'accesso alla zona per cui vuoi revocare l'accesso. Ad esempio, imposta la configurazione dell'URL zonale per gcloud CLI e poi accedi:
gdcloud config set organization_console_url ZONE_URL gdcloud auth login
Sostituisci
ZONE_URL
con l'URL della console GDC per la zona per cui revocare l'accesso utente, che è simile ahttps://console.ORG_NAME.ZONE_NAME.ORG_SUFFIX
.Per ulteriori informazioni sul cambio di contesto di zona, vedi Gestire le risorse tra le zone.
Ottieni le autorizzazioni necessarie per revocare gli utenti. Chiedi all'amministratore IAM dell'organizzazione di concederti il ruolo Amministratore sessione organizzazione (
org-session-admin
).Revoca l'accesso dell'utente per la zona:
gdcloud admin auth revoke --accounts USER_EMAIL
Sostituisci USER_EMAIL con l'email dell'utente a cui revocare l'accesso.
Dopo aver eseguito il comando, visualizzi un output simile al seguente. Questo esempio revoca l'accesso all'utente
ariel@example.com
:Success: NUMBER of sessions revoked for user ariel@example.com
In questo esempio, la variabile NUMBER si riferisce al numero di sessioni attive dell'utente.
Conferma di aver revocato l'accesso dell'utente eseguendo di nuovo il comando
gdcloud admin auth revoke
. Se l'operazione riesce, visualizzi quanto segue:No sessions found for account: ariel@example.com
Ripeti i passaggi precedenti per ogni zona del tuo universo.