Solicitar acceso elevado temporal con Privileged Access Manager

Para elevar tus privilegios temporalmente, puedes solicitar una concesión de un derecho en Gestor de accesos privilegiados (PAM) durante un periodo fijo.

Un derecho contiene roles que se te conceden después de que tu solicitud se haya completado correctamente. Privileged Access Manager elimina estos roles cuando finaliza la concesión.

Ten en cuenta lo siguiente si quieres solicitar una concesión para un derecho:

  • Solo puedes solicitar subvenciones para los derechos a los que se te haya añadido. Para que se te añada a un derecho, ponte en contacto con el principal que lo administre.

  • Puedes tener un máximo de cinco concesiones abiertas por derecho a la vez. Estas concesiones pueden estar en estado Active o Approval awaited.

  • No puedes solicitar una concesión con el mismo ámbito que una concesión que ya esté en estado Active o Approval awaited.

  • En función de cómo se haya configurado, es posible que una solicitud de subvención requiera aprobación para concederse.

  • Si una solicitud de concesión requiere aprobación y no se aprueba ni se rechaza en un plazo de 24 horas, el estado de la concesión cambia a Expired. Después, debes hacer una nueva solicitud de concesión si sigues necesitando privilegios elevados.

  • Las solicitudes de concesión correctas pueden tardar unos minutos en aplicarse.

Solicitar una concesión

Consola

  1. Ve a la página Privileged Access Manager.

    Ir a Privileged Access Manager

  2. Selecciona la organización, la carpeta o el proyecto en el que quieras solicitar una concesión.

  3. En la pestaña Mis derechos, busca el derecho que quieras solicitar y, a continuación, haz clic en Solicitar concesión en la misma fila.

    En el caso de los derechos que se heredan de una carpeta o una organización superior, el ámbito de la concesión se ajusta automáticamente a la organización, la carpeta o el proyecto seleccionados. Puedes solicitar una concesión en relación con el derecho heredado a nivel del recurso secundario. Esta función está disponible en versión preliminar.

  4. Si el nivel Premium o Enterprise de Security Command Center está activado a nivel de organización, puedes personalizar el ámbito de tu solicitud de concesión para que incluya solo algunos roles y recursos específicos. Esta función está disponible en versión preliminar.

    1. Active el interruptor Personalizar ámbito.
    2. Añade los filtros de recursos necesarios. Puedes añadir hasta cinco filtros de recursos.
    3. Selecciona los roles necesarios.
  5. Proporciona los siguientes datos:

    • La duración necesaria para la concesión, hasta la duración máxima establecida en el derecho.

    • Si es necesario, una justificación de la concesión.

    • Opcional: direcciones de correo para las notificaciones.

      Las identidades de Google asociadas al derecho, como los aprobadores y los solicitantes, reciben una notificación automáticamente. Sin embargo, si quieres enviar una notificación a más personas, puedes añadir sus direcciones de correo. Esto es especialmente útil si usas identidades de empleados en lugar de cuentas de Google.

  6. Haz clic en Solicitar subvención.

gcloud

Puedes solicitar una subvención con una de las siguientes opciones:

Solicitar una concesión de un derecho

El comando gcloud alpha pam grants create solicita un permiso.

Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

  • ENTITLEMENT_ID: ID del derecho para crear la concesión.
  • GRANT_DURATION: duración solicitada de la concesión, en segundos.
  • JUSTIFICATION: la justificación de la solicitud de la subvención.
  • EMAIL_ADDRESS: opcional. Direcciones de correo adicionales a las que se debe notificar la solicitud de concesión. Las identidades de Google asociadas a los aprobadores reciben una notificación automáticamente. Sin embargo, puede que quieras enviar notificaciones a otro conjunto de direcciones de correo, sobre todo si usas Federación de identidades de la plantilla.
  • RESOURCE_TYPE: opcional. El tipo de recurso al que pertenece el derecho. Usa el valor organization, folder o project.
  • RESOURCE_ID: se usa con RESOURCE_TYPE. El ID del proyecto, la carpeta o la organización Google Cloud para los que quieras gestionar los derechos. Los IDs de proyecto son cadenas alfanuméricas, como my-project. Los IDs de carpetas y organizaciones son numéricos, como 123456789012.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud alpha pam grants create \
    --entitlement=ENTITLEMENT_ID \
    --requested-duration="GRANT_DURATIONs" \
    --justification="JUSTIFICATION" \
    --location=global \
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud alpha pam grants create `
    --entitlement=ENTITLEMENT_ID `
    --requested-duration="GRANT_DURATIONs" `
    --justification="JUSTIFICATION" `
    --location=global `
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud alpha pam grants create ^
    --entitlement=ENTITLEMENT_ID ^
    --requested-duration="GRANT_DURATIONs" ^
    --justification="JUSTIFICATION" ^
    --location=global ^
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] ^
    --RESOURCE_TYPE=RESOURCE_ID

Deberías recibir una respuesta similar a la siguiente:

Created [GRANT_ID].

Solicitar una concesión en un recurso secundario de un derecho

El comando gcloud alpha pam grants create solicita un permiso.

Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

  • ENTITLEMENT_ID: ID del derecho para crear la concesión.
  • GRANT_DURATION: duración solicitada de la concesión, en segundos.
  • JUSTIFICATION: la justificación de la solicitud de la subvención.
  • EMAIL_ADDRESS: opcional. Direcciones de correo adicionales a las que se debe notificar la solicitud de concesión. Las identidades de Google asociadas a los aprobadores reciben una notificación automáticamente. Sin embargo, puede que quieras enviar notificaciones a otro conjunto de direcciones de correo, sobre todo si usas Federación de identidades de la plantilla.
  • RESOURCE_TYPE: opcional. El tipo de Google Cloud recursos a los que se concederá acceso. Se usa para personalizar el ámbito de la concesión a un recurso secundario.
  • RESOURCE_ID: se usa con RESOURCE_TYPE. El ID del proyecto, la carpeta o la organización Google Cloud para los que quieras gestionar los derechos. Los IDs de proyecto son cadenas alfanuméricas, como my-project. Los IDs de carpetas y organizaciones son numéricos, como 123456789012.
  • REQUESTED_RESOURCE: opcional. Los Google Cloud recursos a los que quieres que se le conceda acceso. Se usa para personalizar el ámbito de la concesión a un recurso secundario. Formato: RESOURCE_TYPE/RESOURCE_ID. Ejemplo: projects/PROJECT_ID, folders/FOLDER_ID o organizations/ORGANIZATION_ID.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud alpha pam grants create \
    --entitlement=ENTITLEMENT_ID \
    --requested-duration="GRANT_DURATIONs" \
    --justification="JUSTIFICATION" \
    --location=global \
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] \
    --RESOURCE_TYPE=RESOURCE_ID \
    --requested-resources=REQUESTED_RESOURCE

Windows (PowerShell)

gcloud alpha pam grants create `
    --entitlement=ENTITLEMENT_ID `
    --requested-duration="GRANT_DURATIONs" `
    --justification="JUSTIFICATION" `
    --location=global `
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] `
    --RESOURCE_TYPE=RESOURCE_ID `
    --requested-resources=REQUESTED_RESOURCE

Windows (cmd.exe)

gcloud alpha pam grants create ^
    --entitlement=ENTITLEMENT_ID ^
    --requested-duration="GRANT_DURATIONs" ^
    --justification="JUSTIFICATION" ^
    --location=global ^
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --requested-resources=REQUESTED_RESOURCE

Deberías recibir una respuesta similar a la siguiente:

Created [GRANT_ID].

Solicitar una concesión con un ámbito detallado

El comando gcloud alpha pam grants create solicita un permiso.

Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

  • ENTITLEMENT_ROLE_BINDING_ID: opcional.ID del enlace de rol del rol que se va a conceder a partir del derecho.
  • ACCESS_RESTRICTION_NAME: opcional. Nombres de recursos a los que se va a restringir el acceso. Para obtener información sobre el formato, consulta Formato del nombre de recurso.
  • ACCESS_RESTRICTION_PREFIX: opcional. Prefijos de nombres de recursos para restringir el acceso. Para obtener información sobre el formato, consulta Formato del nombre de recurso.
  • RESOURCE_TYPE: opcional. El tipo de recurso al que pertenece el derecho. Usa el valor organization, folder o project.
  • RESOURCE_ID: se usa con RESOURCE_TYPE. El ID del proyecto, la carpeta o la organización Google Cloud para los que quieras gestionar los derechos. Los IDs de proyecto son cadenas alfanuméricas, como my-project. Los IDs de carpetas y organizaciones son numéricos, como 123456789012.
  • REQUESTED_RESOURCE_TYPE. Opcional. El tipo de Google Cloud recursos a los que se concederá acceso. Se usa para personalizar el ámbito de la concesión a un recurso secundario.
  • REQUESTED_RESOURCE: opcional. Los Google Cloud recursos a los que quieres que se le conceda acceso. Se usa para personalizar el ámbito de la concesión a un recurso secundario. Formato: RESOURCE_TYPE/RESOURCE_ID. Ejemplo: projects/PROJECT_ID, folders/FOLDER_ID o organizations/ORGANIZATION_ID.

Guarda el siguiente contenido en un archivo llamado requested-scope.yaml :

- gcpIamAccess:
    resource: REQUESTED_RESOURCE
    resourceType: REQUESTED_RESOURCE_TYPE
    roleBindings:
    - entitlementRoleBindingId: ENTITLEMENT_ROLE_BINDING_ID_1
      accessRestrictions:
        resourceNames:
        - ACCESS_RESTRICTION_NAME_1
        - ACCESS_RESTRICTION_NAME_2
    - entitlementRoleBindingId: ENTITLEMENT_ROLE_BINDING_ID_2
      accessRestrictions:
        resourceNamePrefixes:
        - ACCESS_RESTRICTION_PREFIX_1
        - ACCESS_RESTRICTION_PREFIX_2

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud alpha pam grants create \
    --entitlement=ENTITLEMENT_ID \
    --requested-duration="GRANT_DURATIONs" \
    --justification="JUSTIFICATION" \
    --location=global \
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] \
    --RESOURCE_TYPE=RESOURCE_ID \
    --requested-access-from-file=requested-scope.yaml

Windows (PowerShell)

gcloud alpha pam grants create `
    --entitlement=ENTITLEMENT_ID `
    --requested-duration="GRANT_DURATIONs" `
    --justification="JUSTIFICATION" `
    --location=global `
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] `
    --RESOURCE_TYPE=RESOURCE_ID `
    --requested-access-from-file=requested-scope.yaml

Windows (cmd.exe)

gcloud alpha pam grants create ^
    --entitlement=ENTITLEMENT_ID ^
    --requested-duration="GRANT_DURATIONs" ^
    --justification="JUSTIFICATION" ^
    --location=global ^
    [--additional-email-recipients=EMAIL_ADDRESS_1, EMAIL_ADDRESS_2] ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --requested-access-from-file=requested-scope.yaml

Deberías recibir una respuesta similar a la siguiente:

Created [GRANT_ID].

REST

  1. Busca los derechos que puedes solicitar.

    El método searchEntitlements de la API Privileged Access Manager con el tipo de acceso de la persona que llama GRANT_REQUESTER busca los derechos para los que puedes solicitar una concesión.

    Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

    • SCOPE: la organización, la carpeta o el proyecto en el que se encuentra el derecho, con el formato organizations/ORGANIZATION_ID, folders/FOLDER_ID o projects/PROJECT_ID. Los IDs de proyecto son cadenas alfanuméricas, como my-project. Los IDs de carpetas y organizaciones son numéricos, como 123456789012.
    • FILTER: opcional. Devuelve los derechos cuyos valores de campo coinciden con una expresión AIP-160.
    • PAGE_SIZE: opcional. Número de elementos que se van a devolver en una respuesta.
    • PAGE_TOKEN: opcional. Página desde la que se inicia la respuesta, mediante un token de página devuelto en una respuesta anterior.

    Método HTTP y URL:

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

    Para enviar tu solicitud, despliega una de estas opciones:

    Deberías recibir una respuesta JSON similar a la siguiente:

    {
      "name": "SCOPE/locations/global/operations/OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1beta.OperationMetadata",
        "createTime": "2024-03-05T03:35:14.596739353Z",
        "target": "SCOPE/locations/global/entitlements/ENTITLEMENT_ID",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1beta"
      },
      "done": false
    }
    
    
  2. Solicita una concesión del derecho.

    El método createGrant de la API Privileged Access Manager solicita una concesión.

    Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

    • SCOPE: la organización, la carpeta o el proyecto en el que se encuentra el derecho, con el formato organizations/ORGANIZATION_ID, folders/FOLDER_ID o projects/PROJECT_ID. Los IDs de proyecto son cadenas alfanuméricas, como my-project. Los IDs de carpetas y organizaciones son numéricos, como 123456789012.
    • ENTITLEMENT_ID: ID del derecho para crear la concesión.
    • REQUEST_ID: opcional. Debe ser un UUID distinto de cero. Si el servidor recibe una solicitud con un ID de solicitud, comprueba si ya se ha completado otra solicitud con ese ID en los últimos 60 minutos. Si es así, se ignora la nueva solicitud.
    • GRANT_DURATION: duración solicitada de la concesión, en segundos.
    • JUSTIFICATION: la justificación de la solicitud de la subvención.
    • EMAIL_ADDRESS: opcional. Direcciones de correo adicionales a las que se debe notificar la solicitud de concesión. Las identidades de Google asociadas a los aprobadores reciben una notificación automáticamente. Sin embargo, puede que quieras enviar notificaciones a otro conjunto de direcciones de correo, sobre todo si usas Federación de identidades de la plantilla.
    • ENTITLEMENT_ROLE_BINDING_ID: opcional. ID de la vinculación de rol del rol que se va a conceder a partir del derecho.
    • ACCESS_RESTRICTION_NAME: opcional. Nombres de recursos a los que se va a restringir el acceso. Para obtener información sobre el formato, consulta Formato del nombre de recurso.
    • ACCESS_RESTRICTION_PREFIX: opcional. Prefijos de nombres de recursos para restringir el acceso. Para obtener información sobre el formato, consulta Formato del nombre de recurso.

    Método HTTP y URL:

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

    Cuerpo JSON de la solicitud:

    {
      "requestedDuration": "GRANT_DURATIONs",
      "justification": {
        "unstructuredJustification": "JUSTIFICATION"
      },
      "additionalEmailRecipients": [
        "EMAIL_ADDRESS_1",
        "EMAIL_ADDRESS_2",
      ],
      "requestedPrivilegedAccess": {
        "gcpIamAccess": {
          "resourceType": "REQUESTED_RESOURCE_TYPE",
          "resource": "REQUESTED_RESOURCE",
          "roleBindings": [
            {
              "entitlementRoleBindingId": "ENTITLEMENT_ROLE_BINDING_ID",
              "accessRestrictions": {
                "resourceNames": [
                  "ACCESS_RESTRICTION_NAME"
                ],
                "resourceNamePrefixes": [
                  "ACCESS_RESTRICTION_PREFIX"
                ],
              },
            }
          ],
        }
      },
    }
    

    Para enviar tu solicitud, despliega una de estas opciones:

    Deberías recibir una respuesta JSON similar a la siguiente:

    {
       "name": "SCOPE/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID",
       "createTime": "2024-03-06T03:08:49.330577625Z",
       "updateTime": "2024-03-06T03:08:49.625874598Z",
       "requester": "alex@example.com",
       "requestedDuration": "3600s",
       "justification": {
         "unstructuredJustification": "Emergency service for outage"
       },
       "state": "APPROVAL_AWAITED",
       "timeline": {
         "events": [
           {
             "eventTime": "2024-03-06T03:08:49.462765846Z",
             "requested": {
               "expireTime": "2024-03-07T03:08:49.462765846Z"
             }
           }
         ]
       },
       "privilegedAccess": {
         "gcpIamAccess": {
           "resourceType": "cloudresourcemanager.googleapis.com/Project",
           "resource": "//cloudresourcemanager.googleapis.com/SCOPE",
           "roleBindings": [
             {
               "role": "roles/storage.admin",
               "id": "hwqrt_1",
               "conditionExpression": "resource.name == \"//cloudresourcemanager.googleapis.com/SCOPE/buckets/bucket-1\" && resource.name.startsWith(\"//cloudresourcemanager.googleapis.com/SCOPE/compute/vms\")"
             }
           ]
         }
       },
       "requestedPrivilegedAccess": {
         "gcpIamAccess": {
           "resourceType": "cloudresourcemanager.googleapis.com/Project",
           "resource": "//cloudresourcemanager.googleapis.com/SCOPE",
           "roleBindings": [
             {
               "role": "roles/storage.admin",
               "entitlementRoleBindingId": "hwqrt_1",
               "accessRestrictions": {
                 "resourceNames": [
    "//cloudresourcemanager.googleapis.com/SCOPE/buckets/bucket-1"
                 ],
                 "resourceNamePrefixes": [                  "//cloudresourcemanager.googleapis.com/SCOPE/compute/vms"
                 ]
               }
             }
           ]
         }
       },
       "additionalEmailRecipients": [
         "bola@google.com"
       ]
    }
    
    

Consultar el estado de una solicitud de subvención

Consola

  1. Ve a la página Privileged Access Manager.

    Ir a Privileged Access Manager

  2. Selecciona la organización, la carpeta o el proyecto en el que quieras ver las concesiones.

  3. En la pestaña Subvenciones, haz clic en Mis subvenciones.

    Tu subvención puede tener uno de los siguientes estados:

    Estado Descripción
    Activando La concesión está en proceso de activación.
    Error de activación Privileged Access Manager no ha podido conceder los roles debido a un error no recuperable.
    Activo La concesión está activa y la entidad principal tiene acceso a los recursos permitidos por los roles.
    Esperando aprobación La solicitud de concesión está pendiente de la decisión de un aprobador.
    Rechazado Un aprobador ha denegado la solicitud de concesión.
    Finalización La concesión ha finalizado y los roles se han quitado de la entidad principal.
    Caducado La solicitud de concesión ha caducado porque no se ha concedido la aprobación en un plazo de 24 horas.
    Revocado Se revoca la concesión y la entidad principal ya no tiene acceso a los recursos permitidos por los roles.
    Revocando La concesión se está revocando.
    Retirando La subvención se está retirando.
    Retirada Se retira la concesión y la entidad principal ya no tiene acceso a los recursos permitidos por los roles.

gcloud

El comando gcloud alpha pam grants search se usa con la relación de llamada had-created para buscar las concesiones que has creado. Para comprobar su estado, busca el campo state en la respuesta.

Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:

  • ENTITLEMENT_ID: ID del derecho al que pertenece la concesión.
  • RESOURCE_TYPE: opcional. El tipo de recurso al que pertenece el derecho. Usa el valor organization, folder o project.
  • RESOURCE_ID: se usa con RESOURCE_TYPE. El ID del proyecto, la carpeta o la organización Google Cloud para los que quieras gestionar los derechos. Los IDs de proyecto son cadenas alfanuméricas, como my-project. Los IDs de carpetas y organizaciones son numéricos, como 123456789012.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud alpha pam grants search \
    --entitlement=ENTITLEMENT_ID \
    --caller-relationship=had-created \
    --location=global \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud alpha pam grants search `
    --entitlement=ENTITLEMENT_ID `
    --caller-relationship=had-created `
    --location=global `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud alpha pam grants search ^
    --entitlement=ENTITLEMENT_ID ^
    --caller-relationship=had-created ^
    --location=global ^
    --RESOURCE_TYPE=RESOURCE_ID

Deberías recibir una respuesta similar a la siguiente:

additionalEmailRecipients:
- bola@example.com
createTime: '2024-03-07T00:34:32.557017289Z'
justification:
  unstructuredJustification: Renaming a file to mitigate issue #312
name: SCOPE/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID
privilegedAccess:
  gcpIamAccess:
    resource: //cloudresourcemanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID
    resourceType: cloudresourcemanager.googleapis.com/Project
    roleBindings:
    - role: roles/storage.admin
      id: hwqrt_1
      conditionExpression: resource.name == "//cloudresourcemanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/buckets/bucket-1" && resource.name.startsWith("//cloudresourcemanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/compute/vms")
requestedPrivilegedAccess:
  gcpIamAccess:
    resource: //cloudresourcemanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID
    resourceType: cloudresourcemanager.googleapis.com/Project
    roleBindings:
    - role: roles/storage.admin
      entitlementRoleBindingId: hwqrt_1
      accessRestrictions:
        resourceNames:
        - //cloudresourcemanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/buckets/bucket-1
        resourceNamePrefixes:
        - //cloudresourcemanager.googleapis.com/RESOURCE_TYPE/RESOURCE_ID/compute/vms
requestedDuration: 3600s
requester: cruz@example.com
state: DENIED
timeline:
  events:
  - eventTime: '2024-03-07T00:34:32.793769042Z'
    requested:
      expireTime: '2024-03-08T00:34:32.793769042Z'
  - denied:
      actor: alex@example.com
      reason: Issue has already been resolved
    eventTime: '2024-03-07T00:36:08.309116203Z'
updateTime: '2024-03-07T00:34:32.926967128Z'

Las subvenciones pueden tener los siguientes estados:

Estado Descripción
ACTIVANDO La concesión está en proceso de activación.
ACTIVATION_FAILED Privileged Access Manager no ha podido conceder los roles debido a un error no recuperable.
ACTIVA La concesión está activa y la entidad principal tiene acceso a los recursos permitidos por los roles.
APPROVAL_AWAITED La solicitud de concesión está pendiente de la decisión de un aprobador.
RECHAZADA Un aprobador ha denegado la solicitud de concesión.
FINALIZADO La concesión ha finalizado y los roles se han quitado de la entidad principal.
CADUCADA La solicitud de concesión ha caducado porque no se ha concedido la aprobación en un plazo de 24 horas.
REVOKED Se revoca la concesión y la entidad principal ya no tiene acceso a los recursos permitidos por los roles.
REVOCAR La concesión se está revocando.
RETIRAR La subvención se está retirando.
RETIRADO Se retira la concesión y la entidad principal ya no tiene acceso a los recursos permitidos por los roles.

REST

El método searchGrants de la API Privileged Access Manager se usa con la relación de la persona que llama HAD_CREATED para buscar las concesiones que has creado. Para comprobar su estado, busca el campo state en la respuesta.

Antes de usar los datos de la solicitud, haz las siguientes sustituciones:

  • SCOPE: la organización, la carpeta o el proyecto en el que se encuentra el derecho, con el formato organizations/ORGANIZATION_ID, folders/FOLDER_ID o projects/PROJECT_ID. Los IDs de proyecto son cadenas alfanuméricas, como my-project. Los IDs de carpetas y organizaciones son numéricos, como 123456789012.
  • ENTITLEMENT_ID: ID del derecho al que pertenece la concesión.
  • FILTER: opcional. Devuelve las concesiones cuyos valores de campo coinciden con una expresión AIP-160.
  • PAGE_SIZE: opcional. Número de elementos que se van a devolver en una respuesta.
  • PAGE_TOKEN: opcional. Página desde la que se inicia la respuesta, mediante un token de página devuelto en una respuesta anterior.

Método HTTP y URL:

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

Para enviar tu solicitud, despliega una de estas opciones:

Deberías recibir una respuesta JSON similar a la siguiente:

{
  "grants": [
    {
      "name": "SCOPE/locations/global/entitlements/ENTITLEMENT_ID/grants/GRANT_ID",
      "createTime": "2024-03-06T03:08:49.330577625Z",
      "updateTime": "2024-03-06T03:08:49.625874598Z",
      "requester": "alex@example.com",
      "requestedDuration": "3600s",
      "justification": {
        "unstructuredJustification": "Emergency service for outage"
      },
      "state": "APPROVAL_AWAITED",
      "timeline": {
        "events": [
          {
            "eventTime": "2024-03-06T03:08:49.462765846Z",
            "requested": {
              "expireTime": "2024-03-07T03:08:49.462765846Z"
            }
          }
        ]
      },
      "privilegedAccess": {
        "gcpIamAccess": {
          "resourceType": "cloudresourcemanager.googleapis.com/Project",
          "resource": "//cloudresourcemanager.googleapis.com/SCOPE",
          "roleBindings": [
            {
              "role": "roles/storage.admin",
              "id": "hwqrt_1",
              "conditionExpression": "resource.name == \"//cloudresourcemanager.googleapis.com/SCOPE/buckets/bucket-1\" && resource.name.startsWith(\"//cloudresourcemanager.googleapis.com/SCOPE/compute/vms\")"
              "conditionExpression": "resource.name == \"//cloudresourcemanager.googleapis.com/SCOPE/buckets/bucket-1\" && resource.name.startsWith(\"//cloudresourcemanager.googleapis.com/SCOPE/compute/vms\")"
            }
          ]
        }
      },
      "requestedPrivilegedAccess": {
        "gcpIamAccess": {
          "resourceType": "cloudresourcemanager.googleapis.com/Project",
          "resource": "//cloudresourcemanager.googleapis.com/SCOPE",
          "roleBindings": [
            {
              "role": "roles/storage.admin",
              "entitlementRoleBindingId": "hwqrt_1",
              "accessRestrictions": {
                "resourceNames": ["//cloudresourcemanager.googleapis.com/SCOPE/buckets/bucket-1"
                ],
                "resourceNamePrefixes": ["//cloudresourcemanager.googleapis.com/SCOPE/compute/vms"
                ]
              }
            }
          ]
        }
      },
      "additionalEmailRecipients": [
        "bola@google.com"
      ]
    }
  ]
}

En la siguiente tabla se detallan los estados de las concesiones.

Estado Descripción
ACTIVANDO La concesión está en proceso de activación.
ACTIVATION_FAILED Privileged Access Manager no ha podido conceder los roles debido a un error no recuperable.
ACTIVA La concesión está activa y la entidad principal tiene acceso a los recursos permitidos por los roles.
APPROVAL_AWAITED La solicitud de concesión está pendiente de la decisión de un aprobador.
RECHAZADA Un aprobador ha denegado la solicitud de concesión.
FINALIZADO La concesión ha finalizado y los roles se han quitado de la entidad principal.
CADUCADA La solicitud de concesión ha caducado porque no se ha concedido la aprobación en un plazo de 24 horas.
REVOKED Se revoca la concesión y la entidad principal ya no tiene acceso a los recursos permitidos por los roles.
REVOCAR La concesión se está revocando.
RETIRAR La subvención se está retirando.
RETIRADO Se retira la concesión y la entidad principal ya no tiene acceso a los recursos permitidos por los roles.