Rimuovere i criteri di Principal Access Boundary

I criteri di Principal Access Boundary (PAB) ti consentono di limitare le risorse a cui un insieme di entità può accedere. Se non vuoi più che un criterio di Principal Access Boundary venga applicato a un set di entità, puoi eliminare l'associazione del criterio che lo lega al set di entità. Se vuoi rimuovere un criterio di Principal Access Boundary da tutti i set di entità a cui è associato, puoi eliminarlo.

La rimozione di una policy di Principal Access Boundary da un insieme di entità ha uno dei seguenti effetti:

  • Se le entità nell'insieme di entità non sono soggette ad altri criteri di Principal Access Boundary, potranno accedere a tutte le risorseGoogle Cloud .
  • Se le entità nel set di entità sono soggette ad altre policy di Principal Access Boundary, potranno accedere solo alle risorse in queste policy.

Prima di iniziare

  • Configurare l'autenticazione.

    Select the tab for how you plan to use the samples on this page:

    gcloud

      In the Google Cloud console, activate Cloud Shell.

      Activate Cloud Shell

      At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

      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.

        After installing the Google Cloud CLI, initialize it by running the following command:

        gcloud init

        If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.

      Per saperne di più, consulta la sezione Autenticarsi per l'utilizzo di REST nella documentazione sull'autenticazione di Google Cloud .

    1. Leggi la panoramica delle policy di Principal Access Boundary.

Ruoli richiesti per eliminare le policy di Principal Access Boundary

Per ottenere l'autorizzazione necessaria per eliminare i criteri dei limiti di accesso all'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 i criteri dei limiti di accesso all'entità.

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

Ruoli richiesti per eliminare le associazioni delle policy di Principal Access Boundary

Le autorizzazioni necessarie per eliminare le associazioni dei criteri per i criteri di Principal Access Boundary dipendono dal set di entità associato ai criteri.

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

  • Principal Access Boundary User (roles/iam.principalAccessBoundaryUser) nella tua organizzazione
  • Elimina i binding dei criteri per le policy di Principal Access Boundary associate ai pool di identità della forza lavoro: IAM Workforce Pool Admin (roles/iam.workforcePoolAdmin) sul pool di identità della forza lavoro di destinazione
  • Elimina i binding dei criteri per le policy di Principal Access Boundary associate ai pool Workload Identity: Amministratore pool Workload Identity IAM (roles/iam.workloadIdentityPoolAdmin) sul progetto proprietario del pool Workload Identity di destinazione
  • Ottieni lo stato di unoperazione a lunga esecuzione per l'eliminazione di un binding 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 di 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 di Principal Access Boundary associate al set di entità di un progetto: Amministratore IAM progetto (roles/resourcemanager.projectIamAdmin) nel 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 dei criteri per le policy di Principal Access Boundary associate al set di entità di una cartella: Amministratore IAM cartella (roles/resourcemanager.folderIamAdmin) nella cartella
  • Elimina le associazioni di policy per le policy di Principal Access Boundary 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 le associazioni delle policy per le policy di Principal Access Boundary. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:

Autorizzazioni obbligatorie

Per eliminare le associazioni di policy per le policy di Principal Access Boundary sono necessarie le seguenti autorizzazioni:

  • iam.principalaccessboundarypolicies.unbind sull'organizzazione
  • Elimina le associazioni di policy per le policy di Principal Access Boundary 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 di Principal Access Boundary associate ai pool Workload Identity: iam.workloadIdentityPools.deletePolicyBinding nel progetto proprietario del pool Workload Identity di destinazione
  • Recupera lo stato di unoperazione a lunga esecuzione per l'eliminazione di un binding che fa riferimento a un pool di identità del workload: iam.operations.get sul progetto proprietario del pool di identità del workload di destinazione
  • Elimina le associazioni di policy per le policy di Principal Access Boundary associate a un dominio Google Workspace: iam.workspacePools.deletePolicyBinding nell'organizzazione
  • Elimina le associazioni di policy per le policy di Principal Access Boundary 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 di Principal Access Boundary associate al set di entità di una cartella: resourcemanager.folders.deletePolicyBinding nella cartella
  • Elimina le associazioni di policy per le policy di Principal Access Boundary 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 di Principal Access Boundary

Prima di rimuovere una policy di Principal Access Boundary, decidi quale dei seguenti obiettivi vuoi raggiungere:

  • Rendere le entità in 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à in un insieme di entità idonee ad accedere a tutte le risorse, procedi nel seguente modo:

  1. Identifica tutte le policy di Principal Access Boundary associate all'insieme di entità.
  2. Rimuovi tutte le policy di Principal Access Boundary associate al set di entità eliminando le associazioni di policy pertinenti.

Se un'entità non è soggetta ad alcuna policy di Principal Access Boundary, 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 ulteriori informazioni, consulta la sezione Valutazione delle norme.

Ridurre le risorse a cui possono accedere le entità

Se le entità in un set di entità sono soggette a più policy di Principal Access Boundary, puoi ridurre il numero di risorse a cui le entità possono accedere rimuovendo una o più policy di Principal Access Boundary a cui sono soggette. Tuttavia, non rimuovere in nessun momento tutte le policy di Principal Access Boundary a cui sono soggette le entità. In caso contrario, le entità potranno accedere a tutte le risorse Google Cloud .

Per rimuovere una policy di Principal Access Boundary assicurandoti che le entità in un insieme di entità siano sempre soggette ad almeno una policy di Principal Access Boundary, segui questi passaggi:

  1. Identifica tutte le policy di Principal Access Boundary associate all'insieme di entità.
  2. Identifica le policy di Principal Access Boundary che contengono solo 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 questi criteri, crea un nuovo criterio di Principal Access Boundary con solo le risorse a cui vuoi che le entità possano accedere. Quindi, allega la policy al set di entità.

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

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

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

Rimuovere una policy di Principal Access Boundary da un insieme di entità

Prima di rimuovere una policy di Principal Access Boundary da un insieme di entità, preparati per la rimozione della policy. Poi rimuovi il criterio eliminando l'associazione di criteri che lo associa al set di entità.

Puoi eliminare un'associazione di policy 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 del confine dell'accesso dell'entità la cui associazione vuoi eliminare.

  3. Fai clic sull'ID policy della policy di Principal Access Boundary 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, 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 criteri.

Prima di utilizzare i dati dei comandi riportati di seguito, apporta 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 l'associazione di criteri è un elemento secondario. 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à di sicurezza supportati.

  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione di cui è figlio il binding della policy. 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 seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa Resource Manager (progetto, cartella o organizzazione) di cui l'associazione di criteri è un elemento secondario. 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à di sicurezza supportati.

  • RESOURCE_ID: l'ID del progetto, della cartella o dell'organizzazione di cui è figlio il binding della policy. 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 di Principal Access Boundary

Prima di eliminare una policy di Principal Access Boundary, ti consigliamo di identificare ed eliminare tutte le associazioni di policy di Principal Access Boundary che fanno riferimento alla policy di Principal Access Boundary.

Se elimini una policy di Principal Access Boundary con associazioni di policy esistenti, queste verranno eliminate. Tuttavia, fino a quando non vengono eliminate, le associazioni delle policy vengono comunque conteggiate ai fini del limite di 10 associazioni che possono fare riferimento a un singolo set di entità.

Puoi eliminare una policy di 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 del confine dell'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 il criterio:

    • Per eliminare il criterio solo se non ha associazioni, fai clic su Elimina.
    • Per eliminare la policy e tutte le associazioni associate, 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 una policy di Principal Access Boundary e tutte le associazioni correlate.

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

  • PAB_POLICY_ID: l'ID del criterio di Principal Access Boundary che vuoi eliminare, ad esempio example-policy.
  • ORG_ID: l'ID dell'organizzazione proprietaria della policy di Principal Access Boundary. Gli ID organizzazione sono numerici, ad esempio 123456789012.
  • FORCE_FLAG: Facoltativo. Per forzare l'eliminazione di una policy, anche se viene fatta riferimento in associazioni di 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 di Principal Access Boundary e tutte le associazioni correlate.

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

  • ORG_ID: l'ID dell'organizzazione proprietaria della policy di Principal Access Boundary. Gli ID organizzazione sono numerici, ad esempio 123456789012.
  • PAB_POLICY_ID: l'ID del criterio di Principal Access Boundary che vuoi eliminare, ad esempio example-policy.
  • FORCE_DELETE: (Facoltativo). Per forzare l'eliminazione del criterio, anche se viene fatto riferimento al criterio in 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 modifica un binding o una policy del confine di accesso dei principal restituisce uoperazione a lunga esecuzionea (LRO). L'operazione a lunga esecuzione monitora lo stato della richiesta e indica se la modifica alla policy o al binding è 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 seguenti sostituzioni:

  • OPERATION_NAME: il nome completo dell'operazione. Riceverai 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