Questa pagina spiega come applicare in modo forzato l'accesso basato su certificati (CBA) utilizzando i criteri di accesso sensibile al contesto basati su un gruppo di utenti.
Puoi limitare l'accesso a tutti i servizi Google Cloud associando un Livello di accesso CBA a un gruppo di utenti a cui desideri limitare l'accesso. Questo si applica a tutte le applicazioni client che chiamano Google Cloud su quelle di livello inferiore. Le applicazioni includono applicazioni proprietarie create da Google, ad esempio la console Google Cloud, Google Cloud CLI e applicazioni di terze parti. Facoltativamente, puoi applicare le limitazioni ad applicazioni client o per escludere applicazioni specifiche.
Prima di iniziare
Assicurati di aver creato un livello di accesso CBA che richiedono certificati per determinare l'accesso alle risorse.
Creare un gruppo di utenti
Crea un gruppo di utenti contenente il parametro a cui dovrebbe essere concesso l'accesso in base al livello di accesso CBA.
Assegnare il ruolo Amministratore associazioni accessi Cloud
Assegna il ruolo Amministratore associazione Cloud Access al gruppo di utenti.
Assicurati di disporre dell'autorizzazione con privilegi sufficienti per aggiungere Autorizzazioni IAM a livello di organizzazione. Come minimo, hai bisogno l'amministratore dell'organizzazione e i ruoli di Amministratore associazioni accessi Cloud.
Console
Nella console Cloud, vai alla pagina IAM.
Nella scheda Autorizzazioni, fai clic su Concedi l'accesso, quindi configura le seguenti:
- Nuove entità: specifica il gruppo a cui vuoi concedere le ruolo.
- Nell'opzione Seleziona un ruolo, scegli Gestore contesto accesso > Amministratore associazioni accessi Cloud.
- Fai clic su Salva.
gcloud
Accedi:
gcloud auth login
Assegna il ruolo
GcpAccessAdmin
eseguendo questo comando:gcloud organizations add-iam-policy-binding ORG_ID \ --member=user:EMAIL \ --role=roles/accesscontextmanager.gcpAccessAdmin
ORG_ID
è l'ID della tua organizzazione. Se Se non disponi ancora dell'ID organizzazione, puoi utilizzare per trovarlo:gcloud organizations list
EMAIL
è l'indirizzo email della persona o gruppo a cui desideri concedere il ruolo.
Associare un livello di accesso CBA a un gruppo di utenti
In questa opzione di associazione, il livello di accesso CBA si applica a tutti i client le applicazioni per il gruppo utenti specificato.
Nella console, vai alla pagina Chrome Enterprise Premium.
Scegli un'organizzazione e fai clic su Seleziona.
Fai clic su Gestisci accesso per scegliere i gruppi di utenti che devono avere accesso.
Fai clic su Aggiungi e configura quanto segue:
- Gruppi di membri: specifica il gruppo a cui vuoi concedere l'accesso. Tu può selezionare solo gruppi non ancora associati a un livello di accesso.
- Seleziona i livelli di accesso: seleziona il livello di accesso CBA da applicare al gruppo.
- Fai clic su Salva.
Associa un livello di accesso CBA a un gruppo di utenti e ad applicazioni specifiche
In alcuni casi d'uso, ad esempio applicazioni che supportano i certificati client, associare un livello di accesso CBA a un gruppo di utenti potrebbe esserlo anche generica. Puoi utilizzare questa opzione per applicare i livelli di accesso CBA alle applicazioni che e supportare i certificati client.
L'esempio seguente associa un livello di accesso CBA alla console Google Cloud gcloud CLI e l'applicazione OAuth di un utente.
Accedi a gcloud CLI.
$ gcloud auth application-default login
Crea un file
policy_file.json
.Puoi specificare le applicazioni utilizzando il relativo ID client OAuth. Per specificare che Google applicazioni, utilizza il nome dell'applicazione, ad esempio
Cloud Console
per nella console Google Cloud. Solo la console Google Cloud e Google Cloud SDK Le applicazioni Google sono supportate.{ "groupKey": "{GROUP_KEY}", "restricted_client_applications": [ {"name": "Cloud Console"}, {"name": "Google Cloud SDK"}, {"client_id": "{CLIENT_ID}"} ], "accessLevels": [ "{LEVEL}" ], }
Crea l'associazione del livello di accesso CBA.
curl -X POST \ -H "Authorization: Bearer `gcloud auth application-default print-access-token`" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project:PROJECT_ID" \ -d @policy_file.json \ https://accesscontextmanager.googleapis.com/v1/organizations/ORG-ID/gcpUserAccessBindings
Dove PROJECT_ID è l'ID progetto Google Cloud e ORG-ID è l'ID della tua organizzazione.
(Facoltativo) Aggiorna un'associazione dei livelli di accesso esistente.
$ curl -X PATCH \ -H "Authorization: Bearer `gcloud auth application-default print-access-token`" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project:PROJECT_ID" \ -d @policy_file.json \ https://accesscontextmanager.googleapis.com/v1/POLICY_NAME?update_mask=restricted_client_applications
Dove PROJECT_ID è l'ID progetto Google Cloud e POLICY_NAME è il nome del criterio di accesso.
Escludi un'applicazione da un'associazione
Un altro modo per applicare un livello di accesso CBA senza bloccare le applicazioni client che non supportano i certificati client consiste nell'escludere tali applicazioni dai .
I passaggi seguenti presuppongono che in precedenza ha creato un livello di accesso CBA che richiedono certificati per determinare l'accesso alle risorse.
Crea un livello di accesso per l'esenzione utilizzando uno dei seguenti metodi.
- Livello di accesso personalizzato:
Specifica
true
come valore nella condizione dell'espressione CEL. - Livello di accesso di base:
Crea un
Livello di accesso basato su intervallo IP
e specifica
0.0.0.0/0
come valore per le subnet IP.
- Livello di accesso personalizzato:
Specifica
Crea un file
exemption_file.json
.Devi selezionare un gruppo diverso da quello utilizzato nella Associa un livello di accesso CBA a un gruppo di utenti, perché puoi applicare una sola associazione a un gruppo.
{ "groupKey": "{GROUP_KEY}", "restricted_client_applications": [ {"client_id": "{CLIENT_ID}"} ], "accessLevels": [ "{LEVEL}" ], }
Crea il criterio di associazione di esenzione.
$ curl -X POST \ -H "Authorization: Bearer `gcloud auth application-default print-access-token`" \ -H "Content-Type: application/json" \ -H "X-Goog-User-Project:PROJECT_ID" \ -d @exemption_file.json \ https://accesscontextmanager.googleapis.com/v1/organizations/ORG-ID/gcpUserAccessBindings
Dove PROJECT_ID è l'ID progetto Google Cloud e ORG-ID è l'ID della tua organizzazione.