Questo documento fornisce una panoramica generale del servizio Gestore contesto accesso e delle sue funzioni. Google Cloud Gli amministratori dell'organizzazione possono utilizzare Gestore contesto accesso per definire controllo dell'accesso granulare e basato su attributi per progetti e risorse in Google Cloud. In qualità di amministratore, devi prima definire una policy di accesso, ovvero un contenitore a livello di organizzazione per livelli di accesso e perimetri di servizio.
I livelli di accesso descrivono i requisiti che le richieste devono soddisfare per essere onorate. Alcuni esempi sono:
- Tipo di dispositivo e sistema operativo
- Indirizzo IP
- Identità utente
I perimetri di servizio definiscono sandbox di risorse, che possono scambiare liberamente dati all'interno del perimetro, ma non possono esportare dati al di fuori del perimetro. Gestore contesto accesso non è responsabile dell'applicazione dei criteri. Gestore contesto accesso è progettato per definire regole o contesti specifici. Il criterio è configurato e applicato in vari punti, ad esempio Controlli di servizio VPC. Per saperne di più su questi servizi, consulta le rispettive guide dell'utente.
Puoi configurare e applicare i criteri di Gestore contesto accesso nei seguenti componenti della soluzione Chrome Enterprise Premium:
Vantaggi
Molte aziende si affidano a un modello di sicurezza perimetrale come un firewall per proteggere le risorse interne. Un modello di sicurezza perimetrale è fortemente protetto con un unico punto di ingresso e uscita. Qualsiasi elemento posizionato all'esterno è considerato pericoloso . Qualsiasi cosa al suo interno è considerata attendibile.
I firewall e il modello di sicurezza perimetrale funzionano bene se esiste un confine preciso intorno a utenti e servizi specifici. Tuttavia, se la forza lavoro è mobile, la varietà di dispositivi aumenta man mano che gli utenti portano i propri dispositivi (BYOD) e utilizzano servizi basati su cloud. Questo scenario comporta ulteriori vettori di attacco che non vengono presi in considerazione dal modello di perimetro. Per questo motivo, il perimetro non è più solo la sede fisica dell'azienda e ciò che si trova all'interno non può essere considerato sicuro.
Puoi utilizzare Gestore contesto accesso per ridurre le dimensioni della rete privilegiata e passare a un modello in cui gli endpoint non dispongono di un'autorità ambientale basata sulla rete. Puoi invece concedere l'accesso in base al contesto della richiesta, ad esempio tipo di dispositivo, identità utente e altro ancora, continuando a verificare l'accesso alla rete aziendale quando necessario.
Gestore contesto accesso è parte integrante dell'iniziativa BeyondCorp di Google. Per ulteriori informazioni, vedi BeyondCorp.Criteri di accesso
Un criterio di accesso è un contenitore per tutte le risorse di Gestore contesto accesso, come livelli di accesso e perimetri di servizio.
Puoi creare una policy di accesso nel contesto di un'organizzazione e utilizzare la policy di accesso a livello di organizzazione in qualsiasi punto della tua organizzazione. Per delegare l'amministrazione di una policy di accesso, puoi creare una policy di accesso con ambito e impostare l'ambito della policy a livello di cartella o progetto. L'amministratore delegato a cui è assegnato il criterio con ambito può gestire solo il criterio di accesso con ambito e non il criterio di accesso a livello di organizzazione.
Un criterio di accesso è sottoposto al controllo delle versioni utilizzando un etag
.
Puoi utilizzare etag
per scegliere come target le modifiche alla tua norma di accesso, ad esempio
modifiche ai livelli di accesso o a una versione specifica della norma. Se
più origini modificano la tua policy di accesso, l'utilizzo del campo etag
per
lo strumento a riga di comando gcloud
e le chiamate API contribuisce a evitare sovrascritture e conflitti involontari.
Per scoprire come creare policy di accesso, consulta Creazione di un criterio di accesso.
Livelli di accesso
I livelli di accesso vengono utilizzati per consentire l'accesso alle risorse in base alle informazioni contestuali sulla richiesta. Utilizzando i livelli di accesso, puoi iniziare a organizzare
i livelli di attendibilità. Ad esempio, potresti creare un livello di accesso chiamato
High_Level
che consentirà le richieste di un piccolo gruppo di persone con privilegi elevati. Potresti anche identificare un gruppo più generale da considerare attendibile, ad esempio un
intervallo IP da cui vuoi consentire le richieste. In questo caso, potresti creare
un livello di accesso chiamato Medium_Level
per consentire queste richieste.
Dopo aver definito i livelli di accesso, i servizi di applicazione forzata possono utilizzarli per
determinare se accettare una richiesta. Ad esempio, potresti specificare che, sebbene
molte risorse siano disponibili per Medium_Trust
, alcune risorse più sensibili
richiedono il livello High_Trust
. Questi controlli vengono applicati in aggiunta
al criterio IAM standard.
I livelli di accesso sono personalizzabili. I livelli di accesso High_Trust
e Medium_Trust
sono esempi. Puoi specificare più livelli di accesso nell'ambito di una
policy di accesso.
Un livello di accesso di base è costituito da una raccolta di condizioni utilizzate per testare le richieste. Le condizioni possono essere definite come un gruppo di attributi che vuoi testare, ad esempio il tipo di dispositivo, l'indirizzo IP o l'identità dell'utente. Gli attributi vengono combinati come operazione AND (tutti devono essere veri) o NOR (nessuno deve essere vero) per determinare se la condizione è soddisfatta.
I livelli di accesso personalizzati vengono creati utilizzando un sottoinsieme del Common Expression Language. Oltre al contesto della richiesta utilizzato per i livelli di accesso di base, puoi utilizzare anche livelli di accesso personalizzati per consentire le richieste in base ai dati dei servizi di terze parti. Per ulteriori informazioni, vedi Livelli di accesso personalizzati.
AND
(&&
) e OR
(||
) determina in modo univoco il risultato, l'altro operando potrebbe essere valutato o meno. Inoltre, se la valutazione produce un errore di runtime, viene
ignorata. Ad esempio, nella seguente espressione, la valutazione di
origin.region_code
non riesce, ma la valutazione di levels.ip_check
riesce.
Poiché almeno uno dei controlli ha esito positivo, la condizione generale, combinata da OR
, diventa vera e l'accesso è GRANTED
.
!(origin.region_code in ['RU', 'BY', 'UA']) -> FAILED // levels.regions_check
inIpRange(origin.ip, ['205.220.128.0/23']) -> GRANTED // levels.ip_check
!(origin.region_code in ['RU', 'BY', 'UA']) || inIpRange(origin.ip, ['205.220.128.0/23']) -> GRANTED
levels.regions_check || levels.ip_check -> GRANTED
Indirizzo IP
Puoi concedere un livello di accesso in base all'indirizzo IP della richiesta di origine. L'intervallo di IP da consentire è specificato sotto forma di blocco Classless Inter-Domain Routing (CIDR), che consente un controllo granulare degli IP consentiti.
Un singolo livello di accesso può contenere più intervalli IP.
Per scoprire come creare un livello di accesso che consenta l'accesso solo a un intervallo specificato di indirizzi IP, ad esempio quelli all'interno di una singola rete aziendale, consulta Creazione di un livello di accesso per l'accesso alla rete aziendale.
Tipo di dispositivo
Gestore contesto accesso utilizza Verifica endpoint per raccogliere informazioni sui dispositivi utente, come sistema operativo, tipo o versione del dispositivo. Puoi concedere un livello di accesso in base a questi dati. Ad esempio, puoi concedere un livello di accesso più permissivo ai dispositivi che eseguono l'ultima versione del sistema operativo principale distribuito nella tua azienda.
Per scoprire come concedere un livello di accesso in base a questi attributi del dispositivo, consulta Limitare l'accesso in base al tipo di dispositivo.
Identità utente
In alcuni scenari, potresti voler concedere un livello di accesso a entità specifiche. In questi scenari, l'identità del chiamante determina se la condizione è soddisfatta. Questo scenario viene spesso utilizzato insieme ai service account e ai Controlli di servizio VPC. Ad esempio, puoi utilizzare questo scenario per consentire a una Cloud Function di accedere ai dati protetti da Controlli di servizio VPC.
Puoi creare e gestire livelli di accesso solo identità con lo strumento a riga di comando gcloud
, ma non con la console Google Cloud .
Per iniziare a creare un livello di accesso di base, vedi Creare un livello di accesso per Gestore contesto accesso.
Per informazioni sulla creazione di un livello di accesso che consenta l'accesso in base al contesto di una richiesta, vedi Creare un livello di accesso personalizzato.Combinare le condizioni
Un singolo livello di accesso può contenere più condizioni. Le condizioni possono essere
valutate utilizzando l'operatore AND
o OR
. Puoi specificare la modalità quando
crei o aggiorni un livello di accesso.
La AND
è l'opzione più restrittiva e predefinita. Questa opzione concede il
livello di accesso solo se tutte le condizioni vengono soddisfatte. Ad esempio, potresti richiedere che una richiesta
provenga dalla rete aziendale e da un dispositivo che esegue l'ultima
versione di un sistema operativo.
OR
è un'opzione meno restrittiva. Questa opzione richiede solo che una delle tante
condizioni sia vera. A volte, questo è utile quando si ha a che fare con identità utente, ad esempio per escludere entità specifiche (come gli account di servizio) dai requisiti normali.
Condizioni di nidificazione
Le condizioni possono essere nidificate in modo che una condizione dipenda da un'altra. Ad esempio, se hai i due livelli di accesso "Medio" e "Alto", puoi impostare i requisiti per "Alto" in modo che richiedano "Medio", oltre ad altre condizioni.
Le condizioni di nidificazione possono semplificare la gestione dei livelli di accesso. Ad esempio, immagina che il tuo livello di accesso più permissivo contenga una versione minima del sistema operativo e che tu imposti i livelli più restrittivi in modo che dipendano da questo. Se in futuro aggiorni la versione minima, devi aggiornare una sola condizione, anziché ogni livello di accesso nelle norme.
Scopri di più
- Guida rapida: crea un livello di accesso per Gestore contesto accesso
- Creare un livello di accesso base
- Creare un livello di accesso personalizzato
- YAML di esempio per un livello di accesso