Questo documento mostra come proteggere l'accesso alla console Google Cloud e alle API Google Cloud utilizzando le regole basate sul contesto.
L'accesso sensibile al contesto per la console Google Cloud e le API Google Cloud limita l'accesso alla console Google Cloud e alle API Google Cloud con regole basate sul contesto. Fa parte di BeyondCorp Enterprise e aiuta a garantire che gli utenti e i gruppi all'interno dell'organizzazione che soddisfano i requisiti di accesso definiti possano accedere alla console Google Cloud e alle API Google Cloud (compreso l'accesso da Google Cloud CLI).
Per proteggere la console Google Cloud e le API Google Cloud, completa i seguenti passaggi:
- (Facoltativo) Esegui il deployment della verifica degli endpoint sui dispositivi della tua organizzazione.
- Crea un livello di accesso in Gestore contesto accesso.
- Crea un gruppo di utenti vincolato da restrizioni sensibili al contesto.
- Ottieni le autorizzazioni necessarie per Identity and Access Management.
- Creare un'associazione di accesso che applichi regole sensibili al contesto per la console Google Cloud e le API Google Cloud.
[Facoltativo] Eseguire il deployment della verifica degli endpoint
Se vuoi proteggere l'accesso alla console Google Cloud e alle API di Google Cloud utilizzando gli attributi dei dispositivi, esegui il deployment della verifica degli endpoint sui dispositivi della tua organizzazione.
Verifica endpoint viene eseguito come estensione di Chrome su computer e laptop per gli utenti di MacOS, Windows e Linux. Un amministratore può eseguirne il deployment sui dispositivi di proprietà dell'azienda dell'organizzazione dalla Console di amministrazione Google oppure i membri dell'organizzazione possono installarli autonomamente.
Crea un livello di accesso
Devi definire un livello di accesso che può essere utilizzato per determinare l'accesso alla console Google Cloud e alle API Google Cloud creando un livello di accesso di base in Gestore contesto accesso.
Creare un gruppo di utenti
Crea un gruppo di utenti che deve essere vincolato da restrizioni sensibili al contesto. Tutti gli utenti di questo gruppo che sono anche membri della tua organizzazione devono soddisfare il livello di accesso creato in precedenza per accedere alla console Google Cloud e alle API Google Cloud.
Concedi le autorizzazioni IAM richieste
Concedi a livello di organizzazione le autorizzazioni IAM necessarie per creare associazioni di accesso di Gestore contesto accesso.
Console
Vai alla pagina IAM e amministrazione nella console Google Cloud.
Fai clic su Aggiungi e configura quanto segue:
- Nuovi membri: specifica l'utente o il gruppo a cui concedere le autorizzazioni.
- Seleziona un ruolo: seleziona Gestore contesto accesso > Amministratore associazione accessi Cloud.
Fai clic su Salva.
gcloud
Assicurati di aver eseguito l'autenticazione con privilegi sufficienti per aggiungere autorizzazioni IAM a livello di organizzazione. Devi disporre almeno del ruolo Amministratore organizzazione.
Una volta confermate le autorizzazioni corrette, accedi con:
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 non hai ancora il tuo ID organizzazione, puoi utilizzare il seguente comando per trovarlo:gcloud organizations list
EMAIL
è l'indirizzo email della persona o del gruppo a cui vuoi concedere il ruolo.
Crea un'associazione di accesso
Un'associazione di accesso è una mappatura tra il gruppo di utenti creato in precedenza e il livello di accesso Gestore contesto accesso che hai definito per accedere alla console Google Cloud e alle API Google Cloud.
Puoi creare un'associazione di accesso in uno dei seguenti modi:
- Associazione di accesso tra un gruppo e un livello di accesso.
- Associazione di accesso tra un gruppo e un livello di accesso con configurazione di prova. Con la configurazione di prova, puoi creare un'associazione di accesso tra un gruppo e un livello di prova oppure tra un gruppo, un livello di accesso e un livello di prova.
Creare un'associazione di accesso con un livello di accesso
Console
Vai alla pagina BeyondCorp Enterprise nella console Google Cloud.
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. Puoi selezionare solo i gruppi non già associati a un livello di accesso.
- Seleziona i livelli di accesso: scegli il livello di accesso da applicare al gruppo.
Fai clic su Salva.
gcloud
Puoi fare riferimento a Google Cloud CLI per ulteriori informazioni su questo e altri comandi gcloud access-context-manager cloud-bindings, incluse opzioni di flag aggiuntive.
gcloud access-context-manager cloud-bindings create \
--group-key GROUP_ID \
--level ACCESS_LEVEL \
--organization ORG_ID
Dove:
-
GROUP_ID
è l'ID gruppo del gruppo di utenti creato in precedenza.Se non hai a disposizione l'ID gruppo, puoi recuperarlo chiamando il metodo
get
sulla risorsaGroups
. -
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. Se la proprietàaccess-context-manager/organization
non è stata impostata, sostituisciORG_ID
nel flag facoltativo--organization
con l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. -
POLICY_ID
è l'ID del criterio di accesso della tua organizzazione. -
ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
API
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. -
GROUP_ID
è l'ID gruppo del gruppo di utenti creato in precedenza.Se non hai a disposizione l'ID gruppo, puoi recuperarlo chiamando il metodo
get
sulla risorsaGroups
. -
POLICY_ID
è l'ID del criterio di accesso della tua organizzazione. -
ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
Metodo HTTP e URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Corpo JSON della richiesta:
{ "groupKey": "GROUP_ID", "accessLevels": [ "ACCESS_LEVEL" ], }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ] }
Crea un'associazione di accesso con configurazione di prova
Puoi creare un'associazione di accesso con configurazione di prova per comprendere l'impatto dei livelli di accesso nel tuo ambiente nei seguenti scenari:
- Per valutare l'impatto di un livello di accesso prima di applicarlo, crea un'associazione di accesso con un livello di accesso di prova.
- Per applicare un livello di accesso e valutare contemporaneamente l'impatto di un livello di accesso di prova, crea un'associazione di accesso con un livello di accesso attivo e con un livello di accesso di prova.
Un'associazione di accessi con un livello di accesso di prova non impedisce l'accesso, ma registra le violazioni del livello di accesso di prova. Per visualizzare i dettagli del log, consulta i log di rifiuto.
Crea un'associazione di accesso con livello di accesso di prova
gcloud
gcloud access-context-manager cloud-bindings create \
--group-key = GROUP_ID \
--dry-run-level = DRY_RUN_ACCESS_LEVEL \
--organization ORG_ID
Dove:
-
GROUP_ID
è l'ID gruppo del gruppo di utenti creato in precedenza.Se non hai a disposizione l'ID gruppo, puoi recuperarlo chiamando il metodo
get
sulla risorsaGroups
. -
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. Se la proprietàaccess-context-manager/organization
non è stata impostata, sostituisciORG_ID
nel flag facoltativo--organization
con l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. -
POLICY_ID
è l'ID del criterio di accesso della tua organizzazione. -
DRY_RUN_ACCESS_LEVEL
è l'elementoACCESS_LEVEL
per cui vuoi comprendere l'effetto.ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
API
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. -
GROUP_ID
è l'ID gruppo del gruppo di utenti creato in precedenza.Se non hai a disposizione l'ID gruppo, puoi recuperarlo chiamando il metodo
get
sulla risorsaGroups
. -
POLICY_ID
è l'ID del criterio di accesso della tua organizzazione. -
DRY_RUN_ACCESS_LEVEL
è l'elementoACCESS_LEVEL
per cui vuoi comprendere l'effetto.ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
Metodo HTTP e URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Corpo JSON della richiesta:
{ "groupKey": "GROUP_ID", "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Crea un'associazione di accesso con un livello di accesso e un livello di accesso di prova
gcloud
gcloud access-context-manager cloud-bindings create \
--group-key = GROUP_ID \
--level = ACCESS_LEVEL \
--dry-run-level = DRY_RUN_ACCESS_LEVEL \
--organization ORG_ID
Dove:
-
GROUP_ID
è l'ID gruppo del gruppo di utenti creato in precedenza.Se non hai a disposizione l'ID gruppo, puoi recuperarlo chiamando il metodo
get
sulla risorsaGroups
. -
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. Se la proprietàaccess-context-manager/organization
non è stata impostata, sostituisciORG_ID
nel flag facoltativo--organization
con l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. -
POLICY_ID
è l'ID del criterio di accesso della tua organizzazione. -
ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso. -
DRY_RUN_ACCESS_LEVEL
è l'elementoACCESS_LEVEL
per cui vuoi comprendere l'effetto.ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
API
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. -
GROUP_ID
è l'ID gruppo del gruppo di utenti creato in precedenza.Se non hai a disposizione l'ID gruppo, puoi recuperarlo chiamando il metodo
get
sulla risorsaGroups
. -
POLICY_ID
è l'ID del criterio di accesso della tua organizzazione. -
ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso. -
DRY_RUN_ACCESS_LEVEL
è l'elementoACCESS_LEVEL
per cui vuoi comprendere l'effetto.ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
Metodo HTTP e URL:
POST https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Corpo JSON della richiesta:
{ "groupKey": "GROUP_ID", "accessLevels": [ "ACCESS_LEVEL" ], "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"
PowerShell
Salva il corpo della richiesta in un file denominato request.json
ed esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand Content
Dovresti ricevere una risposta JSON simile alla seguente:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Visualizza i log di rifiuto
Dopo aver creato una configurazione di prova, puoi esaminare i log per identificare dove la configurazione di prova nega l'accesso.
Nella tabella seguente sono elencati i campi di log che puoi utilizzare per creare ed eseguire la query per ottenere i log:
Nome campo | Descrizione |
---|---|
protoPayload > authenticationInfo > principalEmail |
ID email dell'entità per cui viene negato l'accesso. |
protoPayload > metadata > deniedApplications |
Nome dell'applicazione per cui viene negato l'accesso. |
protoPayload > metadata > evaluationResult |
Il risultato della valutazione del criterio di accesso attivo. Valori possibili:
GRANTED o DENIED . |
protoPayload > metadata > appliedAccessLevels |
I livelli di accesso applicati richiesti dal criterio di accesso attivo. |
protoPayload > metadata > appliedDryRunAccessLevels |
I livelli di accesso applicati richiesti dal criterio di accesso di prova. |
protoPayload > metadata > dryRunEvaluationResult |
Il risultato della valutazione del criterio di accesso di prova, che indica l'azione prevista quando viene applicato il criterio di accesso.
Valori possibili:
GRANTED o DENIED . |
Per maggiori dettagli su come creare query per i log, consulta il linguaggio delle query di Logging.
Console
Nel menu di navigazione della console Google Cloud, fai clic su Logging, quindi su Esplora log.
Nel campo Query, inserisci un filtro di query come il seguente filtro e fai clic su Esegui query.
severity="ERROR" AND (protoPayload.metadata.evaluationResult=DENIED OR protoPayload.metadata.dryRunEvaluationResult=DENIED) AND protoPayload.metadata.@type="type.googleapis.com/google.cloud.audit.ContextAwareAccessAuditMetadata" AND protoPayload.metadata.deniedApplications.name="CLOUD_PLATFORM"
Visualizza i log in Risultati delle query.
gcloud
Per visualizzare i log utilizzando gcloud CLI, esegui un comando come questo:
gcloud logging read 'severity="ERROR" AND
(protoPayload.metadata.evaluationResult=DENIED OR protoPayload.metadata.dryRunEvaluationResult=DENIED) AND
protoPayload.metadata.@type="type.googleapis.com/google.cloud.audit.ContextAwareAccessAuditMetadata" AND
protoPayload.metadata.deniedApplications.name="CLOUD_PLATFORM"'
Gestisci associazioni di accessi
Dopo aver creato le associazioni di accesso per un gruppo di utenti, l'accesso alla console Google Cloud e alle API Google Cloud viene controllato in base al livello di accesso associato.
Puoi visualizzare i dettagli dell'associazione di accesso che hai creato, modificarla o eliminarla.
Visualizza associazioni di accessi
Console
Puoi visualizzare tutte le associazioni di accessi per l'organizzazione e visualizzare i dettagli di un'associazione di accessi.
gcloud
Per visualizzare tutte le associazioni di accesso, esegui questo comando:
gcloud access-context-manager cloud-bindings list \ --organization ORG_ID
Dove:
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. . Se la proprietàaccess-context-manager/organization
non è stata impostata, sostituisciORG_ID
nel flag facoltativo--organization
con l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
.Per visualizzare i dettagli di un'associazione di accesso, esegui questo comando:
gcloud access-context-manager cloud-bindings describe \ --binding=BINDING_ID
Dove:
BINDING_ID
è l'ID dell'associazione di accesso o l'identificatore completo per l'associazione di accesso.
API
Visualizza tutte le associazioni di accessi:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. Se la proprietàaccess-context-manager/organization
non è stata impostata, sostituisciORG_ID
nel flag facoltativo--organization
con l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
.
Metodo HTTP e URL:
GET https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings"PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/organizations/ORG_ID/gcpUserAccessBindings" | Select-Object -Expand ContentDovresti ricevere una risposta JSON simile alla seguente:
{ "name": string, "groupKey": string, "accessLevels": [ string ] "dryRunAccessLevels": [ string ] }
-
Visualizza i dettagli di un'associazione di accesso:
Metodo HTTP e URL:
GET https://accesscontextmanager.googleapis.com/v1/BINDING_ID
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Esegui questo comando:
curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/BINDING_ID"PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method GET `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/BINDING_ID" | Select-Object -Expand ContentDovresti ricevere una risposta JSON simile alla seguente:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
Aggiorna associazioni di accesso
Console
Puoi aggiornare un'associazione di accesso in base alle tue esigenze.
gcloud
Per aggiornare un'associazione di accesso, ad esempio per modificare il livello di accesso, esegui questo comando:
gcloud access-context-manager cloud-bindings update \ --binding ACCESS_BINDING \ --level ACCESS_LEVEL
Dove:
-
ACCESS_BINDING
è nel formatoorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. -
ORG_ID
è l'ID dell'organizzazione che hai utilizzato durante la creazione del ruoloGcpAccessAdmin
. -
ACCESS_BINDING_NAME
è la stringa univoca restituita per l'identificatorename
al momento della creazione dell'associazione di accesso. - Sostituisci il valore di ACCESS_LEVEL in base alle esigenze.
ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
-
Per aggiornare un'associazione di accesso con un livello di accesso di prova, esegui questo comando:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --dry-run-level=DRY_RUN_ACCESS_LEVEL
Sostituisci il valore di
DRY_RUN_ACCESS_LEVEL
in base alle esigenze. Il formato èaccessPolicies/
.POLICY_ID
/accessLevels/DRY_ACCESS_LEVEL_NAME
Per aggiornare un'associazione di accesso e modificare il livello di accesso e il livello di prova, esegui questo comando:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --level=`ACCESS_LEVEL` --dry-run-level=DRY_RUN_ACCESS_LEVEL
Sostituisci il valore di
ACCESS_LEVEL
eDRY_RUN_ACCESS_LEVEL
in base alle esigenze.ACCESS_LEVEL
eDRY_RUN_ACCESS_LEVEL
sono nel formatoaccessPolicies/
ePOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
DRY_RUN_ACCESS_LEVEL
è uguale aACCESS_LEVEL
.Per rimuovere un livello di accesso di prova da un'associazione di accesso, esegui questo comando:
gcloud access-context-manager cloud-bindings update --binding=ACCESS_BINDING --dry-run-level=
API
Aggiorna un'associazione di accesso, ad esempio per modificare il livello di accesso:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ACCESS_BINDING_NAME
è la stringa univoca restituita per l'identificatorename
al momento della creazione dell'associazione di accesso. -
ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
Metodo HTTP e URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels
Corpo JSON della richiesta:
{ "accessLevels": [ "ACCESS_LEVEL" ] }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Salva il corpo della richiesta in un file denominato
request.json
ed esegui questo comando:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels"PowerShell
Salva il corpo della richiesta in un file denominato
request.json
ed esegui questo comando:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels" | Select-Object -Expand ContentDovresti ricevere una risposta JSON simile alla seguente:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ] }
-
Aggiorna un'associazione di accesso con il livello di accesso di prova:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ACCESS_BINDING_NAME
è la stringa univoca restituita per l'identificatorename
al momento della creazione dell'associazione di accesso. -
DRY_RUN_ACCESS_LEVEL
è l'elementoACCESS_LEVEL
per cui vuoi comprendere l'effetto.ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
Metodo HTTP e URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels
Corpo JSON della richiesta:
{ "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Salva il corpo della richiesta in un file denominato
request.json
ed esegui questo comando:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels"PowerShell
Salva il corpo della richiesta in un file denominato
request.json
ed esegui questo comando:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels" | Select-Object -Expand ContentDovresti ricevere una risposta JSON simile alla seguente:
{ name: "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", group_key: "045jfvxd0ybeul8", dry_run_access_levels: [ "accessPolicies/305009197125/accessLevels/another" ] }
-
Aggiorna un'associazione di accesso e modifica il livello di accesso e il livello di prova:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ACCESS_BINDING_NAME
è la stringa univoca restituita per l'identificatorename
al momento della creazione dell'associazione di accesso. -
ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso. -
DRY_RUN_ACCESS_LEVEL
è l'elementoACCESS_LEVEL
per cui vuoi comprendere l'effetto.ACCESS_LEVEL
ha la formaaccessPolicies/
. I valori perPOLICY_ID
/accessLevels/ACCESS_LEVEL_NAME
POLICY_ID
eACCESS_LEVEL_NAME
sono disponibili in Gestore contesto accesso a partire dalla creazione del livello di accesso.
Metodo HTTP e URL:
PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels
Corpo JSON della richiesta:
{ "accessLevels": [ "ACCESS_LEVEL" ], "dryRunAccessLevels": [ "DRY_RUN_ACCESS_LEVEL" ] }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Salva il corpo della richiesta in un file denominato
request.json
ed esegui questo comando:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels"PowerShell
Salva il corpo della richiesta in un file denominato
request.json
ed esegui questo comando:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=access_levels,dry_run_access_levels" | Select-Object -Expand ContentDovresti ricevere una risposta JSON simile alla seguente:
{ "name": "organizations/427391306986/gcpUserAccessBindings/aAQS-YRSviv2hC12vZFUN3AZzvwa6KV2hJ89iMytB_nHUcT1l", "groupKey": "045jfvxd0ybeul8", "accessLevels": [ "accessPolicies/305009197125/accessLevels/device_lock" ], "dryRunAccessLevels": [ "accessPolicies/305009197125/accessLevels/another" ] }
-
Rimuovi un livello di accesso di prova da un'associazione di accesso:
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ACCESS_BINDING_NAME
è la stringa univoca restituita per l'identificatorename
al momento della creazione dell'associazione di accesso.
Metodo HTTP e URL:
PATCH PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels
Corpo JSON della richiesta:
{ "dryRunAccessLevels": [ ] }
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Salva il corpo della richiesta in un file denominato
request.json
ed esegui questo comando:curl -X PATCH \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels"PowerShell
Salva il corpo della richiesta in un file denominato
request.json
ed esegui questo comando:$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method PATCH `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "PATCH https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME?update_mask=dry_run_access_levels" | Select-Object -Expand ContentDovresti ricevere un codice di stato riuscito (2xx) e una risposta vuota.
-
Elimina associazioni di accesso
Console
Puoi eliminare un'associazione di accesso in qualsiasi momento.
gcloud
gcloud access-context-manager cloud-bindings delete \
--binding ACCESS_BINDING
Dove:
-
ACCESS_BINDING
è nel formatoorganizations/ORG_ID/gcpUserAccessBindings/ACCESS_BINDING_NAME
. -
ACCESS_BINDING_NAME
è la stringa univoca restituita per l'identificatorename
al momento della creazione dell'associazione di accesso.
API
Prima di utilizzare i dati della richiesta, effettua le seguenti sostituzioni:
-
ACCESS_BINDING_NAME
è la stringa univoca restituita per l'identificatorename
al momento della creazione dell'associazione di accesso.
Metodo HTTP e URL:
DELETE https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME
Per inviare la richiesta, scegli una delle seguenti opzioni:
arricciatura
Esegui questo comando:
curl -X DELETE \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME"
PowerShell
Esegui questo comando:
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method DELETE `
-Headers $headers `
-Uri "https://accesscontextmanager.googleapis.com/v1/ACCESS_BINDING_NAME" | Select-Object -Expand Content
Dovresti ricevere un codice di stato riuscito (2xx) e una risposta vuota.
Domande frequenti
Quanto tempo è necessario perché l'associazione degli accessi appena creata abbia effetto?
L'operazione potrebbe richiedere fino a 24 ore.
Che cosa succede se elimino un gruppo che ha un'associazione di accesso?
Il gruppo e l'associazione vengono eliminati e tutti gli utenti che ne fanno parte possono accedere.
Cosa succede se elimino il livello di accesso utilizzato in un'associazione di accesso?
Il livello di accesso non può mai essere soddisfatto e a tutti gli utenti del gruppo associato viene negato l'accesso.
Cosa succede quando un utente appartiene a più gruppi con associazioni di accesso?
Per ottenere l'accesso, l'utente deve soddisfare solo il livello di accesso di uno di questi gruppi.
Cosa succede agli utenti che non fanno parte della mia organizzazione?
Chiunque non faccia parte della tua organizzazione, anche se li hai aggiunti al gruppo di utenti che devono essere vincolati da restrizioni sensibili al contesto, non sono soggetti all'associazione di accesso.
Passaggi successivi
- Per saperne di più sul log di controllo per BeyondCorp Enterprise, consulta Audit logging.
- Per scoprire di più sull'audit logging in Gestore contesto accesso, incluso un riepilogo delle operazioni API registrate per le azioni di amministrazione, consulta Informazioni sugli audit log di Gestore contesto accesso.