Después de crear un derecho, puedes verlo, actualizarlo o borrarlo.
Antes de comenzar
Asegúrate de habilitar Privileged Access Manager y configurar los permisos correspondientes.
Consulta, actualiza y borra derechos con la consola de Google Cloud
Ve a la página Privileged Access Manager.
Selecciona la organización, la carpeta o el proyecto en el que deseas administrar los derechos.
En la pestaña Derechos, haz clic en Derechos para todos los usuarios. Aquí puedes encontrar los derechos disponibles, los roles que otorgan y sus solicitantes y revisores válidos.
En la tabla, haz clic en
Más opciones en la misma fila del derecho que quieres inspeccionar.Para ver los detalles del derecho, haz clic en Ver detalles del derecho.
Para ver los otorgamientos asociados con el derecho, haz clic en Ver los otorgamientos asociados.
Para revocar todas las concesiones activas del derecho, haz clic en Revocar todas las concesiones.
Para borrar el derecho, haz clic en Borrar derecho. No puedes borrar un derecho con permisos activos. Primero debes revocar los permisos.
Para actualizar un derecho, haz clic en
Editar derecho en la misma fila del derecho que deseas actualizar.Ten en cuenta lo siguiente cuando actualices un derecho:
La configuración de derechos actualizada solo se aplica a los permisos solicitados después de que se realiza la actualización. Sin embargo, los cambios en la lista de responsables de aprobación también se aplican a las solicitudes de subvenciones existentes que aún no se aprobaron ni rechazaron.
Cuando actualizas un derecho, no puedes cambiar si se necesita aprobación. Si necesitas cambiar el estado de aprobación, crea un derecho nuevo.
Los cambios en los solicitantes y los revisores de un derecho pueden tardar unos minutos en propagarse.
Cómo ver derechos de manera programática
Para ver los derechos de forma programática, puedes buscarlos, enumerarlos, obtenerlos y exportarlos.
incluir en una ficha los derechos
gcloud
El comando
gcloud beta pam entitlements list
enumera los derechos que pertenecen a un
alcance específico.
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
RESOURCE_TYPE
: Opcional Es el tipo de recurso al que pertenece el derecho. Usa el valororganization
,folder
oproject
.RESOURCE_ID
: Se usa conRESOURCE_TYPE
. Es el ID del proyecto, la carpeta o la organización de Google Cloud para el que deseas administrar los derechos. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.
Ejecuta el siguiente 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
Deberías recibir una respuesta similar a la que figura a continuación:
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
El método listEntitlements
de la API de Privileged Access Manager
enumera los derechos que pertenecen a un ámbito
específico.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
SCOPE
: La organización, la carpeta o el proyecto en el que se encuentra el derecho, en el formatoorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
oprojects/PROJECT_ID
. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.FILTER
: Opcional Muestra los derechos cuyos valores de campo coinciden con una expresión de AIP-160.PAGE_SIZE
: Opcional Es la cantidad de elementos que se mostrarán en una respuesta.PAGE_TOKEN
: Opcional La página desde la que se debe iniciar la respuesta, con un token de página que se muestra en una respuesta anterior.
Método HTTP y URL:
GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements?filter=FILTER&pageSize=PAGE_SIZE&pageToken=PAGE_TOKEN
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
[ { "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=" } ]
Cómo obtener derechos
gcloud
El comando
gcloud beta pam entitlements describe
recupera un derecho específico.
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
ENTITLEMENT_ID
: Es el ID del derecho del que deseas obtener los detalles.RESOURCE_TYPE
: Opcional Es el tipo de recurso al que pertenece el derecho. Usa el valororganization
,folder
oproject
.RESOURCE_ID
: Se usa conRESOURCE_TYPE
. Es el ID del proyecto, la carpeta o la organización de Google Cloud para el que deseas administrar los derechos. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.
Ejecuta el siguiente 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
Deberías recibir una respuesta similar a la que figura a continuación:
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
El método getEntitlement
de la API de Privileged Access Manager recupera un derecho específico.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
SCOPE
: La organización, la carpeta o el proyecto de los que se obtiene el derecho, en el formato deorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
oprojects/PROJECT_ID
. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.ENTITLEMENT_ID
: Es el ID del derecho del que deseas obtener los detalles.
Método HTTP y URL:
GET https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "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=" }
Exporta derechos con gcloud CLI
El comando
gcloud beta pam entitlements export
exporta un derecho específico a un archivo
YAML.
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
ENTITLEMENT_ID
: Es el ID del derecho que se exportará.FILENAME
: Es el nombre del archivo al que se exportará el contenido de los derechos.RESOURCE_TYPE
: Opcional Es el tipo de recurso al que pertenece el derecho. Usa el valororganization
,folder
oproject
.RESOURCE_ID
: Se usa conRESOURCE_TYPE
. Es el ID del proyecto, la carpeta o la organización de Google Cloud para el que deseas administrar los derechos. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.
Ejecuta el siguiente 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
Deberías recibir una respuesta similar a la que figura a continuación:
Exported [projects/my-project/locations/global/entitlements/ENTITLEMENT_ID] to 'FILENAME.yaml'.
Actualiza los derechos de forma programática
Ten en cuenta lo siguiente cuando actualices un derecho:
La configuración de derechos actualizada solo se aplica a los permisos solicitados después de que se realiza la actualización. Sin embargo, los cambios en la lista de responsables de aprobación también se aplican a las solicitudes de subvenciones existentes que aún no se aprobaron ni rechazaron.
Cuando actualizas un derecho, no puedes cambiar si se necesita aprobación. Si necesitas cambiar el estado de aprobación, crea un derecho nuevo.
Los cambios en los solicitantes y los revisores de un derecho pueden tardar unos minutos en propagarse.
gcloud
El comando
gcloud beta pam entitlements update
actualiza un derecho específico.
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
ENTITLEMENT_ID
: Es el ID del derecho que se actualizará.RESOURCE_TYPE
: Opcional Es el tipo de recurso al que pertenece el derecho. Usa el valororganization
,folder
oproject
.RESOURCE_ID
: Se usa conRESOURCE_TYPE
. Es el ID del proyecto, la carpeta o la organización de Google Cloud para el que deseas administrar los derechos. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.FILENAME
: Es un archivo que contiene la configuración modificada del derecho. Para crear este archivo, obtén o exporta el derecho existente, guarda la respuesta en un archivo YAML y, luego, modifícalo para usarlo como cuerpo de tu solicitud de actualización. Debes incluir el ETAG en el cuerpo para actualizar la versión más reciente del derecho. Para ver los campos disponibles que puedes cambiar o agregar, consulta Cómo crear derechos de forma programática.
Ejecuta el siguiente 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
Deberías recibir una respuesta similar a la que figura a continuación:
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
El método updateEntitlement
de la API de Privileged Access Manager actualiza un derecho específico.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
SCOPE
: La organización, la carpeta o el proyecto en el que se encuentra el derecho, en el formatoorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
oprojects/PROJECT_ID
. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.ENTITLEMENT_ID
: Es el ID del derecho que se actualizará.-
UPDATED_FIELDS
: Es una lista separada por comas de los campos que se actualizan en el derecho. Por ejemplo:?updateMask=privilegedAccess,maxRequestDuration
Para todos los campos actualizables, establece la máscara de actualización en
*
. REQUEST_ID
: Opcional Debe ser un UUID distinto de cero. Si el servidor recibe una solicitud con un ID de solicitud, verifica si ya se completó otra solicitud con ese ID en los últimos 60 minutos. Si es así, se ignora la solicitud nueva.request.json
: Es un archivo que contiene la configuración modificada del derecho. Para crear este archivo, obtén o exporta el derecho existente, guarda la respuesta en un archivo llamadorequest.json
y, luego, modifícalo para usarlo como cuerpo de tu solicitud de actualización. Debes incluir el ETAG en el cuerpo para actualizar la versión más reciente del derecho. Para ver los campos disponibles que puedes cambiar o agregar, consulta Cómo crear derechos de forma programática.
Método HTTP y URL:
PATCH https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?updateMask=UPDATED_FIELDS&requestId=REQUEST_ID
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "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 }
Para verificar el progreso de una operación de actualización, puedes enviar una solicitud GET
al siguiente extremo:
https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations/OPERATION_ID
Envía una solicitud GET
al siguiente extremo para enumerar todas las operaciones:
https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations
Borra derechos de manera programática
gcloud
El comando
gcloud beta pam entitlements delete
borra un derecho específico.
Antes de usar cualquiera de los datos de comando a continuación, realiza los siguientes reemplazos:
ENTITLEMENT_ID
: Es el ID del derecho que se borrará.RESOURCE_TYPE
: Opcional Es el tipo de recurso al que pertenece el derecho. Usa el valororganization
,folder
oproject
.RESOURCE_ID
: Se usa conRESOURCE_TYPE
. Es el ID del proyecto, la carpeta o la organización de Google Cloud para el que deseas administrar los derechos. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.
Ejecuta el siguiente 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
Deberías recibir una respuesta similar a la que figura a continuación:
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
El método deleteEntitlement
de la API de Privileged Access Manager borra un derecho específico.
Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:
SCOPE
: La organización, la carpeta o el proyecto en el que se borrará el derecho, en el formato deorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
oprojects/PROJECT_ID
. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpeta y organización son numéricos, como123456789012
.ENTITLEMENT_ID
: Es el ID del derecho que se borrará.REQUEST_ID
: Opcional Debe ser un UUID distinto de cero. Si el servidor recibe una solicitud con un ID de solicitud, verifica si ya se completó otra solicitud con ese ID en los últimos 60 minutos. Si es así, se ignora la solicitud nueva.
Método HTTP y URL:
DELETE https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/entitlements/ENTITLEMENT_ID?requestId=REQUEST_ID
Para enviar tu solicitud, expande una de estas opciones:
Deberías recibir una respuesta JSON similar a la que se muestra a continuación:
{ "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 }
Para verificar el progreso de una operación de eliminación, puedes enviar una solicitud GET
al siguiente extremo:
https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations/OPERATION_ID
Envía una solicitud GET
al siguiente extremo para enumerar todas las operaciones:
https://privilegedaccessmanager.googleapis.com/v1beta/SCOPE/locations/global/operations