Gestione dei livelli di accesso

Questa pagina descrive come gestire i livelli di accesso esistenti. Puoi:

Prima di iniziare

  • Imposta il criterio di accesso predefinito per l'utilizzo dello strumento a riga di comando gcloud.

    -o-

    Recupera il nome della norma. Il nome del criterio è obbligatorio per i comandi che utilizzano lo strumento a riga di comando gcloud ed eseguono chiamate API. Se imposti un criterio di accesso predefinito, non devi specificarlo per lo strumento a riga di comando gcloud.

  • Assicurati di disporre di un ruolo IAM (Identity and Access Management) nell'organizzazione che ti consente di gestire i livelli di accesso. Chiedi all'amministratore di concedere uno dei seguenti ruoli o un ruolo personalizzato con le stesse autorizzazioni:

Elenca i livelli di accesso

Console

Per elencare tutti i livelli di accesso, apri la pagina Gestore contesto accesso nella console Google Cloud e, se richiesto, seleziona la tua organizzazione. I livelli di accesso della tua organizzazione vengono visualizzati in una griglia nella pagina, inclusi i dettagli sulla configurazione di ciascun livello di accesso.

Apri la pagina Gestore contesto accesso

gcloud

Per elencare tutti i livelli di accesso, utilizza il comando list.

gcloud access-context-manager levels list \
  [--policy=POLICY_NAME]

Dove:

  • POLICY_NAME è il nome del criterio di accesso della tua organizzazione. Questo valore è obbligatorio solo se non hai impostato criterio di accesso predefinito.

L'output sarà simile al seguente:

NAME             TITLE                  LEVEL_TYPE
Device_Trust     Device_Trust Extended  Basic
Service_Group_A  Service_Group_A        Basic

API

Per elencare tutti i livelli di accesso per un criterio, richiama accessLevels.list

GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels

Dove:

  • POLICY_NAME è il nome del criterio di accesso della tua organizzazione.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Parametri facoltativi

Facoltativamente, includi uno o più dei seguenti parametri di ricerca.

Parametri
pageSize

number

Per impostazione predefinita, l'elenco dei livelli di accesso restituito da accessLevels.list è suddiviso in pagine. Ogni pagina è limitata a 100 livelli di accesso.

Puoi utilizzare questo parametro per modificare il numero di livelli di accesso restituiti per pagina.

pageToken

string

Se il numero di livelli di accesso restituiti dalla chiamata ha superato il numero di pagine, il corpo della risposta includerà un token pagina.

Puoi utilizzare questo parametro in una chiamata successiva per ottenere la pagina successiva dei risultati.

accessLevelFormat

enum(LevelFormat)

In genere, i livelli di accesso vengono restituiti come definiti, come BasicLevel o CustomLevel.

Puoi specificare il valore CEL di questo parametro per restituisce BasicLevels come CustomLevels in Common Expression Language in Cloud.

Corpo della risposta

In caso di esito positivo, il corpo della risposta per la chiamata contiene un oggetto AccessLevels che elenca i livelli di accesso e una stringa nextPageToken. Solo nextPageToken ha un valore se il numero di livelli di accesso restituiti supera il dimensioni della pagina. In caso contrario, nextPageToken viene restituito come stringa vuota.

Elenca i livelli di accesso (formattati)

Utilizzando lo strumento a riga di comando gcloud puoi ottenere un elenco dei tuoi livelli di accesso in YAML o JSON formato.

Per ottenere un elenco formattato dei livelli di accesso, utilizza il comando list.

gcloud access-context-manager levels list \
  --format=FORMAT \
  [--policy=POLICY_NAME]

Dove:

  • FORMAT è uno dei seguenti valori:

    • list (formato YAML)

    • json (formato JSON)

  • POLICY_NAME è il nome del criterio di accesso della tua organizzazione. Questo valore è obbligatorio solo se non hai impostato un criterio di accesso predefinito.

L'output YAML sarà simile a questo:

- basic: {'conditions': [{'ipSubnetworks': ['8.8.0/24']}]}
  description: Level for corp access.
  name: accessPolicies/165717541651/accessLevels/corp_level
  title: Corp Level
- basic: {'combiningFunction': 'OR', 'conditions': [{'ipSubnetworks': ['8.8.0/24']}]}
  description: Level for net access.
  name: accessPolicies/165717541651/accessLevels/net_level
  title: Net Level

L'output JSON sarà simile a questo:

[
  {
    "basic": {
      "conditions": [
        {
          "ipSubnetworks": [
            "8.8.0/24"
          ]
        }
      ]
    },
    "description": "Level for corp access.",
    "name": "accessPolicies/165717541651/accessLevels/corp_level",
    "title": "Corp Level"
  },
  {
    "basic": {
      "combiningFunction": "OR",
      "conditions": [
        {
          "ipSubnetworks": [
            "8.8.0/24"
          ]
        }
      ]
    },
    "description": "Level for net access.",
    "name": "accessPolicies/165717541651/accessLevels/net_level",
    "title": "Net Level"
  }
]

Descrivi un livello di accesso

Console

Utilizzando la console Google Cloud, consulta i passaggi elencare i livelli di accesso. Quando elenchi i livelli di accesso, i dettagli vengono forniti nella griglia visualizzata.

gcloud

L'elenco dei livelli di accesso fornisce solo il nome, il titolo e il tipo di livello. Per ottenere informazioni dettagliate su cosa fa effettivamente un livello, utilizza il comando describe.

gcloud access-context-manager levels describe LEVEL_NAME \
    [--policy=POLICY_NAME]

Dove:

  • LEVEL_NAME è il nome del livello di accesso che vuoi descrivere.

  • POLICY_NAME è il nome del criterio di accesso della tua organizzazione. Questo valore è obbligatorio solo se non hai impostato criterio di accesso predefinito.

Il comando stamperà le informazioni sul livello formattato come YAML. Ad esempio, se il livello ha limitato l'accesso a determinate versioni del sistema operativo, l'output potrebbe avere il seguente aspetto:

basic:
  conditions:
  - devicePolicy:
      allowedEncryptionStatuses:
      - ENCRYPTED
      osConstraints:
      - minimumVersion: 10.13.6
        osType: DESKTOP_MAC
      - minimumVersion: 10.0.18219
        osType: DESKTOP_WINDOWS
      - minimumVersion: 68.0.3440
        osType: DESKTOP_CHROME_OS
      requireScreenlock: true
name: accessPolicies/330193482019/accessLevels/Device_Trust
title: Device_Trust Extended

API

L'elenco dei livelli di accesso fornisce solo il nome, il titolo e il tipo dei livelli. Per informazioni dettagliate su un livello di accesso, chiama accessLevels.get.

GET https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME

Dove:

  • POLICY_NAME è il nome del criterio di accesso della tua organizzazione.

  • LEVEL_NAME è il nome del livello di accesso che vuoi a descrivere.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Parametri facoltativi

Se vuoi, includi la accessLevelFormat parametro di query. Normalmente, i livelli di accesso vengono restituiti così come sono definiti, come BasicLevel o CustomLevel.

Puoi specificare il valore CEL affinché questo parametro restituisca BasicLevels come CustomLevels in Cloud Common Expression Language.

Corpo della risposta

In caso di esito positivo, il corpo della risposta per la chiamata contiene una AccessLevel risorsa che include dettagli su la funzione del livello di accesso, l'ultima volta che è stato aggiornato e altro ancora.

Aggiornare un livello di accesso

Questa sezione descrive come aggiornare i singoli livelli di accesso. Per aggiornare tutti i livelli di accesso della tua organizzazione in un'unica operazione, consulta Apportare modifiche collettive ai livelli di accesso.

Console

Per aggiornare un livello di accesso:

  1. Apri la pagina Gestore contesto accesso nella console Google Cloud.

    Apri la pagina Gestore contesto accesso

  2. Se ti viene chiesto, seleziona la tua organizzazione.

  3. Nella griglia, fai clic sul nome del livello di accesso che vuoi aggiornare.

  4. Nel riquadro Modifica livello di accesso, apporta le modifiche al livello di accesso.

    Per un elenco completo degli attributi che puoi aggiungere o modificare, consulta gli attributi dei livelli di accesso.

  5. Fai clic su Salva.

    Oltre ad aggiornare o rimuovere le condizioni esistenti, puoi aggiungere nuove condizioni e nuovi attributi alle condizioni esistenti.

gcloud

Utilizza il comando update per aggiornare un livello di accesso.

Livello di accesso di base:

gcloud access-context-manager levels update LEVEL_NAME \
    --basic-level-spec=FILE \
    [--policy=POLICY_NAME]

Livello di accesso personalizzato:

gcloud access-context-manager levels update LEVEL_NAME \
    --custom-level-spec=FILE \
    [--policy=POLICY_NAME]

Dove:

  • LEVEL_NAME è il nome del livello di accesso che vuoi aggiornamento.

  • FILE è il nome di un file .yaml che definisce le condizioni per il livello di accesso (per i livelli di accesso di base) oppure un'espressione CEL che si risolve in un singolo valore booleano (per livelli di accesso personalizzati).

    Per un elenco completo degli attributi che puoi utilizzare nel tuo condizioni del livello di accesso, scopri di più sugli attributi del livello di accesso.

  • POLICY_NAME è il nome del criterio di accesso della tua organizzazione. Questo valore è obbligatorio solo se non hai impostato un criterio di accesso predefinito.

  • Puoi includere una o più delle seguenti opzioni.

    Opzioni
    combine-function

    Questa opzione viene utilizzata solo per i livelli di accesso di base.

    Determina in che modo vengono combinate le condizioni.

    Valori validi: AND, OR

    description

    Una descrizione dettagliata del livello di accesso.

    title

    Un breve titolo per il livello di accesso. Il titolo del livello di accesso viene visualizzato nella console Google Cloud.

    Puoi includere uno qualsiasi dei flag a livello di gcloud.

Comando di esempio

gcloud access-context-manager levels update Device_Trust \
    --basic-level-spec=corpdevspec.yaml \
    --combine-function=OR \
    --description='Access level that conforms to updated corporate spec.' \
    --title='Device_Trust Extended' \
    --policy=1034095178592

API

Per aggiornare un livello di accesso, chiama accessLevels.patch.

PATCH https://accesscontextmanager.googleapis.com/v1/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME?updateMask=FIELDS

Dove:

  • POLICY_NAME è il nome del criterio di accesso della tua organizzazione.

  • LEVEL_NAME è il nome del livello di accesso che vuoi descrivere.

  • FIELDS è un elenco separato da virgole di nomi di campo completi che stai aggiornando.

Corpo della richiesta

Il corpo della richiesta deve includere un elemento AccessLevel risorsa che specifica le modifiche da apportare al livello di accesso.

Corpo della risposta

In caso di esito positivo, il corpo della risposta della chiamata contiene una risorsa Operation che fornisce dettagli sull'operazione di patch.

Eliminare un livello di accesso

Console

Per eliminare un livello di accesso:

  1. Apri la pagina Gestore contesto accesso nella console Google Cloud.

    Apri la pagina Gestore contesto accesso

  2. Se richiesto, seleziona la tua organizzazione.

  3. Nella griglia, nella riga relativa al livello di accesso che vuoi eliminare, fai clic sul pulsante .

  4. Fai clic su Elimina.

  5. Nella finestra di dialogo visualizzata, conferma di voler eliminare il livello di accesso.

gcloud

Per eliminare un livello di accesso:

  1. Utilizza il comando delete per eliminare un livello di accesso.

    gcloud access-context-manager levels delete LEVEL_NAME \
        [--policy=POLICY_NAME]

    Dove:

    • LEVEL_NAME è il nome del livello di accesso che vuoi eliminare.

    • POLICY_NAME è il nome del dominio criterio di accesso. Questo valore è obbligatorio solo se non hai impostato criterio di accesso predefinito.

  2. Conferma di voler eliminare il livello di accesso.

    Ad esempio:

    You are about to delete level Device_Trust
    
    Do you want to continue (Y/n)?
    
    
    You should see output similar to the following:
    
    
    Waiting for operation [accessPolicies/330193482019/accessLevels/Device_Trust/delete/1531171874311645] to complete...done.
    Deleted level [Device_Trust].
    

API

Per eliminare un livello di accesso, chiama accessLevels.delete.

DELETE https://accesscontextmanager.googleapis.com/v1alpha/accessPolicies/POLICY_NAME/accessLevels/LEVEL_NAME

Dove:

  • POLICY_NAME è il nome del criterio di accesso della tua organizzazione.

  • LEVEL_NAME è il nome del livello di accesso che vuoi a descrivere.

Corpo della richiesta

Il corpo della richiesta deve essere vuoto.

Corpo della risposta

In caso di esito positivo, il corpo della risposta della chiamata contiene una risorsa Operation che fornisce dettagli sull'operazione di eliminazione.