Con Gestore contesto accesso, puoi eseguire aggiornamenti collettivi delle risorse che appartengono al criterio di accesso della tua organizzazione, ad esempio livelli di accesso e perimetri di servizio. Le modifiche alle risorse vengono applicate solo se tutte le parti dell'operazione collettiva sono andate a buon fine.
Questo argomento descrive solo la sostituzione collettiva dei perimetri di servizio. Per ulteriori informazioni sulla sostituzione collettiva dei livelli di accesso, consulta la documentazione di Gestore contesto accesso.
Prima di iniziare
Poiché le operazioni collettive interessano tutti i perimetri di servizio per la tua organizzazione, ti consigliamo di ottenere un elenco completo dei perimetri. L'elenco può essere formattato come YAML, il che potrebbe anche agevolare la modifica collettiva dei perimetri.
Per ottenere un elenco formattato dei livelli di accesso, consulta Elencare i perimetri di servizio (formattati).
Sostituzione in blocco dei perimetri di servizio
La sezione seguente descrive come sostituire i perimetri di servizio in blocco.
gcloud
Per sostituire collettivamente tutti i perimetri di servizio, utilizza il comando
replace-all
.
gcloud beta access-context-manager perimeters replace-all \ --source-file=FILE \ --etag=ETAG \ [--policy=POLICY_NAME]
Dove:
FILE è il nome di un file .yaml che definisce le nuove impostazioni per i perimetri di servizio esistenti.
Ad esempio:
- name: accessPolicies/11271009391/servicePerimeters/storage_perimeter title: Storage Perimeter description: Perimeter to protect Storage resources. perimeterType: PERIMETER_TYPE_REGULAR status: restrictedServices: - storage.googleapis.com - name: accessPolicies/11271009391/servicePerimeters/bigquery_perimeter title: BigQuery Perimeter description: Perimeter to protect BigQuery resources. perimeterType: PERIMETER_TYPE_REGULAR status: restrictedServices: - bigquery.googleapis.com
Per ulteriori informazioni sulla formattazione del file YAML, fai riferimento alla struttura JSON dell'oggetto
ServicePerimeterConfig
Gestore contesto accesso.ETAG (facoltativo) è una stringa che rappresenta la versione di destinazione del criterio di accesso della tua organizzazione. Se non includi un'etichetta, l'operazione collettiva ha come target l'ultima versione dei criteri di accesso della tua organizzazione.
Per ottenere l'etichetta più recente del criterio di accesso,
list
i criteri di accesso.POLICY_NAME è il nome dei criteri di accesso della tua organizzazione. Questo valore è obbligatorio solo se non hai impostato un criterio di accesso predefinito.
API
Per sostituire collettivamente tutti i perimetri di servizio,
chiama servicePerimeters.replaceAll
.
POST https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/servicePerimeters.replaceAll?alt=json
Dove:
- POLICY_NAME è il nome dei criteri di accesso della tua organizzazione.
Corpo della richiesta
Il corpo della richiesta deve includere un elenco di oggetti ServicePerimeterConfig
che specificano le modifiche da apportare.
Facoltativamente, per scegliere come target una versione specifica del criterio di accesso della tua organizzazione, puoi includere un'etichetta. Se non includi un'etichetta, l'operazione collettiva ha come target l'ultima versione dei criteri di accesso della tua organizzazione.
Ad esempio:
{ "servicePerimeters": [ object (ServicePerimeterConfig), object (ServicePerimeterConfig), ... ] "etag": string }
Corpo della risposta
In caso di esito positivo, il corpo della risposta per la chiamata contiene una risorsa Operation
che fornisce i dettagli sull'operazione di pubblicazione.
Esempio di risposta:
{
"name": "operations/accessPolicies/11271009391/replacePerimeters/1583523447707087",
"done": true,
"response": {
"@type": "type.googleapis.com/google.identity.accesscontextmanager.v1.ReplaceServicePerimetersResponse",
"servicePerimeters": [
{
"name": "accessPolicies/11271009391/servicePerimeters/storage_perimeter",
"title": "Storage Perimeter",
"description": "Perimeter to protect Storage resources.",
"status": {
"accessLevels": [
"accessPolicies/11271009391/accessLevels/corpnet_access"
],
"restrictedServices": [
"bigtable.googleapis.com"
]
}
},
{
"name": "accessPolicies/11271009391/servicePerimeters/storage_perimeter",
"title": "BigQuery Perimeter",
"description": "Perimeter to protect BigQuery resources.",
"status": {
"accessLevels": [
"accessPolicies/11271009391/accessLevels/prodnet_access"
],
"restrictedServices": [
"bigtable.googleapis.com"
]
}
}
]
}
}