Estás viendo la documentación de Apigee Edge.
Ir a la
documentación de Apigee X. info
Usa una alerta de vencimiento de TLS para generar una notificación cuando esté por vencer el certificado TLS en un entorno.
Acerca de los certificados TLS
TLS (seguridad de la capa de transporte) es la tecnología de seguridad estándar para establecer un vínculo encriptado entre un servidor web y un cliente web, como un navegador o una app. Un vínculo encriptado garantiza que todos los datos que pasan entre el servidor y el cliente permanezcan privados.
Un certificado TLS es un archivo digital que identifica una entidad en una transacción TLS. Edge usa un certificado TLS para configurar TLS para lo siguiente:
- Acceso a tus proxies de API por parte de clientes de API. Usa hosts virtuales para configurar TLS.
- Acceso a tus servicios de backend por el perímetro. Usa extremos y servidores de destino en el Message Processor de Edge para configurar TLS.
Un certificado TLS contiene una fecha de vencimiento. Si vence un certificado TLS, la conexión TLS falla hasta que actualizas el certificado. Eso significa que todas las solicitudes a tu API fallarán hasta que actualices el certificado.
Acerca de las alertas de vencimiento
En lugar de esperar a que venza un certificado y que fallen las solicitudes a tu API, usa una alerta de vencimiento para generar una notificación cuando esté por vencer cualquier certificado TLS en un entorno. Después de que se active la alerta, puedes actualizar el certificado para que tus clientes no vean ninguna interrupción en el servicio.
Cuando configures la alerta, no especifiques un certificado individual, sino un entorno específico. La alerta se activa cuando se programa el vencimiento de cualquier certificado implementado dentro del período especificado.
Puedes configurar la alerta de vencimiento para que se produzca en los siguientes casos:
- 1 día antes de que venza cualquier certificado
- 14 días antes de que venza cualquier certificado
- 30 días antes de que venza cualquier certificado
Agrega alertas y notificaciones de vencimiento
Para agregar alertas y notificaciones de vencimiento, haz lo siguiente:- Haz clic en Analizar > Reglas de alerta en la IU de Edge.
- Haz clic en \+Alerta.
- Ingresa la siguiente información general sobre la alerta:
Campo Descripción Nombre de la alerta Nombre de la alerta. Usa un nombre que describa el activador y que sea significativo para ti. El nombre no puede superar los 128 caracteres. Descripción Descripción de la alerta. Tipo de alerta Selecciona Vencimiento de TLS. Consulta Acerca de los tipos de alertas para obtener más información. Entorno Selecciona el entorno de la lista desplegable. Estado Activa o desactiva la habilitación de la política. - Define el umbral y la dimensión de la condición que activará la alerta.
Campo de condición Descripción Umbral Configura el período para los certificados que vencen. Puedes elegir generar una alerta cuando un certificado esté por vencer en los siguientes períodos:
- 1 día
- 14 días
- 30 días
Dimensión Las dimensiones se fijan en un valor de Cualquier certificado TLS que corresponde a cualquier certificado TLS en el entorno. - Haz clic en + Notificación para agregar una notificación de alerta.
Detalles de la notificación Descripción Canal Selecciona el canal de notificaciones que deseas usar y especifica el destino: correo electrónico, Slack, PagerDuty o webhook. Destino Especifica el destino según el tipo de canal seleccionado: - Correo electrónico: Dirección de correo electrónico, como
joe@company.com - Slack: URL del canal de Slack, como
https://hooks.slack.com/services/T00000000/B00000000/XXXXX - PagerDuty: Código de PagerDuty, como
abcd1234efgh56789 - Webhook: URL de webhook, como
https://apigee.com/test-webhookNota: Puedes especificar solo un destino por notificación. Para especificar varios destinos para el mismo tipo de canal, agrega notificaciones adicionales.
- Correo electrónico: Dirección de correo electrónico, como
- Para agregar notificaciones adicionales, repite el paso anterior.
- Si agregaste una notificación, configura los siguientes campos:
Campo Descripción Guía (Opcional) Campo de texto de formato libre para proporcionar una breve descripción de las acciones recomendadas para resolver las alertas cuando se activan. También puedes especificar un vínculo a tu wiki interna o página de la comunidad en la que haces referencia a las prácticas recomendadas. La información de este campo se incluirá en la notificación. El contenido de este campo no puede superar los 1,500 caracteres. Limitar Frecuencia con la que se envían las notificaciones. Selecciona un valor de la lista desplegable. - Haz clic en Guardar.
Visualiza alertas en el panel Eventos
Cuando Edge detecta una condición de alerta, registra automáticamente esa condición en el panel Eventos en la IU de Edge. La lista de eventos que se muestra en el panel Eventos incluye todas las alertas, tanto fijas como de certificados.
Para ver una alerta, haz lo siguiente:
Haz clic en Analizar > Eventos en la IU de Edge. Aparecerá el nuevo panel Eventos:
Filtra el panel de eventos de la siguiente manera:
- Entorno
- Región
- Período
- Selecciona una fila en el panel Eventos para mostrar el almacén de claves que contiene el certificado que vence y, así, investigar más la alerta. En la página Almacén de claves, puedes subir un certificado nuevo y borrar el certificado que vence.
Usa las APIs de alertas con alertas de vencimiento
La mayoría de las APIs que usas para crear y administrar alertas de vencimiento son las mismas que usas con alertas fijas. Las siguientes APIs de alerta funcionan de la misma manera para las alertas fijas y de vencimiento:
- Obtener una alerta - Obtén una definición de alerta fija o alerta de anomalía.
- Obtener historial de alertas: Obtén métricas del historial de alertas.
- Borrar una alerta: Borra una definición de alerta fija o alerta de anomalía.
- Obtener instancia de alerta: Obtén información sobre una alerta activada.
- Obtener el recuento de alertas: Obtén el recuento total de las alertas.
Sin embargo, algunas API tienen propiedades adicionales que se usan para admitir alertas de anomalía, como las siguientes:
- Obtener alertas: Enumera todas las alertas, incluidas las alertas fijas y las alertas de anomalía.
- Crear una alerta: Crea una alerta fija o de anomalía.
- Actualizar una alerta: Actualiza una definición de alerta fija o de anomalía.
Crea o actualiza una alerta de vencimiento
Usa las mismas APIs para crear o actualizar una alerta de vencimiento como lo haces en la actualidad para una alerta fija. El cuerpo de la llamada a la API para crear o actualizar una alerta de vencimiento es el mismo que se usa para una alerta fija, con los siguientes cambios:
Debes agregar las siguientes propiedades nuevas para especificar que la alerta es una alerta de vencimiento:
"alertType": "cert" "alertSubType": "certfixed"
Los valores predeterminados de estas propiedades son los siguientes:
"alertType": "runtime" "alertSubType": "fixed"
En el arreglo
conditions, sucede lo siguiente:- La propiedad
metricssolo toma los valores deexpiration. - Usa la propiedad
gracePeriodSecondspara especificar el período de vencimiento del certificado en segundos, hasta una duración máxima de 30 días. - No se admiten las propiedades
threshold,durationSecondsycomparator.
- La propiedad
- En el elemento
dimensionsdel arregloconditions, sucede lo siguiente:- Debes establecer el valor de la propiedad
certificatecomoANY. - Debes establecer el valor de la propiedad
proxycomoALL. - No se admiten las propiedades
statusCode,developerApp,collection,faultCodeCategory,faultCodeSubCategoryyfaultCodeName.
- Debes establecer el valor de la propiedad
- No se admite la propiedad
reportEnabledpara las alertas de vencimiento.
En la siguiente llamada a la API de ejemplo, se crea una alerta de vencimiento que se activa cuando cualquier certificado en el entorno de producción vence en los próximos 30 días. Se envía una notificación a la dirección de correo electrónico especificada cuando se activa la alerta:
curl 'https://apimonitoring.enterprise.apigee.com/alerts' \
-X POST \
-H 'Accept: application/json, text/plain, */*' -H "Content-Type: application/json" \
-H "Authorization: Bearer $ACCESS_TOKEN" \
-d '{
"organization":"myorg",
"name":"My Cert Expiry Alert",
"description":"My Cert Expiry Alert",
"environment":"prod",
"enabled":true,
"alertType": "cert",
"alertSubType": "certfixed",
"conditions":[
{
"description":"My Cert Expiry Alert",
"dimensions":{
"org":"myorg",
"env":"prod",
"proxy":"ALL",
"certificate": "ANY"
},
"metric":"expiration",
"gracePeriodSeconds": 2592000
}],
"notifications":[{
"channel":"email",
"destination":"ops@acme.com"
}],
"playbook":"http://acme.com/pb.html",
"throttleIntervalSeconds":3600,
"reportEnabled":false
}'
Configura $ACCESS_TOKEN como tu token de acceso de OAuth 2.0, como se describe en
Obtén un token de acceso de OAuth 2.0.
Para obtener más información sobre las opciones cURL que se usaron en este ejemplo, consulta Usa cURL.
Obtén alertas de vencimiento
Según la configuración predeterminada, la API de recibir alertas muestra información sobre todas las alertas definidas, tanto fijas como de vencimiento. Esta API ahora toma parámetros de consulta que te permiten filtrar los resultados:
enabled: Sitrueespecifica que solo se muestran alertas habilitadas. El valor predeterminado esfalse.alertType- Especifica el tipo de alerta que se mostrará. Los valores permitidos sonruntime, el valor predeterminado, ycert.alertSubType: Especifica el subtipo de alerta que se mostrará. El valor predeterminado no está configurado, lo que significa que se muestran todos los subtipos de alerta. Especificacertfixedpara mostrar alertas de vencimiento.
Por ejemplo, usa la siguiente llamada a la API a fin de mostrar solo las alertas habilitadas para la organización llamada myorg:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'
En la siguiente llamada, solo se muestran alertas de vencimiento, tanto habilitadas como inhabilitadas:
curl -H "Authorization: Bearer $ACCESS_TOKEN" \ 'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=cert&alertSubType=certfixed'
Configura $ACCESS_TOKEN como tu token de acceso de OAuth 2.0, como se describe en
Obtén un token de acceso de OAuth 2.0.
Para obtener más información sobre las opciones cURL que se usaron en este ejemplo, consulta Usa cURL.