Puedes crear derechos para permitir la elevación temporal de privilegios para un conjunto de principales. Ten en cuenta lo siguiente al crear derechos:
Los derechos se pueden crear a nivel de organización, carpeta o proyecto. Los roles concedidos por un derecho en cada nivel siguen la Trusted Cloud by S3NS jerarquía de recursos. Por ejemplo, los roles concedidos por un derecho a nivel de organización se heredan a nivel de carpeta y de proyecto.
Si añade un grupo como solicitante a un derecho, todas las cuentas individuales de ese grupo podrán solicitar la concesión de ese derecho. Sin embargo, solo la cuenta individual que solicita la concesión puede recibir privilegios elevados.
Si añades un grupo como aprobador de un derecho, todas las cuentas individuales de ese grupo podrán aprobar o denegar una solicitud de concesión.
Se admiten los roles básicos (Administrador, Escritor y Lector), pero no los roles básicos antiguos (Propietario, Editor y Lector).
No incluyas roles de agente de servicio en los derechos.
Algunos roles de agente de servicio contienen permisos muy potentes, y los permisos de estos roles pueden cambiar sin previo aviso. En su lugar, elige otro rol predefinido o crea un rol personalizado con los permisos que necesites.
Antes de empezar
Comprueba que hayas habilitado Gestor de acceso privilegiado y configurado los permisos correspondientes.
Crear derechos con la Trusted Cloud consola
Para crear un derecho, sigue estas instrucciones:
Ve a la página Privileged Access Manager.
Selecciona la organización, la carpeta o el proyecto al que quieras aplicar el derecho.
Haz clic en la pestaña Derechos.
Haz clic en Crear.
Añada los siguientes detalles de los derechos:
Nombre del derecho.
Se pueden conceder hasta 30 roles en la organización, la carpeta o el proyecto.
También puedes añadir condiciones de gestión de identidades y accesos a estos roles de la misma forma que añades condiciones para permitir las vinculaciones de roles de políticas. Sin embargo, en los derechos de Privileged Access Manager, el uso de condiciones que comprueban las etiquetas de un recurso está en vista previa.
Cuánto tiempo pueden durar las concesiones en comparación con el derecho. La duración máxima que puedes definir para un derecho es de 24 horas.
Haz clic en Siguiente.
Busca y añade hasta 20 grupos principales solicitantes válidos para el derecho. Se admiten todos los tipos principales, excepto
allUsers
yallAuthenticatedUsers
. Puedes añadir más de 20 identidades incluyéndolas en un grupo y añadiendo el grupo al derecho.Elige si las entidades principales deben justificar la solicitud de concesión.
Haz clic en Siguiente.
Elige si quieres permitir que se concedan roles sin aprobación o busca y añade las entidades de seguridad válidas que puedan aprobar la solicitud. Los tipos de principales válidos son los siguientes:
Cuentas de Google
Grupos de Google
Dominios de Google Workspace
Identificadores de grupos de Workforce
Si decides que haya aprobadores, también debes elegir si estos deben justificar la aprobación de la solicitud de concesión. Puedes añadir hasta 20 principales aprobadores por derecho. Puedes añadir más de 20 identidades incluyéndolas en un grupo y añadiendo el grupo al derecho.
Haz clic en Siguiente.
Opcional: Añade las direcciones de correo de las personas a las que se debe notificar cuando se pueda solicitar el derecho, cuando haya una concesión pendiente de aprobación y cuando se conceda acceso a un solicitante. Las identidades de Google asociadas al derecho, como los aprobadores y los solicitantes, 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 fuerza de trabajo.
Haz clic en Crear derecho.
Los derechos recién creados pueden tardar unos minutos en propagarse y estar listos para usarse.
Crear derechos mediante programación
gcloud
El comando
gcloud pam entitlements create
crea un derecho a nivel de organización, carpeta o proyecto.
Antes de usar los datos de los comandos que se indican a continuación, haz los siguientes cambios:
ENTITLEMENT_ID
: ID del derecho que se va a crear. Un ID debe tener entre 4 y 63 caracteres, y usar los siguientes:[a-z0-9-]
. El primer carácter debe ser una letra.RESOURCE_TYPE
: opcional. El tipo de recurso al que pertenece el derecho. Usa el valororganization
,folder
oproject
.RESOURCE_ID
: se usa conRESOURCE_TYPE
. El ID de la organización, la carpeta o el proyecto para los que quieras gestionar los derechos. Trusted Cloud Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
.SCOPE
: la organización, la carpeta o el proyecto en el que se va a crear el derecho, con el formatoorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
oprojects/PROJECT_ID
. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
.RESOURCE_MANAGER_RESOURCE_TYPE
:Organization
,Folder
oProject
, según el ámbito.ROLE
: los roles que se asignarán cuando se conceda un derecho.TIME_IN_SECONDS
: duración máxima durante la cual se puede solicitar una concesión, expresada en segundos. El intervalo admitido es de entre 30 minutos (1800) y 24 horas (86400).-
REQUESTING_MEMBER
: entidades principales que pueden solicitar que se conceda el derecho. Se admiten todos los tipos de principal, exceptoallUsers
yallAuthenticatedUsers
. APPROVING_EMAIL
: opcional. Direcciones de correo adicionales a las que se debe enviar una notificación cuando se haya solicitado una concesión. Las identidades de Google asociadas a los aprobadores de la concesión se notifican 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.-
APPROVING_MEMBER
: entidades principales que pueden aprobar la solicitud de derecho. Los tipos de principales válidos son los siguientes:- Usuario
- Grupo
- Dominio
- Identificadores de grupos de Workforce
ADMIN_EMAIL_ADDRESS
: opcional. Direcciones de correo adicionales a las que se debe enviar una notificación cuando se conceda acceso a un solicitante. Las identidades de Google asociadas a los aprobadores de la concesión se notifican 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.REQUESTER_EMAIL_ADDRESS
: opcional. Direcciones de correo adicionales a las que se debe notificar cuando se pueda solicitar este derecho. Las identidades de Google asociadas a los solicitantes de la subvención se notifican 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.CONDITION_EXPRESSION
: opcional. La expresión de condición que especifica cuándo puede usar la entidad los permisos del rol. Esta condición solo se aplica cuando la concesión está activa.
Guarda el siguiente contenido en un archivo llamado entitlement.yaml
:
privilegedAccess: gcpIamAccess: resourceType: cloudresourcemanager.googleapis.com/RESOURCE_MANAGER_RESOURCE_TYPE resource: //cloudresourcemanager.googleapis.com/SCOPE roleBindings: - role: ROLE_1 conditionExpression: CONDITION_EXPRESSION_1 - role: ROLE_2 conditionExpression: CONDITION_EXPRESSION_2 maxRequestDuration: TIME_IN_SECONDSs eligibleUsers: - principals: - REQUESTING_MEMBER_1 - REQUESTING_MEMBER_2 approvalWorkflow: manualApprovals: requireApproverJustification: true steps: - approvalsNeeded: 1 approverEmailRecipients: - APPROVING_EMAIL_1 - APPROVING_EMAIL_2 approvers: - principals: - APPROVING_MEMBER_1 - APPROVING_MEMBER_2 requesterJustificationConfig: unstructured: {} additionalNotificationTargets: adminEmailRecipients: - ADMIN_EMAIL_ADDRESS_1 - ADMIN_EMAIL_ADDRESS_2 requesterEmailRecipients: - REQUESTER_EMAIL_ADDRESS_1 - REQUESTER_EMAIL_ADDRESS_2
Ejecuta el siguiente comando:
Linux, macOS o Cloud Shell
gcloud pam entitlements create \ ENTITLEMENT_ID \ --entitlement-file=entitlement.yaml \ --location=global \ --RESOURCE_TYPE=RESOURCE_ID
Windows (PowerShell)
gcloud pam entitlements create ` ENTITLEMENT_ID ` --entitlement-file=entitlement.yaml ` --location=global ` --RESOURCE_TYPE=RESOURCE_ID
Windows (cmd.exe)
gcloud pam entitlements create ^ ENTITLEMENT_ID ^ --entitlement-file=entitlement.yaml ^ --location=global ^ --RESOURCE_TYPE=RESOURCE_ID
Deberías recibir una respuesta similar a la siguiente:
Create request issued for: [ENTITLEMENT_ID] Waiting for operation [projects/my-project/locations/global/operations/OPERATION_ID] to complete...done. Created entitlement [ENTITLEMENT_ID]. additionalNotificationTargets: {} 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 createEntitlement
de la API Privileged Access Manager crea un derecho a nivel de organización, carpeta o proyecto.
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 va a crear el derecho, con el formatoorganizations/ORGANIZATION_ID
,folders/FOLDER_ID
oprojects/PROJECT_ID
. Los IDs de proyecto son cadenas alfanuméricas, comomy-project
. Los IDs de carpetas y organizaciones son numéricos, como123456789012
.ENTITLEMENT_ID
: ID del derecho que se va a crear. Un ID debe tener entre 4 y 63 caracteres, y usar los siguientes:[a-z0-9-]
. El primer carácter debe ser una letra.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.RESOURCE_MANAGER_RESOURCE_TYPE
:Organization
,Folder
oProject
, según el ámbito.ROLE
: los roles que se asignarán cuando se conceda un derecho.TIME_IN_SECONDS
: duración máxima durante la cual se puede solicitar una concesión, expresada en segundos. El intervalo admitido es de entre 30 minutos (1800) y 24 horas (86400).-
REQUESTING_MEMBER
: Entidades principales que pueden solicitar que se conceda el derecho. Se admiten todos los tipos de principal, exceptoallUsers
yallAuthenticatedUsers
. -
APPROVING_MEMBER
: entidades principales que pueden aprobar la solicitud de derecho. Los tipos de principales válidos son los siguientes:- Usuario
- Grupo
- Dominio
- Identificadores de grupos de Workforce
APPROVING_EMAIL
: opcional. Direcciones de correo adicionales a las que se debe enviar una notificación cuando se haya solicitado una concesión. Las identidades de Google asociadas a los aprobadores de la concesión se notifican 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.ADMIN_EMAIL_ADDRESS
: opcional. Direcciones de correo adicionales a las que se debe enviar una notificación cuando se conceda acceso a un solicitante. Las identidades de Google asociadas a los aprobadores de la concesión se notifican 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.REQUESTER_EMAIL_ADDRESS
: opcional. Direcciones de correo adicionales a las que se debe notificar cuando se pueda solicitar este derecho. Las identidades de Google asociadas a los solicitantes de la subvención se notifican 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.CONDITION_EXPRESSION
: opcional. La expresión de condición que especifica cuándo puede usar la entidad los permisos del rol. Esta condición solo se aplica cuando la concesión está activa.
Método HTTP y URL:
POST https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/entitlements?entitlementId=ENTITLEMENT_ID&requestId=REQUEST_ID
Cuerpo JSON de la solicitud:
{ "privilegedAccess": { "gcpIamAccess": { "resourceType": "cloudresourcemanager.googleapis.com/RESOURCE_MANAGER_RESOURCE_TYPE", "resource": "//cloudresourcemanager.googleapis.com/SCOPE", "roleBindings": [ { "role": "ROLE_1", "conditionExpression": "CONDITION_EXPRESSION_1" }, { "role": "ROLE_2", "conditionExpression": "CONDITION_EXPRESSION_2" } ] } }, "maxRequestDuration": "TIME_IN_SECONDSs", "eligibleUsers": [ { "principals": [ "REQUESTING_MEMBER_1", "REQUESTING_MEMBER_2", ... ] } ], "approvalWorkflow": { "manualApprovals": { "requireApproverJustification": true, "steps": [ { "approvers": [ { "principals": [ "APPROVING_MEMBER_1", "APPROVING_MEMBER_2", ... ] } ], "approvalsNeeded": 1, "approverEmailRecipients": [ "APPROVING_EMAIL_1", "APPROVING_EMAIL_2", ... ] } ] } }, "requesterJustificationConfig": { "unstructured": { } }, "additionalNotificationTargets": { "adminEmailRecipients": [ "ADMIN_EMAIL_ADDRESS_1", "ADMIN_EMAIL_ADDRESS_2", ... ], "requesterEmailRecipients": [ "REQUESTER_EMAIL_ADDRESS_1", "REQUESTER_EMAIL_ADDRESS_2", ... ] } }
Para enviar tu solicitud, despliega una de estas opciones:
Deberías recibir una respuesta JSON similar a la siguiente:
{ "name": "projects/my-project/locations/global/operations/OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.privilegedaccessmanager.v1.OperationMetadata", "createTime": "2024-03-05T03:35:14.596739353Z", "target": "projects/my-project/locations/global/entitlements/ENTITLEMENT_ID", "verb": "create", "requestedCancellation": false, "apiVersion": "v1" }, "done": false }
Para comprobar el progreso de una operación de creación, puedes enviar una solicitud GET
al siguiente endpoint:
https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/operations/OPERATION_ID
Envía una solicitud GET
al siguiente endpoint para enumerar todas las operaciones:
https://privilegedaccessmanager.googleapis.com/v1/SCOPE/locations/global/operations
Terraform
Puedes usar Terraform para crear derechos. Para obtener más información, consulta google_privileged_access_manager_entitlement en la documentación de Terraform. Los derechos recién creados pueden tardar unos minutos en propagarse y estar listos para usarse.
Config Connector
Puedes usar Kubernetes Config Connector para crear derechos. Para obtener más información, consulta PrivilegedAccessManagerEntitlement en la documentación de Config Connector. Los derechos recién creados pueden tardar unos minutos en propagarse y estar listos para usarse.
Siguientes pasos
- Solicitar acceso elevado temporal
- Aprobar o denegar permisos
- Ver, actualizar y eliminar derechos
- Auditar eventos de derechos