Rimuovere le policy sul confine di accesso dell'entità

Le policy sul confine di accesso dell'entità (PAB) ti consentono di limitare le risorse a cui un set di entità può accedere. Se non vuoi più che un criterio di Principal Access Boundary venga applicato a un insieme di entità, puoi eliminare l'associazione del criterio che lo lega all'insieme di entità. Se vuoi rimuovere una policy sul confine di accesso dell'entità da tutti i set di entità a cui è associata, puoi eliminare la policy.

La rimozione di una policy sul confine di accesso dell'entità da un insieme di entità ha uno dei seguenti effetti:

  • Se le entità nell'insieme di entità non sono soggette ad altre policy sul confine di accesso dell'entità, potranno accedere a tutte le risorseGoogle Cloud .
  • Se le entità nel set di entità sono soggette ad altre policy sul confine di accesso dell'entità, potranno accedere solo alle risorse in queste policy.

Prima di iniziare

  • Configurare l'autenticazione.

    Seleziona la scheda relativa a come prevedi di utilizzare gli esempi in questa pagina:

    gcloud

    Nella console Google Cloud , attiva Cloud Shell.

    Attiva Cloud Shell

    Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.

    REST

    Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.

      Installa Google Cloud CLI.

      Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

    Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .

  • Leggi la panoramica delle policy sul confine di accesso dell'entità.

Ruoli richiesti per eliminare le policy sul confine di accesso dell'entità

Per ottenere l'autorizzazione necessaria per eliminare le policy sul confine di accesso dell'entità, chiedi all'amministratore di concederti il ruolo IAM Principal Access Boundary Admin (roles/iam.principalAccessBoundaryAdmin) nella tua organizzazione. Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questo ruolo predefinito contiene l'autorizzazione iam.principalaccessboundarypolicies.delete necessaria per eliminare le policy del confine di accesso dell'entità.

Potresti anche ottenere questa autorizzazione con ruoli personalizzati o altri ruoli predefiniti.

Ruoli richiesti per eliminare le associazioni delle policy sul confine di accesso dell'entità

Le autorizzazioni necessarie per eliminare le associazioni di policy per le policy sul confine di accesso dell'entità dipendono dal set di entità associato alla policy.

Per ottenere le autorizzazioni necessarie per eliminare le associazioni di policy per le policy di Principal Access Boundary, chiedi all'amministratore di concederti i seguenti ruoli IAM:

  • Confine di accesso dell'entità Utente (roles/iam.principalAccessBoundaryUser) nella tua organizzazione
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate ai pool di identità della forza lavoro: Amministratore pool di forza lavoro IAM (roles/iam.workforcePoolAdmin) sul pool di identità della forza lavoro di destinazione
  • Elimina i binding dei criteri per i criteri Principal Access Boundary associati ai pool di identità del workload: Amministratore pool Workload Identity IAM (roles/iam.workloadIdentityPoolAdmin) sul progetto proprietario del pool di identità del workload di destinazione
  • Ottieni lo stato di un'operazione a lunga esecuzione per l'eliminazione di un'associazione che fa riferimento a un pool di identità del workload: Visualizzatore operazioni IAM (roles/iam.operationViewer) sul progetto proprietario del pool di identità del workload di destinazione
  • Elimina i binding delle policy per le policy Principal Access Boundary associate a un dominio Google Workspace: Workspace Pool IAM Admin (roles/iam.workspacePoolAdmin) nell'organizzazione
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate al set di entità di un progetto: Project IAM Admin (roles/resourcemanager.projectIamAdmin) sul progetto
  • Ottieni lo stato di un'operazione a lunga esecuzione per l'eliminazione di un binding che fa riferimento a un insieme di entità del progetto: Visualizzatore operazioni IAM (roles/iam.operationViewer) sul progetto
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate a un insieme di entità di una cartella: Amministratore IAM cartella (roles/resourcemanager.folderIamAdmin) nella cartella
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate al set di entità di un'organizzazione: Amministratore dell'organizzazione (roles/resourcemanager.organizationAdmin) sull'organizzazione

Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.

Questi ruoli predefiniti contengono le autorizzazioni necessarie per eliminare i binding delle policy per le policy del confine di accesso dell'entità. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per eliminare le associazioni delle policy per le policy sul confine di accesso dell'entità sono necessarie le seguenti autorizzazioni:

  • iam.principalaccessboundarypolicies.unbind sull'organizzazione
  • Elimina le associazioni policy per le policy sul confine di accesso dell'entità associate ai pool di identità della forza lavoro: iam.workforcePools.deletePolicyBinding nel pool di identità della forza lavoro di destinazione
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate ai pool di identità del workload: iam.workloadIdentityPools.deletePolicyBinding nel progetto proprietario del pool di identità del workload di destinazione
  • Recupera lo stato di un'operazione a lunga esecuzione per eliminare un binding che fa riferimento a un pool di identità del workload: iam.operations.get nel progetto proprietario del pool di identità del workload di destinazione
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate a un dominio Google Workspace: iam.workspacePools.deletePolicyBinding nell'organizzazione
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate al set di entità di un progetto: resourcemanager.projects.deletePolicyBinding nel progetto
  • Ottieni lo stato di un'operazione a lunga esecuzione per l'eliminazione di un binding che fa riferimento al set di entità di un progetto: iam.operations.get sul progetto
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate a un insieme di entità di una cartella: resourcemanager.folders.deletePolicyBinding nella cartella
  • Elimina le associazioni di policy per le policy sul confine di accesso dell'entità associate al set di entità di un'organizzazione: resourcemanager.organizations.deletePolicyBinding nell'organizzazione

Potresti anche ottenere queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Preparati a rimuovere una policy sul confine di accesso dell'entità

Prima di rimuovere una policy sul confine di accesso dell'entità, decidi quale dei seguenti obiettivi vuoi raggiungere:

  • Rendere le entità di un insieme di entità idonee ad accedere a tutte le risorse
  • Ridurre il numero di risorse a cui possono accedere le entità in un insieme di entità

Le sezioni seguenti descrivono i passaggi da seguire per raggiungere ciascuno di questi obiettivi.

Rendere le entità idonee ad accedere a tutte le risorse

Se vuoi rendere le entità di un insieme di entità idonee ad accedere a tutte le risorse, procedi nel seguente modo:

  1. Identifica tutte le policy sul confine di accesso dell'entità associate al set di entità.
  2. Rimuovi tutte le policy sul confine di accesso dell'entità associate al set di entità eliminando le associazioni delle policy pertinenti.

Se un'entità non è soggetta ad alcuna policy sul confine di accesso dell'entità, può accedere a tutte le risorse Google Cloud .

L'idoneità all'accesso a una risorsa non significa necessariamente che un utente sia in grado di accedere a una risorsa. Per saperne di più, consulta Valutazione delle policy.

Ridurre le risorse a cui le entità possono accedere

Se le entità in un insieme di entità sono soggette a più policy sul confine di accesso dell'entità, puoi ridurre il numero di risorse a cui le entità possono accedere rimuovendo una o più policy sul confine di accesso dell'entità a cui sono soggette. Tuttavia, non rimuovere in nessun momento tutte le policy sul confine di accesso dell'entità a cui sono soggette le entità. In caso contrario, le entità potranno accedere a tutte le risorse Google Cloud .

Per rimuovere una policy sul confine di accesso dell'entità assicurandoti che le entità in un insieme di entità siano sempre soggette ad almeno una policy sul confine di accesso dell'entità, segui questi passaggi:

  1. Identifica tutte le policy sul confine di accesso dell'entità associate al set di entità.
  2. Identifica le policy sul confine di accesso dell'entità che contengono solo le risorse a cui vuoi che le entità nel set di entità possano accedere. Questi sono i criteri che non rimuoverai dal set di entità.

    Se non hai queste policy, crea una nuova policy sul confine di accesso dell'entità con solo le risorse a cui vuoi che le entità possano accedere. Quindi, allega il criterio al set di entità.

  3. Identifica le policy sul confine di accesso dell'entità che contengono risorse a cui non vuoi che le entità nel set di entità possano accedere. Poi, rimuovi queste policy sul confine di accesso dell'entità eliminando l'associazione della policy pertinente.

    Se vuoi ridurre l'accesso per entità specifiche, aggiungi una condizione al binding della policy anziché eliminarlo.

Se vuoi ridurre il numero di risorse a cui un'entità può accedere, ma non vuoi rimuovere le policy sul confine di accesso dell'entità, puoi modificare le policy sul confine di accesso dell'entità a cui è soggetta. Per scoprire come modificare le policy sul confine di accesso dell'entità, consulta Modificare le policy sul confine di accesso dell'entità.

Testa l'eliminazione di una policy o di un'associazione del confine di accesso dell'entità

Prima di eliminare un'associazione o una policy di Principal Access Boundary, ti consigliamo di testare in che modo la modifica potrebbe influire sull'accesso delle tue entità. Puoi utilizzare Policy Simulator per simulare un'eliminazione e comprendere il potenziale impatto.

Per testare un'eliminazione, consulta le seguenti procedure nella documentazione di Policy Intelligence:

Per scoprire di più sul test delle policy sul confine di accesso dell'entità con Policy Simulator, consulta Policy Simulator per le policy sul confine di accesso dell'entità.

Rimuovere una policy sul confine di accesso dell'entità da un insieme di entità

Prima di rimuovere una policy sul confine di accesso dell'entità da un insieme di entità, devi prima prepararti per la rimozione della policy. Poi rimuovi la policy eliminando l'associazione policy che la associa al set di entità.

Puoi eliminare un binding dei criteri utilizzando la console Google Cloud , gcloud CLI o l'API REST IAM.

Console

  1. Nella console Google Cloud , vai alla pagina Policy di Principal Access Boundary.

    Vai alle policy di Principal Access Boundary

  2. Seleziona l'organizzazione proprietaria del criterio sul confine di accesso dell'entità la cui associazione vuoi eliminare.

  3. Fai clic sull'ID policy della policy sul confine di accesso dell'entità di cui vuoi eliminare le associazioni.

  4. Fai clic sulla scheda Binding.

  5. Trova l'ID del binding che vuoi eliminare. Nella riga dell'associazione, fai clic su Azioni e poi su Elimina associazione.

  6. Nella finestra di dialogo di conferma, fai clic su Elimina.

gcloud

Il comando gcloud iam policy-bindings delete elimina un'associazione di policy.

Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

  • BINDING_ID: l'ID del binding della policy che vuoi eliminare, ad esempio example-binding.
  • RESOURCE_TYPE: il tipo di risorsa Resource Manager (progetto, cartella o organizzazione) di cui il binding dei criteri è figlio. Utilizza il valore project, folder o organization

    Il tipo di risorsa dipende dall'entità impostata nell'associazione di policy. Per scoprire quale tipo di risorsa utilizzare, consulta Tipi di entità supportati.

  • RESOURCE_ID: L'ID del progetto, della cartella o dell'organizzazione di cui è figlio il binding dei criteri. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

Esegui questo comando:

Linux, macOS o Cloud Shell

gcloud iam policy-bindings delete BINDING_ID \
    --RESOURCE_TYPE=RESOURCE_ID --location=global

Windows (PowerShell)

gcloud iam policy-bindings delete BINDING_ID `
    --RESOURCE_TYPE=RESOURCE_ID --location=global

Windows (cmd.exe)

gcloud iam policy-bindings delete BINDING_ID ^
    --RESOURCE_TYPE=RESOURCE_ID --location=global

La risposta contiene un'operazione a lunga esecuzione che rappresenta la tua richiesta. Per scoprire come ottenere lo stato di un'operazione a lunga esecuzione, consulta Controllare lo stato di un'operazione a lunga esecuzione in questa pagina.

Delete request issued for: [example-binding]
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374724030-6181fcd1520c5-d21b0a12-b704e1ce] to complete...done.
Deleted policyBinding [example-binding].

REST

Il metodo policyBindings.delete elimina un'associazione di policy.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • RESOURCE_TYPE: il tipo di risorsa Resource Manager (progetto, cartella o organizzazione) di cui il binding dei criteri è figlio. Utilizza il valore projects, folders o organizations

    Il tipo di risorsa dipende dall'entità impostata nell'associazione di policy. Per scoprire quale tipo di risorsa utilizzare, consulta Tipi di entità supportati.

  • RESOURCE_ID: L'ID del progetto, della cartella o dell'organizzazione di cui è figlio il binding dei criteri. Gli ID progetto sono stringhe alfanumeriche, come my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • BINDING_ID: l'ID del binding della policy che vuoi eliminare, ad esempio example-binding.

Metodo HTTP e URL:

DELETE https://iam.googleapis.com/v3/RESOURCE_TYPE/RESOURCE_ID/locations/global/policyBindings/BINDING_ID

Per inviare la richiesta, espandi una di queste opzioni:

La risposta contiene un'operazione a lunga esecuzione che rappresenta la tua richiesta. Per scoprire come ottenere lo stato di un'operazione a lunga esecuzione, consulta Controllare lo stato di un'operazione a lunga esecuzione in questa pagina.

{
  "name": "organizations/123456789012/locations/global/operations/operation-1715373190994-6181f71b4daad-6d8168c1-13cc6600",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-05-10T20:33:11.165728913Z",
    "target": "organizations/123456789012/locations/global/policyBindings/example-binding",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": false
}

Elimina una policy sul confine di accesso dell'entità

Prima di eliminare una policy sul confine di accesso dell'entità, ti consigliamo di identificare ed eliminare tutte le associazioni di policy sul confine di accesso dell'entità che fanno riferimento alla policy sul confine di accesso dell'entità.

Se elimini una policy sul confine di accesso dell'entità con associazioni di policy esistenti, queste associazioni verranno eliminate. Tuttavia, finché non vengono eliminati, i binding delle norme vengono comunque conteggiati ai fini del limite di 10 binding che possono fare riferimento a un singolo insieme di entità.

Puoi eliminare una policy Principal Access Boundary utilizzando la console Google Cloud , gcloud CLI o l'API REST IAM.

Console

  1. Nella console Google Cloud , vai alla pagina Policy di Principal Access Boundary.

    Vai alle policy di Principal Access Boundary

  2. Seleziona l'organizzazione proprietaria del criterio sul confine di accesso dell'entità la cui associazione vuoi eliminare.

  3. Trova l'ID della norma che vuoi eliminare. Nella riga del criterio, fai clic su Azioni, poi su Elimina criterio.

  4. Nella finestra di dialogo di conferma, conferma che vuoi eliminare la norma:

    • Per eliminare la policy solo se non ha associazioni, fai clic su Elimina.
    • Per eliminare la policy e tutte le relative associazioni, seleziona la casella di controllo Elimina la policy in modo forzato, quindi fai clic su Elimina.

gcloud

Il comando gcloud iam gcloud iam principal-access-boundary-policies delete elimina un criterio di Principal Access Boundary e tutte le associazioni correlate.

Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

  • PAB_POLICY_ID: l'ID della policy Principal Access Boundary che vuoi eliminare, ad esempio example-policy.
  • ORG_ID: l'ID dell'organizzazione proprietaria della policy del perimetro di accesso dei principal. Gli ID organizzazione sono numerici, ad esempio 123456789012.
  • FORCE_FLAG: Facoltativo. Per forzare l'eliminazione di una policy, anche se viene fatta riferimento in binding delle policy esistenti, utilizza il flag --force. Se questo flag non è impostato e il criterio viene fatto riferimento in binding dei criteri esistenti, il comando non va a buon fine.

Esegui questo comando:

Linux, macOS o Cloud Shell

gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID \
    --organization=ORG_ID --location=global FORCE_FLAG

Windows (PowerShell)

gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID `
    --organization=ORG_ID --location=global FORCE_FLAG

Windows (cmd.exe)

gcloud iam principal-access-boundary-policies delete PAB_POLICY_ID ^
    --organization=ORG_ID --location=global FORCE_FLAG

La risposta contiene un'operazione a lunga esecuzione che rappresenta la tua richiesta. Per scoprire come ottenere lo stato di un'operazione a lunga esecuzione, consulta Controllare lo stato di un'operazione a lunga esecuzione in questa pagina.

Delete request issued for: [example-policy]
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374811191-6181fd2471ab4-f0947406-85778c43] to complete...
Waiting for operation [organizations/123456789012/locations/global/operations/operation-1715374811191-6181fd2471ab4-f0947406-85778c43] to complete...done.
Deleted principalAccessBoundaryPolicy [example-policy].

REST

Il metodo principalAccessBoundaryPolicies.delete elimina una policy sul confine di accesso dell'entità e tutte le associazioni correlate.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • ORG_ID: l'ID dell'organizzazione proprietaria della policy del perimetro di accesso dei principal. Gli ID organizzazione sono numerici, ad esempio 123456789012.
  • PAB_POLICY_ID: l'ID della policy Principal Access Boundary che vuoi eliminare, ad esempio example-policy.
  • FORCE_DELETE: (Facoltativo) Per forzare la richiesta di eliminazione del criterio, anche se il criterio viene fatto riferimento nelle associazioni di criteri esistenti, aggiungi il parametro di query force=true. Se questo parametro di query non è impostato e viene fatto riferimento al criterio nei binding dei criteri esistenti, la richiesta non va a buon fine.

Metodo HTTP e URL:

DELETE https://iam.googleapis.com/v3/organizations/ORG_ID/locations/global/principalAccessBoundaryPolicies/PAB_POLICY_ID?FORCE_DELETE

Per inviare la richiesta, espandi una di queste opzioni:

La risposta contiene un'operazione a lunga esecuzione che rappresenta la tua richiesta. Per scoprire come ottenere lo stato di un'operazione a lunga esecuzione, consulta Controllare lo stato di un'operazione a lunga esecuzione in questa pagina.

{
  "name": "organizations/123456789012/locations/global/operations/operation-1715373190994-6181f71b4daad-6d8168c1-13cc6600",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-05-10T20:33:11.165728913Z",
    "target": "organizations/123456789012/locations/global/policyBindings/example-policy",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": false
}

Controllare lo stato di un'operazione a lunga esecuzione

Quando utilizzi l'API REST o le librerie client, qualsiasi metodo che modifichi un binding o un criterio di Principal Access Boundary restituisce un'operazione a lunga esecuzione (LRO). L'operazione a lunga esecuzione monitora lo stato della richiesta e indica se la modifica alla policy o all'associazione è stata completata.

REST

Il metodo operations.get restituisce lo stato di un'operazione a lunga esecuzione.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • OPERATION_NAME: il nome completo dell'operazione. Ricevi questo nome nella risposta alla tua richiesta originale.

    Il nome dell'operazione ha il seguente formato:

          RESOURCE_TYPE/RESOURCE_ID/locations/global/operations/OPERATION_ID
        

Metodo HTTP e URL:

GET https://iam.googleapis.com/v3/OPERATION_NAME

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "organizations/314340013352/locations/global/operations/operation-1732752311821-627edd607a3df-9a62cdea-2a7d9f07",
  "metadata": {
    "@type": "type.googleapis.com/google.iam.v3.OperationMetadata",
    "createTime": "2024-11-28T00:05:12.006289686Z",
    "endTime": "2024-11-28T00:05:12.192141801Z",
    "target": "organizations/314340013352/locations/global/principalAccessBoundaryPolicies/example-policy",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v3"
  },
  "done": true,
  "response": {
    PAB_POLICY
  }
}

Se il campo done dell'operazione non è presente, continua a monitorarne lo stato recuperando ripetutamente l'operazione. Utilizza il backoff esponenziale troncato per introdurre un ritardo tra una richiesta e l'altra. Quando il campo done è impostato su true, l'operazione è completata e puoi interrompere la ricezione dell'operazione.

Passaggi successivi