Visualizzare, aggiornare ed eliminare i diritti in Privileged Access Manager

Dopo aver creato un diritto, puoi visualizzarlo, aggiornarlo o eliminarlo.

Prima di iniziare

Assicurati di aver abilitato Privileged Access Manager e di aver configurato le autorizzazioni.

Visualizzare, aggiornare ed eliminare i diritti utilizzando la console Google Cloud

  1. Vai alla pagina Privileged Access Manager.

    Vai a Privileged Access Manager

  2. Seleziona l'organizzazione, la cartella o il progetto in cui vuoi gestire i diritti.

  3. Nella scheda Diritti, fai clic sulla scheda Diritti per tutti gli utenti. Qui puoi trovare i diritti disponibili, i ruoli che concedono e i relativi richiedenti e approvatori validi.

  4. Nella tabella, fai clic su Altre opzioni nella stessa riga di un diritto che vuoi controllare.

    • Per visualizzare i dettagli del diritto, fai clic su Visualizza i dettagli del diritto.

    • Per visualizzare i grant associati al diritto, fai clic su Visualizza grant associati.

    • Per revocare tutte le concessioni attive per il diritto, fai clic su Revoca tutte le concessioni.

    • Per eliminare il diritto, fai clic su Elimina diritto. Non puoi eliminare un diritto con concessioni attive. Devi prima revocare le concessioni.

  5. Per aggiornare un diritto, fai clic su Modifica diritto nella stessa riga del diritto da aggiornare.

    Quando aggiorni un diritto, tieni presente quanto segue:

    • La configurazione dei diritti aggiornata si applica solo alle concessioni richieste dopo l'aggiornamento. Tuttavia, le modifiche agli approvatori si applicano anche alle richieste di concessione esistenti che non sono ancora state approvate o rifiutate.

    • Quando aggiorni un diritto, non puoi modificare la necessità di approvazione. Se devi modificare lo stato di approvazione, crea un nuovo diritto.

    • La propagazione delle modifiche ai richiedenti e agli approvatori di un diritto potrebbe richiedere alcuni minuti.

Visualizzare i diritti in modo programmatico

Per visualizzare i diritti in modo programmatico, puoi cercarli, elencarli, ottenerli ed esportarli.

Elenco dei diritti

gcloud

Il comando gcloud beta pam entitlements list elenca i diritti che appartengono a un ambito specifico.

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

  • RESOURCE_TYPE: facoltativo. Il tipo di risorsa a cui appartiene il diritto. Utilizza il valore organization, folder o project.
  • RESOURCE_ID: utilizzato con RESOURCE_TYPE. L'ID del progetto, della cartella o dell'organizzazione Google Cloud per cui vuoi gestire i diritti. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

Esegui il seguente comando:

Linux, macOS o Cloud Shell

gcloud beta pam entitlements list \
    --location=global \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud beta pam entitlements list `
    --location=global `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud beta pam entitlements list ^
    --location=global ^
    --RESOURCE_TYPE=RESOURCE_ID

Dovresti ricevere una risposta simile alla seguente:

additionalNotificationTargets:
  adminEmailRecipients:
  - alex@example.com
createTime: '2024-03-26T11:07:37.009498890Z'
eligibleUsers:
- principals:
  - user:bola@example.com
etag: 00000000000000000000000000000000000000000000000000000000000=
maxRequestDuration: 3600s
name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID
privilegedAccess:
  gcpIamAccess:
    resource: //cloudresourcemanager.googleapis.com/projects/my-project
    resourceType: cloudresourcemanager.googleapis.com/Project
    roleBindings:
    - role: roles/storage.admin
requesterJustificationConfig:
  unstructured: {}
state: AVAILABLE
updateTime: '2024-03-26T11:07:40.056780645Z'

REST

Il metodo listEntitlements dell'API Privileged Access Manager elenca i diritti che appartengono a un ambito specifico.

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

  • SCOPE: l'organizzazione, la cartella o il progetto in cui si trova il diritto, nel formato organizations/ORGANIZATION_ID, folders/FOLDER_ID o projects/PROJECT_ID. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e dell'organizzazione sono numerici, ad esempio 123456789012.
  • FILTER: facoltativo. Restituisce i diritti i cui valori dei campi corrispondono a un' espressione AIP-160.
  • PAGE_SIZE: facoltativo. Il numero di elementi da restituire in una risposta.
  • PAGE_TOKEN: facoltativo. La pagina da cui iniziare la risposta utilizzando un token di pagina restituito in una risposta precedente.

Metodo HTTP e URL:

GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements?filter=FILTER&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

[
  {
    "name": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID",
    "createTime": "2023-11-21T17:28:39.962144708Z",
    "updateTime": "2023-11-21T17:28:43.160309410Z",
    "eligibleUsers": [
      {
        "principals": [
          "user:alex@example.com"
        ]
      }
    ],
    "approvalWorkflow": {
      "manualApprovals": {
        "steps": [
          {
            "approvers": [
              {
                "principals": [
                  "user:bola@example.com"
                ]
              }
            ],
            "approvalsNeeded": 1
          }
        ]
      }
    },
    "privilegedAccess": {
      "gcpIamAccess": {
        "resourceType": "cloudresourcemanager.googleapis.com/Project",
        "resource": "//cloudresourcemanager.googleapis.com/projects/my-project",
        "roleBindings": [
          {
            "role": "roles/storage.admin"
          }
        ]
      }
    },
    "maxRequestDuration": "14400s",
    "state": "AVAILABLE",
    "requesterJustificationConfig": {
      "unstructured": {}
    },
    "additionalNotificationTargets": {
      "adminEmailRecipients": [
        "alex@example.com"
      ]
    },
    "etag": "00000000000000000000000000000000000000000000000000000000000="
  }
]

Ottenere i diritti

gcloud

Il comando gcloud beta pam entitlements describe recupera un diritto specifico.

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

  • ENTITLEMENT_ID: l'ID del diritto di cui vuoi conoscere i dettagli.
  • RESOURCE_TYPE: facoltativo. Il tipo di risorsa a cui appartiene il diritto. Utilizza il valore organization, folder o project.
  • RESOURCE_ID: utilizzato con RESOURCE_TYPE. L'ID del progetto, della cartella o dell'organizzazione Google Cloud per cui vuoi gestire i diritti. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

Esegui il seguente comando:

Linux, macOS o Cloud Shell

gcloud beta pam entitlements describe \
    ENTITLEMENT_ID \
    --location=global \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud beta pam entitlements describe `
    ENTITLEMENT_ID `
    --location=global `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud beta pam entitlements describe ^
    ENTITLEMENT_ID ^
    --location=global ^
    --RESOURCE_TYPE=RESOURCE_ID

Dovresti ricevere una risposta simile alla seguente:

additionalNotificationTargets:
  adminEmailRecipients:
  - alex@example.com
createTime: '2024-03-26T11:07:37.009498890Z'
eligibleUsers:
- principals:
  - user:bola@example.com
etag: 00000000000000000000000000000000000000000000000000000000000=
maxRequestDuration: 3600s
name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID
privilegedAccess:
  gcpIamAccess:
    resource: //cloudresourcemanager.googleapis.com/projects/my-project
    resourceType: cloudresourcemanager.googleapis.com/Project
    roleBindings:
    - role: roles/storage.admin
requesterJustificationConfig:
  unstructured: {}
state: AVAILABLE
updateTime: '2024-03-26T11:07:40.056780645Z'

REST

Il metodo getEntitlement dell'API Privileged Access Manager recupera un diritto specifico.

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

  • SCOPE: l'organizzazione, la cartella o il progetto da cui recuperare il diritto, nel formato organizations/ORGANIZATION_ID, folders/FOLDER_ID o projects/PROJECT_ID. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e dell'organizzazione sono numerici, ad esempio 123456789012.
  • ENTITLEMENT_ID: l'ID del diritto di cui vuoi visualizzare i dettagli.

Metodo HTTP e URL:

GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID",
  "createTime": "2023-11-21T17:28:39.962144708Z",
  "updateTime": "2023-11-21T17:28:43.160309410Z",
  "eligibleUsers": [
    {
      "principals": [
        "user:alex@example.com"
      ]
    }
  ],
  "approvalWorkflow": {
    "manualApprovals": {
      "steps": [
        {
          "approvers": [
            {
              "principals": [
                "user:bola@example.com"
              ]
            }
          ],
          "approvalsNeeded": 1
        }
      ]
    }
  },
  "privilegedAccess": {
    "gcpIamAccess": {
      "resourceType": "cloudresourcemanager.googleapis.com/Project",
      "resource": "//cloudresourcemanager.googleapis.com/projects/my-project",
      "roleBindings": [
        {
          "role": "roles/storage.admin"
        }
      ]
    }
  },
  "maxRequestDuration": "14400s",
  "state": "AVAILABLE",
  "requesterJustificationConfig": {
    "unstructured": {}
  },
  "additionalNotificationTargets": {
    "adminEmailRecipients": [
      "alex@example.com"
    ]
  },
  "etag": "00000000000000000000000000000000000000000000000000000000000="
}

Esportare i diritti utilizzando gcloud CLI

Il comando gcloud beta pam entitlements export esporta un diritto specifico in un file YAML.

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

  • ENTITLEMENT_ID: l'ID del diritto di esportazione.
  • FILENAME: il nome del file in cui esportare i contenuti del diritto.
  • RESOURCE_TYPE: facoltativo. Il tipo di risorsa a cui appartiene il diritto. Utilizza il valore organization, folder o project.
  • RESOURCE_ID: utilizzato con RESOURCE_TYPE. L'ID del progetto, della cartella o dell'organizzazione Google Cloud per cui vuoi gestire i diritti. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

Esegui il seguente comando:

Linux, macOS o Cloud Shell

gcloud beta pam entitlements export \
    ENTITLEMENT_ID \
    --destination=FILENAME.yaml \
    --location=global \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud beta pam entitlements export `
    ENTITLEMENT_ID `
    --destination=FILENAME.yaml `
    --location=global `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud beta pam entitlements export ^
    ENTITLEMENT_ID ^
    --destination=FILENAME.yaml ^
    --location=global ^
    --RESOURCE_TYPE=RESOURCE_ID

Dovresti ricevere una risposta simile alla seguente:

Exported [projects/my-project/locations/global/entitlements/ENTITLEMENT_ID] to 'FILENAME.yaml'.

Aggiornare i diritti in modo programmatico

Quando aggiorni un diritto, tieni presente quanto segue:

  • La configurazione dei diritti aggiornata si applica solo alle concessioni richieste dopo l'aggiornamento. Tuttavia, le modifiche agli approvatori si applicano anche alle richieste di concessione esistenti che non sono ancora state approvate o rifiutate.

  • Quando aggiorni un diritto, non puoi modificare la necessità di approvazione. Se devi modificare lo stato di approvazione, crea un nuovo diritto.

  • La propagazione delle modifiche ai richiedenti e agli approvatori di un diritto potrebbe richiedere alcuni minuti.

gcloud

Il comando gcloud beta pam entitlements update aggiorna un diritto specifico.

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

  • ENTITLEMENT_ID: l'ID del diritto da aggiornare.
  • RESOURCE_TYPE: facoltativo. Il tipo di risorsa a cui appartiene il diritto. Utilizza il valore organization, folder o project.
  • RESOURCE_ID: utilizzato con RESOURCE_TYPE. L'ID del progetto, della cartella o dell'organizzazione Google Cloud per cui vuoi gestire i diritti. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.
  • FILENAME: un file contenente la configurazione modificata del diritto. Per creare questo file, ottieni o esporta il diritto esistente, salva la risposta in un file YAML e poi modificalo per utilizzarlo come corpo della richiesta di aggiornamento. Devi includere l'ETAG nel corpo per aggiornare la versione più recente del diritto. Per i campi disponibili che puoi modificare o aggiungere, consulta Creare i diritti in modo programmatico.

Esegui il seguente comando:

Linux, macOS o Cloud Shell

gcloud beta pam entitlements update \
    ENTITLEMENT_ID \
    --entitlement-file=FILENAME.yaml \
    --location=global \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud beta pam entitlements update `
    ENTITLEMENT_ID `
    --entitlement-file=FILENAME.yaml `
    --location=global `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud beta pam entitlements update ^
    ENTITLEMENT_ID ^
    --entitlement-file=FILENAME.yaml ^
    --location=global ^
    --RESOURCE_TYPE=RESOURCE_ID

Dovresti ricevere una risposta simile alla seguente:

Request issued for: [ENTITLEMENT_ID]
Waiting for operation [projects/my-project/locations/global/operations/OPERATION_ID] to complete...done.
Updated entitlement [ENTITLEMENT_ID].
approvalWorkflow:
  manualApprovals:
    requireApproverJustification: true
    steps:
    - approvalsNeeded: 1
      approvers:
      - principals:
        - user:alex@example.com
createTime: '2024-04-09T02:39:37.011866832Z'
eligibleUsers:
- principals:
  - user:bola@example.com
etag: 00000000000000000000000000000000000000000000000000000000000=
maxRequestDuration: 7200s
name: projects/my-project/locations/global/entitlements/ENTITLEMENT_ID
privilegedAccess:
  gcpIamAccess:
    resource: //cloudresourcemanager.googleapis.com/projects/my-project
    resourceType: cloudresourcemanager.googleapis.com/Project
    roleBindings:
    - role: roles/storage.admin
requesterJustificationConfig:
  unstructured: {}
state: AVAILABLE
updateTime: '2024-04-09T02:39:40.066770306Z'

REST

Il metodo updateEntitlement dell'API Privileged Access Manager aggiorna un diritto specifico.

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

  • SCOPE: l'organizzazione, la cartella o il progetto in cui si trova il diritto, nel formato organizations/ORGANIZATION_ID, folders/FOLDER_ID o projects/PROJECT_ID. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e dell'organizzazione sono numerici, ad esempio 123456789012.
  • ENTITLEMENT_ID: l'ID del diritto da aggiornare.
  • UPDATED_FIELDS: un elenco separato da virgole di campi che vengono aggiornati nel diritto. Ad esempio:

    ?updateMask=privilegedAccess,maxRequestDuration

    Per tutti i campi aggiornabili, imposta la maschera di aggiornamento su *.

  • REQUEST_ID: facoltativo. Deve essere un UUID diverso da zero. Se il server riceve una richiesta con un ID richiesta, controlla se un'altra richiesta con lo stesso ID è già stata completata negli ultimi 60 minuti. In questo caso, la nuova richiesta viene ignorata.
  • request.json: un file contenente la configurazione modificata del diritto. Per creare questo file, ottieni o esporta il diritto esistente, salva la risposta in un file denominato request.json e poi modificalo per utilizzarlo come corpo della richiesta di aggiornamento. Devi includere l'ETAG nel corpo per aggiornare la versione più recente del diritto. Per i campi disponibili che puoi modificare o aggiungere, consulta Creare i diritti in modo programmatico.

Metodo HTTP e URL:

PATCH https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?updateMask=UPDATED_FIELDS&requestId=REQUEST_ID

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/my-project/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1beta.OperationMetadata",
    "createTime": "2024-03-25T01:55:02.544562950Z",
    "target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID",
    "verb": "update",
    "requestedCancellation": false,
    "apiVersion": "v1beta"
  },
  "done": false
}

Per controllare l'avanzamento di un'operazione di aggiornamento, puoi inviare una richiesta GET al seguente endpoint:

https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations/OPERATION_ID

Invia una richiesta GET al seguente endpoint per elencare tutte le operazioni:

https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations

Eliminare i diritti in modo programmatico

gcloud

Il comando gcloud beta pam entitlements delete elimina un diritto specifico.

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

  • ENTITLEMENT_ID: l'ID del diritto da eliminare.
  • RESOURCE_TYPE: facoltativo. Il tipo di risorsa a cui appartiene il diritto. Utilizza il valore organization, folder o project.
  • RESOURCE_ID: utilizzato con RESOURCE_TYPE. L'ID del progetto, della cartella o dell'organizzazione Google Cloud per cui vuoi gestire i diritti. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e organizzazione sono numerici, ad esempio 123456789012.

Esegui il seguente comando:

Linux, macOS o Cloud Shell

gcloud beta pam entitlements delete \
    ENTITLEMENT_ID \
    --location=global \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud beta pam entitlements delete `
    ENTITLEMENT_ID `
    --location=global `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud beta pam entitlements delete ^
    ENTITLEMENT_ID ^
    --location=global ^
    --RESOURCE_TYPE=RESOURCE_ID

Dovresti ricevere una risposta simile alla seguente:

Delete request issued for: [ENTITLEMENT_ID]
Waiting for operation [projects/my-project/locations/global/operations/OPERATION_ID] to complete...done.
Deleted entitlement [ENTITLEMENT_ID].

REST

Il metodo deleteEntitlement dell'API Privileged Access Manager elimina un diritto specifico.

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

  • SCOPE: l'organizzazione, la cartella o il progetto in cui eliminare il diritto, nel formato organizations/ORGANIZATION_ID, folders/FOLDER_ID o projects/PROJECT_ID. Gli ID progetto sono stringhe alfanumeriche, ad esempio my-project. Gli ID cartella e dell'organizzazione sono numerici, ad esempio 123456789012.
  • ENTITLEMENT_ID: l'ID del diritto da eliminare.
  • REQUEST_ID: facoltativo. Deve essere un UUID diverso da zero. Se il server riceve una richiesta con un ID richiesta, controlla se un'altra richiesta con lo stesso ID è già stata completata negli ultimi 60 minuti. In questo caso, la nuova richiesta viene ignorata.

Metodo HTTP e URL:

DELETE https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?requestId=REQUEST_ID

Per inviare la richiesta, espandi una di queste opzioni:

Dovresti ricevere una risposta JSON simile alla seguente:

{
  "name": "projects/my-project/locations/global/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1beta.OperationMetadata",
    "createTime": "2024-03-06T02:28:28.020293460Z",
    "target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1beta"
  },
  "done": false
}

Per controllare l'avanzamento di un'operazione di eliminazione, puoi inviare una richiesta GET al seguente endpoint:

https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations/OPERATION_ID

Invia una richiesta GET al seguente endpoint per elencare tutte le operazioni:

https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations