Configura políticas de IAM

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

Políticas generales de IAM

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

  • Nivel del grupo de AC para administrar el acceso a un grupo de AC específico y a las AC de ese grupo.
  • A nivel del proyecto o de la 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 recurso superior. Por ejemplo, un usuario al que se le otorga el rol de Auditor (roles/privateca.auditor) a nivel del proyecto puede ver todos los recursos del proyecto. Todas las AC de ese grupo heredan las políticas de IAM que se configuran en un grupo de AC.

No se pueden otorgar roles de IAM en certificados ni recursos de AC.

Políticas de IAM condicionales

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

Las vinculaciones de roles condicionales de IAM te permiten otorgar acceso a los principales solo si se cumplen las condiciones especificadas. Por ejemplo, si el rol de solicitante de certificados está vinculado al usuario alice@example.com en un grupo de AC con la condición de que los SAN de DNS solicitados sean 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 con 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. Para obtener información sobre el uso de expresiones CEL para las condiciones de IAM, consulta Dialecto de Common Expression Language (CEL) para políticas de IAM.

Antes de comenzar

  • Habilita la API.
  • Sigue las instrucciones de cualquiera de los instructivos para crear una AC y un grupo de AC.
  • Lee acerca de los roles de IAM disponibles para Certificate Authority Service.

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

En las siguientes situaciones, se describe cómo puedes otorgarles a los usuarios acceso a los recursos del servicio de AC a nivel del proyecto.

Administrar recursos

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

Para asignar el rol de administrador de servicios de CA (roles/privateca.admin) a un usuario a nivel del 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 Grant access.

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

  5. En la lista Seleccionar un rol, selecciona el rol Administrador del servicio de AC.

  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: El usuario o la cuenta de servicio a los que deseas asignar el rol de administrador de servicios de CA.

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

Crea recursos

Un administrador de operaciones del servicio de AC (roles/privateca.caManager) puede crear, actualizar y borrar grupos de AC y AC. Este rol también permite que el llamador revoque los certificados emitidos por las AC del grupo de AC.

Para asignar el rol de administrador de operaciones de servicios de CA (roles/privateca.caManager) a un usuario a nivel del 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 Grant access.

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

  5. En la lista Seleccionar un rol, selecciona 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 para el que deseas agregar el rol de IAM.

La marca --role toma el rol de IAM que deseas asignar 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, si creas una AC con una clave de Cloud KMS existente, también se requiere que el llamador sea 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 a las operaciones de encriptación y desencriptación. Para obtener más información sobre los roles de IAM para Cloud KMS, consulta Cloud KMS: Permisos y roles.

Para otorgar el rol de administrador de Cloud KMS (roles/cloudkms.admin) a un usuario, sigue estas instrucciones:

Console

  1. En la consola de Google Cloud, ve a la página Servicio de administración de claves de Cloud.

    Ir a Cloud Key Management Service

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

  3. Haz clic en la clave que es la clave de firma de la AC.

  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 del principal o cualquier otro identificador.

  7. En la lista Seleccionar un rol, selecciona el rol de 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: El identificador único de la clave.
  • KEYRING: Es el llavero de claves que contiene la clave. Para obtener más información sobre los llaveros, consulta Llaveros.
  • MEMBER: Es el usuario o la cuenta de servicio para el que quieres agregar la vinculación de IAM.

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

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

Recursos de auditoría

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

Para asignar el rol de auditor de servicios de CA (roles/privateca.auditor) a un usuario a nivel del 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 Grant access.

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

  5. En la lista Seleccionar un rol, selecciona el rol Auditor de servicios de CA.

  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 el rol de Auditor de servicios de la AC (roles/privateca.auditor).

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

Configura vinculaciones de políticas de IAM a nivel del recurso

En esta sección, se describe cómo puedes configurar vinculaciones de políticas de IAM para un recurso en particular en el servicio de AC.

Administrar grupos de CA

Puedes otorgar el rol de Administrador de servicios de AC (roles/privateca.admin) a nivel del recurso para administrar un grupo de AC o una plantilla de certificado específicos.

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 AC y, luego, selecciona el grupo de AC 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 del principal o algún otro identificador.

  6. En la lista Seleccionar un rol, selecciona el rol Administrador del servicio de AC.

  7. Haz clic en Guardar. Al principal se le otorga el rol seleccionado en el recurso del grupo de AC.

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 AC para el que deseas establecer la política de IAM.
  • LOCATION: Es la ubicación del grupo de AC. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: El usuario o la cuenta de servicio al que quieres asignar el rol de IAM.

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

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

Sigue los mismos pasos para otorgar el rol de Administrador de servicios de AC en una plantilla de certificado.

También puedes otorgar el rol de Administrador de operaciones del servicio de AC (roles/privateca.caManager) en un grupo de AC específico. Este rol permite que el llamador 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 AC y, luego, selecciona el grupo de AC 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 del principal o algún otro identificador.

  6. En la lista Seleccionar un rol, selecciona el rol Administrador de operaciones del servicio de CA.

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

gcloud

Para otorgar el rol de 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 AC.
  • LOCATION: Es la ubicación del grupo de AC. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el identificador único del usuario al que deseas asignar el rol de administrador de operaciones de servicio de la AC (roles/privateca.caManager).

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

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

Crea certificados

Otorga el rol de Administrador de certificados del servicio de AC (roles/privateca.certificateManager) a los usuarios para permitirles enviar solicitudes de emisión de certificados a un grupo de AC. Este rol también otorga acceso de lectura a los recursos del servicio de CA. Para permitir solo la creación de certificados sin acceso de lectura, otorga el rol de Solicitante del certificado del servicio de AC (roles/privateca.certificateRequester). Para obtener más información sobre los roles de IAM de CA Service, consulta Control de acceso con IAM.

Para otorgarle al usuario acceso para crear certificados para una AC específica, sigue las instrucciones que se indican a continuación.

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 AC y, luego, selecciona el grupo de AC 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 del principal o algún otro identificador.

  6. En la lista Seleccionar un rol, selecciona el rol Administrador de certificados del servicio de AC.

  7. Haz clic en Guardar. Al 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 AC.
  • LOCATION: Es la ubicación del grupo de AC. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el identificador único del usuario al que deseas asignar el rol de Administrador de certificados del servicio de AC (roles/privateca.certificateManager).

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

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

Para agregar una política de IAM a 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 del principal o algún otro identificador.

  6. Selecciona un rol para otorgar de la lista desplegable Seleccionar 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 para el que quieres agregar la vinculación de políticas de IAM.
  • ROLE: Es el rol 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.

Cómo quitar vinculaciones de políticas de IAM

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

Para quitar una política de IAM de un grupo de AC en particular, usa el siguiente comando 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 AC. Para obtener la lista completa de ubicaciones, consulta Ubicaciones.
  • MEMBER: Es el usuario o la cuenta de servicio para el que quieres quitar la vinculación de la política de IAM.
  • ROLE: Es el rol que deseas quitarle al miembro.

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

Para quitar una política de IAM de 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: 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 para el que quieres quitar la vinculación de la política de IAM.
  • ROLE: Es el rol que deseas quitarle al 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 Cómo revocar el acceso.

¿Qué sigue?