Configura políticas de IAM

En esta página, se describe cómo configurar las políticas de Identity and Access Management (IAM) que permiten a los miembros crear y administrar recursos de Certificate Authority Service. Para obtener más información sobre IAM, consulta Descripción general de IAM.

Políticas generales de IAM

En CA Service, otorgas funciones de IAM a usuarios o cuentas de servicio para crear y administrar recursos de CA Service. Puedes agregar estas vinculaciones de funciones en los siguientes niveles:

  • Nivel de grupo de CA para administrar el acceso a un grupo de CA específico y a las CA en ese grupo.
  • A nivel de proyecto o de organización para otorgar acceso a todos los grupos de AC en ese alcance.

Los roles se heredan si se otorgan en un nivel de recursos superior. Por ejemplo, un usuario al que se le otorga la función de Auditor (roles/privateca.auditor) a nivel de proyecto puede ver todos los recursos del proyecto. Todas las AC de ese grupo de AC heredan las políticas de IAM establecidas en un grupo de autoridades certificadoras (CA).

No se pueden otorgar funciones de IAM en los certificados ni en los recursos de CA.

Políticas de IAM condicionales

Si tienes un grupo de AC compartido que pueden usar varios usuarios autorizados para solicitar diferentes tipos de certificados, puedes definir condiciones de IAM para aplicar el acceso basado en atributos a fin de realizar ciertas operaciones en un grupo de AC.

Las vinculaciones de funciones condicionales de IAM te permiten otorgar acceso a las principales solo si se cumplen las condiciones especificadas. Por ejemplo, si la función de solicitante de certificados está vinculada al usuario alice@example.com en un grupo de AC con la condición de que los SAN de DNS solicitados son un subconjunto de ['alice@example.com', 'bob@example.com'], ese usuario puede solicitar certificados del mismo grupo de AC solo si el SAN solicitado es uno de esos dos valores permitidos. Puedes establecer condiciones en las vinculaciones de IAM mediante expresiones de Common Expression Language (CEL). Estas condiciones pueden ayudarte a restringir aún más el tipo de certificados que un usuario puede solicitar. Si deseas obtener información sobre el uso de expresiones en CEL para las condiciones de IAM, consulta el dialecto de Common Expression Language (CEL) para las políticas de IAM.

Antes de comenzar

  • Habilita la API.
  • Sigue las instrucciones de cualquiera de las guías de inicio rápido para crear un grupo de AC y AC.
  • Lee sobre las funciones de IAM disponibles para Certificate Authority Service.

Configura vinculaciones de políticas de IAM a nivel de proyecto

En las siguientes situaciones, se describe cómo puedes otorgar a los usuarios acceso a los recursos de CA Service a nivel de proyecto.

Administrar recursos

Un administrador del servicio de CA (roles/privateca.admin) tiene los permisos para administrar todos los recursos del servicio de CA y establecer políticas de IAM en grupos de CA y plantillas de certificados.

Para asignar la función de administrador de CA Service (roles/privateca.admin) a un usuario a nivel de proyecto, sigue estas instrucciones:

Console

  1. En la consola de Google Cloud, ve a la página IAM.

    Ir a Identity and Access Management

  2. Selecciona el proyecto.

  3. Haz clic en Otorgar acceso.

  4. En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal o otro identificador.

  5. En la lista Selecciona un rol, elige el rol Administrador de servicio de CA.

  6. Haz clic en Guardar.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.admin

Reemplaza lo siguiente:

  • PROJECT_ID: Es el identificador único del proyecto.
  • MEMBER: Es el usuario o la cuenta de servicio a los que deseas asignar la función de administrador del Servicio de CA.

La marca --role toma el rol de IAM que deseas asignarle al miembro.

Crea recursos

Un administrador de operaciones del servicio de CA (roles/privateca.caManager) puede crear, actualizar y borrar grupos de CA y CA. Esta función también permite que el emisor revoque los certificados emitidos por las AC en el grupo de AC.

Para asignar la función de administrador de operaciones de CA Service (roles/privateca.caManager) a un usuario a nivel de proyecto, sigue estas instrucciones:

Console

  1. En la consola de Google Cloud, ve a la página IAM.

    Ir a Identity and Access Management

  2. Selecciona el proyecto.

  3. Haz clic en Otorgar acceso.

  4. En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal o otro identificador.

  5. En la lista Selecciona una función, elige el rol Administrador de operaciones del servicio de CA.

  6. Haz clic en Guardar.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.caManager

Reemplaza lo siguiente:

  • PROJECT_ID: Es el identificador único del proyecto.
  • MEMBER: Es el usuario o la cuenta de servicio a los que deseas agregar el rol de IAM.

La marca --role toma el rol de IAM que deseas asignarle al miembro.

Para obtener más información sobre el comando gcloud projects add-iam-policy-binding, consulta gcloud projects add-iam-policy-binding.

De manera opcional, crear una CA con una clave de Cloud KMS existente también requiere que el emisor sea un administrador de la clave de Cloud KMS.

El administrador de Cloud KMS (roles/cloudkms.admin) tiene acceso completo a todos los recursos de Cloud KMS, excepto las operaciones de encriptación y desencriptación. Si quieres obtener más información sobre las funciones de IAM para Cloud KMS, consulta Cloud KMS: Permisos y funciones.

Para otorgar la función de administrador de Cloud KMS (roles/cloudkms.admin) a un usuario, usa las siguientes instrucciones:

Console

  1. En la consola de Google Cloud, ve a la página Cloud Key Management Service.

    Ir a Cloud Key Management Service

  2. En Llaveros de claves, haz clic en el llavero de claves que contiene la clave de firma de la CA.

  3. Haz clic en la clave que sea la clave de firma de la CA.

  4. Si el panel de información no está visible, haz clic en Mostrar panel de información. Luego, haz clic en Permisos.

  5. Haz clic en Agregar principal.

  6. En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal o otro identificador.

  7. En la lista Selecciona un rol, elige el rol Administrador de Cloud KMS.

  8. Haz clic en Guardar.

gcloud

gcloud kms keys add-iam-policy-binding KEY \
  --keyring=KEYRING --location=LOCATION \
  --member=MEMBER \
  --role=roles/cloudkms.admin

Reemplaza lo siguiente:

  • KEY: Es el identificador único de la clave.
  • KEYRING: Es el llavero de claves que contiene la clave. Consulta Llaveros de claves para obtener más información sobre el tema.
  • MEMBER: Es el usuario o la cuenta de servicio a la que deseas agregar la vinculación de IAM.

La marca --role toma el rol de IAM que deseas asignarle al miembro.

Para obtener más información sobre el comando gcloud kms keys add-iam-policy-binding, consulta gcloud kms keys add-iam-policy-binding.

Recursos de auditoría

Un auditor del Servicio de CA (roles/privateca.auditor) tiene acceso de lectura a todos los recursos del Servicio de CA. Cuando se otorga para un grupo de CA específico, otorga acceso de lectura al grupo de CA. Si el grupo de AC está en el nivel empresarial, el usuario con esta función también puede ver los certificados y las CRL que emiten las AC en el grupo de AC. Asigna esta función a las personas que son responsables de validar la seguridad y las operaciones del grupo de CA.

Para asignar la función de auditor de CA Service (roles/privateca.auditor) a un usuario a nivel de proyecto, sigue estas instrucciones:

Console

  1. En la consola de Google Cloud, ve a la página IAM.

    Ir a Identity and Access Management

  2. Selecciona el proyecto.

  3. Haz clic en Otorgar acceso.

  4. En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal o otro identificador.

  5. En la lista Selecciona un rol, elige el rol Auditor de CA Service.

  6. Haz clic en Guardar.

gcloud

gcloud projects add-iam-policy-binding PROJECT_ID \
  --member=MEMBER \
  --role=roles/privateca.auditor

Reemplaza lo siguiente:

  • PROJECT_ID: Es el identificador único del proyecto.
  • MEMBER: Es el identificador único del usuario al que deseas asignar la función de auditor de CA Service (roles/privateca.auditor).

La marca --role toma el rol de IAM que deseas asignarle al miembro.

Configura vinculaciones de políticas de IAM a nivel de recursos

En esta sección, se describe cómo configurar las vinculaciones de políticas de IAM para un recurso específico en el Servicio de CA.

Administrar grupos de CA

Puedes otorgar la función de administrador del servicio de CA (roles/privateca.admin) en el nivel de recursos para administrar un grupo de CA específico o una plantilla de certificado.

Console

  1. En la consola de Google Cloud, ve a la página Certificate Authority Service.

    Ir a Certificate Authority Service

  2. Haz clic en la pestaña Administrador de grupos de CA y, luego, selecciona el grupo de CA para el que deseas otorgar permisos.

  3. Si el panel de información no está visible, haz clic en Mostrar panel de información. Luego, haz clic en Permisos.

  4. Haz clic en Agregar principal.

  5. En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal o algún otro identificador.

  6. En la lista Selecciona un rol, elige el rol Administrador de servicio de CA.

  7. Haz clic en Guardar. A la principal se le otorga el rol seleccionado en el recurso del grupo de CA.

gcloud

Para configurar la política de IAM, ejecuta el siguiente comando:

gcloud privateca pools add-iam-policy-binding POOL_ID \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.admin

Reemplaza lo siguiente:

  • POOL_ID: Es el identificador único del grupo de CA para el que deseas establecer la política de IAM.
  • LOCATION: Es la ubicación del grupo de CA. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el usuario o la cuenta de servicio a los que deseas asignar la función de IAM.

La marca --role toma el rol de IAM que deseas asignarle al miembro.

Para obtener más información sobre el comando gcloud privateca pools add-iam-policy-binding, consulta gcloud privateca pool add-iam-policy-binding.

Sigue los mismos pasos para otorgar la función de Administrador del servicio de CA en una plantilla de certificado.

También puedes otorgar la función de administrador de operaciones del servicio de CA (roles/privateca.caManager) en un grupo de CA específico. Este rol permite que el emisor revoque los certificados emitidos por las AC en ese grupo de AC.

Console

  1. En la consola de Google Cloud, ve a la página Certificate Authority Service.

    Ir a Certificate Authority Service

  2. Haz clic en la pestaña Administrador de grupos de CA y, luego, selecciona el grupo de CA para el que deseas otorgar permisos.

  3. Si el panel de información no está visible, haz clic en Mostrar panel de información. Luego, haz clic en Permisos.

  4. Haz clic en Agregar principal.

  5. En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal o algún otro identificador.

  6. En la lista Selecciona un rol, elige el rol Administrador de operaciones del servicio de CA.

  7. Haz clic en Guardar. A la principal se le otorga el rol seleccionado en el recurso del grupo de AC al que pertenece la AC.

gcloud

A fin de otorgar la función a un grupo de AC específico, ejecuta el siguiente comando de gcloud:

gcloud privateca pools add-iam-policy-binding POOL_ID \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.caManager

Reemplaza lo siguiente:

  • POOL_ID: Es el identificador único del grupo de CA.
  • LOCATION: Es la ubicación del grupo de CA. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el identificador único del usuario al que deseas asignar la función de administrador de operaciones de CA Service (roles/privateca.caManager).

La marca --role toma el rol de IAM que deseas asignarle al miembro.

Para obtener más información sobre el comando gcloud privateca pools add-iam-policy-binding, consulta gcloud privateca pool add-iam-policy-binding.

Crea certificados

Otorga la función de administrador de certificados del servicio de CA (roles/privateca.certificateManager) a los usuarios para permitirles enviar solicitudes de emisión de certificados a un grupo de CA. Esta función también otorga acceso de lectura a los recursos de CA Service. Para permitir solo la creación de certificados sin acceso de lectura, otorga la función de solicitante de certificados de servicio de CA (roles/privateca.certificateRequester). Si quieres obtener más información sobre las funciones de IAM para el servicio de CA, consulta Control de acceso con IAM.

Si deseas otorgar al usuario acceso para crear certificados para una AC específica, sigue estas instrucciones.

Console

  1. En la consola de Google Cloud, ve a la página Certificate Authority Service.

    Ir a Certificate Authority Service

  2. Haz clic en Administrador de grupos de CA y, luego, selecciona el grupo de CA para el que deseas otorgar permisos.

  3. Si el panel de información no está visible, haz clic en Mostrar panel de información. Luego, haz clic en Permisos.

  4. Haz clic en Agregar principal.

  5. En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal o algún otro identificador.

  6. En la lista Seleccionar un rol, elige el rol Administrador de certificados de servicio de CA.

  7. Haz clic en Guardar. A la principal se le otorga el rol seleccionado en el recurso del grupo de AC al que pertenece la AC.

gcloud

gcloud privateca pools add-iam-policy-binding 'POOL_ID' \
  --location LOCATION \
  --member MEMBER \
  --role roles/privateca.certificateManager

Reemplaza lo siguiente:

  • POOL_ID: Es el identificador único del grupo de CA.
  • LOCATION: Es la ubicación del grupo de CA. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el identificador único del usuario al que deseas asignar la función de administrador de certificados del Servicio de CA (roles/privateca.certificateManager).

La marca --role toma el rol de IAM que deseas asignarle al miembro.

Agrega vinculaciones de políticas de IAM a una plantilla de certificado

Para agregar una política de IAM en una plantilla de certificado en particular, sigue estas instrucciones:

Console

  1. En la consola de Google Cloud, ve a la página Certificate Authority Service.

    Ir a Certificate Authority Service

  2. Haz clic en la pestaña Administrador de plantillas y, luego, selecciona la plantilla de certificado para la que deseas otorgar permisos.

  3. Si el panel de información no está visible, haz clic en Mostrar panel de información. Luego, haz clic en Permisos.

  4. Haz clic en Agregar principal.

  5. En el campo Principales nuevas, ingresa la dirección de correo electrónico de la principal o algún otro identificador.

  6. Selecciona el rol que quieres otorgar en la lista desplegable Selecciona un rol.

  7. Haz clic en Guardar.

gcloud

gcloud privateca templates add-iam-policy-binding TEMPLATE_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Reemplaza lo siguiente:

  • LOCATION: Es la ubicación de la plantilla de certificado. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el usuario o la cuenta de servicio a la que deseas agregar la vinculación de la política de IAM.
  • ROLE: Es la función que deseas otorgar al miembro.

Para obtener más información sobre el comando gcloud privateca templates add-iam-policy-binding, consulta gcloud privateca templates add-iam-policy-binding.

Para obtener más información sobre cómo modificar el rol de IAM de un usuario, consulta Otorga acceso.

Quita vinculaciones de políticas de IAM

Puedes quitar una vinculación de política de IAM existente con el comando remove-iam-policy-binding de Google Cloud CLI.

Para quitar una política de IAM en un grupo de AC en particular, usa el siguiente comando de gcloud:

gcloud

gcloud privateca pools remove-iam-policy-binding POOL_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Reemplaza lo siguiente:

  • LOCATION: Es la ubicación del grupo de CA. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el usuario o la cuenta de servicio de los que deseas quitar la vinculación de la política de IAM.
  • ROLE: Es la función que deseas quitar del miembro.

Para obtener más información sobre el comando gcloud privateca pools remove-iam-policy-binding, consulta gcloud privateca groups remove-iam-policy-binding.

Para quitar una política de IAM en una plantilla de certificado en particular, usa el siguiente comando gcloud:

gcloud

gcloud privateca templates remove-iam-policy-binding TEMPLATE_ID \
  --location=LOCATION \
  --member=MEMBER \
  --role=ROLE

Reemplaza lo siguiente:

  • LOCATION: Es la ubicación de la plantilla de certificado. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el usuario o la cuenta de servicio de los que deseas quitar la vinculación de la política de IAM.
  • ROLE: Es la función que deseas quitar del miembro.

Para obtener más información sobre el comando gcloud privateca templates remove-iam-policy-binding, consulta gcloud privateca templates remove-iam-policy-binding.

Para obtener más información sobre cómo quitar el rol de IAM de un usuario, consulta Revoca el acceso.

¿Qué sigue?