Personalización de almacenes de confianza para la verificación de certificados TLS

Descubra cómo agregar grupos de autoridades de certificación (CA) y autoridades de certificación a almacenes de confianza personalizados con el gateway de API.

Los gateways de API que cree con el servicio de gateway de API verifican los certificados TLS que se les presentan mediante un almacén de confianza. El almacén de confianza puede contener certificados raíz de autoridad de certificación (CA) y grupos de CA de certificados raíz e intermedios. Se agrega un grupo de autoridades de certificación por defecto al almacén de confianza de cada gateway de API, que contiene certificados de autoridades de certificación públicas conocidas. El grupo de autoridades de certificación por defecto permite al gateway de API verificar los certificados TLS presentados por los servicios de backend.

Además del grupo de autoridades de certificación por defecto, puede agregar los certificados raíz de otras autoridades de certificación y otros grupos de autoridades de certificación al almacén de confianza de un gateway de API. Estos grupos de CA y CA adicionales se denominan CA y grupos de CA personalizados. Para agregar un grupo de CA o CA personalizado al almacén de confianza de un gateway de API, primero debe crear un recurso de CA o un recurso de grupo de CA en el servicio Certificates. Una vez creado el recurso en el servicio Certificates, puede agregarlo al almacén de confianza del gateway de API. La adición de CA y grupos de CA personalizados permite personalizar el almacén de confianza para satisfacer sus necesidades.

Después de agregar CA y grupos de CA personalizados al almacén de confianza, las conexiones TLS al gateway de API (incluidos los backends HTTPS y la caché de respuesta) se verifican mediante el grupo de CA por defecto y los grupos de CA y CA personalizados. Además, si ha especificado soporte de mTLS para un despliegue de API, el gateway de API utiliza CA personalizadas y grupos de CA personalizados para verificar los certificados de cliente de API. Tenga en cuenta que el gateway de API no utiliza el grupo de autoridades de certificación por defecto para verificar los certificados de cliente de API durante un establecimiento de comunicación mTLS. Por lo tanto, si desea que un gateway de API soporte mTLS, debe agregar CA y grupos de CA personalizados al almacén de confianza del gateway de API

Para algunos clientes, es obligatorio por razones de seguridad usar tiendas de confianza personalizadas que contengan solo CA privadas y ninguna CA pública. Para otros clientes, es probable que los requisitos comerciales impulsen el uso de tiendas de confianza personalizadas.

Adición de CA personalizadas y grupos de autoridades de certificación al almacén de confianza de un gateway de API

Para personalizar el almacén de confianza de un gateway de API agregando una autoridad de certificación (CA) o un grupo de CA personalizados, primero cree un recurso de autoridad de certificación (CA) o un recurso de grupo de autoridades de certificación (CA) en el servicio Certificates y, a continuación, agréguelo al almacén de confianza del gateway de API.

Paso 1: Creación de un recurso de CA y/o un recurso de grupo de CA en el servicio Certificates

Siga las instrucciones de la documentación del servicio Certificates para crear un recurso de autoridad de certificación (CA) y/o un recurso de grupo de autoridades de certificación

Paso 2: Agregar el recurso de CA o el recurso de grupo de CA al almacén de confianza de un gateway de API

Para agregar un recurso de autoridad de certificación (CA) o un recurso de grupo de autoridades de certificación al almacén de confianza de un gateway de API al crear o actualizar el gateway de API:

  1. Siga las instrucciones de Creación de un gateway de API o Actualización de un gateway o un despliegue de API para crear o actualizar un gateway de API mediante la consola o la CLI.
  2. Especifique el recurso de CA y/o el recurso de grupo de CA del servicio Certificates para agregarlo al almacén de confianza del gateway de API, como se describe en las siguientes instrucciones:

    • Si utiliza la consola: en la sección Opciones avanzadas del cuadro de diálogo Crear gateway o Editar gateway, haga clic en Agregar autoridades de certificación y seleccione uno o más recursos de CA o grupos de CA para agregarlos al almacén de confianza del gateway de API como CA personalizadas y grupos de CA personalizados (además del grupo de CA por defecto).
    • Si se utiliza la CLI: defina el argumento --ca-bundles file:///<filename> en el nombre de un archivo que contenga detalles de uno o más recursos de CA o recursos de grupo de CA para agregarlos al almacén de confianza del gateway de API como CA personalizadas y grupos de CA personalizados (además del grupo de CA por defecto). Especifique los detalles en JSON válido, con el siguiente formato:
      [
        {
          "type": "CA_BUNDLE",
          "caBundleId": "ocid1.cabundle..."
        },
        {
          "type": "CERTIFICATE_AUTHORITY",
          "certificateAuthorityId": "ocid1.cabundle..."
        }
      ]

    El servicio de gateway de API crea o actualiza el gateway de API con un almacén de confianza que contiene el grupo de CA y/o CA personalizado que ha especificado, además del grupo de CA por defecto.

Eliminación de CA y grupos de CA personalizados del almacén de confianza de un gateway de API

Después de agregar una autoridad de certificación (CA) o un grupo de CA personalizados al almacén de confianza de un gateway de API, puede decidir que el grupo de CA o CA ya no sea necesario.

Puede eliminar algunas o todas las CA y grupos de CA personalizados del almacén de confianza de un gateway de API, siempre que no haya ninguna API activada para mTLS desplegada en el gateway de API. Si hay una o más API activadas para mTLS desplegadas en el gateway de API, siempre debe haber al menos una CA o un grupo de CA personalizados en el almacén de confianza del gateway de API.

Uso de la consola

Para eliminar un grupo de CA o CA personalizado del almacén de confianza de un gateway de API mediante la consola:

  1. En la consola, abra el menú de navegación y haga clic en Servicios para desarrolladores. En Gestión de API, haga clic en Gateways.
  2. Seleccione un compartimento en el que tenga permiso para trabajar.
  3. En la página Gateways, haga clic en el nombre del gateway de API del que desea eliminar el grupo de CA o CA personalizado para mostrar la página Detalles de gateway.
  4. En la página Detalles de gateway, seleccione Autoridades de certificado en la lista Recursos para ver los grupos de CA y CA personalizados en el almacén de confianza del gateway de API.

  5. Haga clic en el menú Acciones (Menú Acciones) junto a la CA o el grupo de CA personalizados que desea eliminar y seleccione Eliminar.

    Tenga en cuenta que no puede eliminar todas las CA y grupos de CA personalizados del almacén de confianza de un gateway de API si hay una o más API activadas para mTLS desplegadas en el gateway de API.

  6. Confirme que desea eliminar el grupo de CA o CA personalizado del almacén de confianza del gateway de API.

Uso de la CLI

Para eliminar un grupo de CA o CA personalizado del almacén de confianza de un gateway de API mediante la CLI:

  1. Configure su entorno de cliente para usar la CLI ( Configuración del entorno de cliente para utilizar la CLI para el desarrollo de gateway de API).
  2. Para eliminar un grupo de CA o CA personalizado del almacén de confianza de un gateway de API:

    1. Abra un símbolo del sistema y ejecute oci api-gateway gateway update para eliminar la CA o el grupo de CA personalizados del almacén de confianza del gateway de API:

      oci api-gateway gateway update --gateway-id <gateway-ocid> --ca-bundles file:///<filename>

      donde <filename> es el nombre de un archivo que contiene detalles de solo las CA personalizadas y los grupos de CA personalizados que se conservarán en el almacén de confianza del gateway de API (además del grupo de CA por defecto). Las CA o los grupos de CA que no estén incluidos en el archivo se eliminan del almacén de confianza.

      Por ejemplo:

      oci api-gateway gateway update --gateway-id ocid1.apigateway.oc1..aaaaaaaab______hga --ca-bundles file:///bundles-to-keep.json

      Tenga en cuenta que no puede eliminar todas las CA y grupos de CA personalizados del almacén de confianza de un gateway de API si hay una o más API activadas para mTLS desplegadas en el gateway de API.

      La respuesta al comando incluye:

      • Estado del ciclo de vida (por ejemplo, DELETED, FAILED).
      • El ID de la solicitud de trabajo para eliminar las CA o los grupos de CA personalizados (los detalles de las solicitudes de trabajo están disponibles durante siete días tras la finalización, cancelación o fallo).

      Si desea que el comando espere para devolver el control hasta que se hayan eliminado las CA o los grupos de CA personalizados (o hasta que la solicitud falle), incluya uno o los dos parámetros siguientes:

      • --wait-for-state DELETED
      • --wait-for-state FAILED

      Por ejemplo:

      oci api-gateway gateway update --gateway-id ocid1.apigateway.oc1..aaaaaaaab______hga --ca-bundles file:///bundles-to-keep.json --wait-for-state DELETED
    2. (Opcional) Para ver el estado de la solicitud de trabajo que está eliminando el grupo de CA o CA personalizado, introduzca:

      oci api-gateway work-request get --work-request-id <work-request-ocid>
    3. (Opcional) Para ver los logs de la solicitud de trabajo que está eliminando el grupo de CA o CA personalizado, introduzca:

      oci api-gateway work-request-log list --work-request-id <work-request-ocid>
    4. (Opcional) Si falla la solicitud de trabajo que está eliminando el grupo de CA o CA personalizado y desea revisar los logs de errores, introduzca:

      oci api-gateway work-request-error --work-request-id <work-request-ocid>
    5. (Opcional) Para verificar que el grupo de CA o CA personalizado se ha eliminado del almacén de confianza del gateway de API, introduzca el siguiente comando y confirme que el grupo de CA o CA personalizado ya no se muestra:

      oci api-gateway gateway get --gateway-id <gateway-ocid>

Para obtener más información sobre el uso de la CLI, consulte Interfaz de línea de comandos (CLI). Para obtener una lista completa de los indicadores y las opciones disponibles para los comandos de la CLI, consulte Ayuda de CLI.

Uso de la API

Para obtener más información sobre el uso de la API y la firma de solicitudes, consulte la documentación de la API de REST y Credenciales de seguridad. Para obtener información sobre los SDK, consulte Los SDK y la CLI.

Utilice la operación UpdateGateway para especificar solo las CA personalizadas y los grupos de CA personalizados que se conservarán en el almacén de confianza del gateway de API (además del grupo de CA por defecto). Las CA o los grupos de CA que no especifique se eliminan del almacén de confianza. Tenga en cuenta que no puede eliminar todas las CA y grupos de CA personalizados del almacén de confianza de un gateway de API si hay una o más API activadas para mTLS desplegadas en el gateway de API.