Configurar alertas de expiração

Você está lendo a documentação do Apigee Edge.
Acesse a documentação da Apigee X
.info

Use um alerta de validade do TLS para gerar uma notificação quando o certificado TLS em um ambiente estiver prestes a expirar.

Sobre certificados TLS

O TLS (Transport Layer Security) é a tecnologia de segurança padrão para estabelecer um link criptografado entre um servidor da Web e um cliente da Web, como um navegador ou um app. Um link criptografado garante que todos os dados transmitidos entre o servidor e o cliente permaneçam privados.

Um certificado TLS é um arquivo digital que identifica uma entidade em uma transação TLS. O Edge usa um certificado TLS para configurar o TLS para:

Um certificado TLS contém uma data de validade. Se um certificado TLS expirar, a conexão TLS falhará até que você atualize o certificado. Isso significa que todas as solicitações para sua API vão falhar até que você atualize o certificado.

Sobre alertas de validade

Em vez de esperar que um certificado expire e que as solicitações para sua API falhem, use um alerta de validade para gerar uma notificação quando qualquer certificado TLS em um ambiente estiver prestes a expirar. Depois que o alerta for acionado, você poderá atualizar o certificado para que seus clientes não tenham nenhuma interrupção no serviço.

Ao configurar o alerta, não especifique um certificado individual, mas um ambiente específico. O alerta é acionado quando qualquer certificado implantado está programado para expirar dentro do período especificado.

Você pode definir o alerta de validade para ocorrer:

  • 1 dia antes da expiração de qualquer certificado
  • 14 dias antes da expiração de qualquer certificado
  • 30 dias antes da expiração de qualquer certificado
Para mais informações sobre alertas, consulte Configurar alertas e notificações.

Adicionar alertas e notificações de validade

Para adicionar alertas e notificações de validade:
  1. Clique em Analisar > Regras de alerta na interface do usuário do Edge.
  2. Clique em +Alerta.
  3. Insira as seguintes informações gerais sobre o alerta:
    Campo Descrição
    Nome do alerta Nome do alerta. Use um nome que descreva o acionador e que seja significativo para você. O nome não pode ter mais de 128 caracteres.
    Descrição Descrição do alerta.
    Tipo de alerta Selecione Validade do TLS. Consulte Sobre os tipos de alerta para mais informações.
    Ambiente Selecione o ambiente na lista suspensa.
    Status Opção para ativar ou desativar a política.
  4. Defina o limite e a dimensão da condição que vai acionar o alerta.
    Campo de condição Descrição
    Limite

    Configure o período para os certificados expirados. Você pode gerar um alerta quando um certificado estiver prestes a expirar em:

    • 1 dia
    • 14 dias
    • 30 dias
    Dimensão As dimensões são fixadas em um valor de Qualquer certificado TLS correspondente a qualquer certificado TLS no ambiente.
  5. Clique em + Notificação para adicionar uma notificação de alerta.
    Detalhes da notificação Descrição
    Canal Selecione o canal de notificação que você quer usar e especifique o destino: E-mail, Slack, PagerDuty ou Webhook.
    Destino Especifique o destino com base no tipo de canal selecionado:
    • E-mail: endereço de e-mail, como joe@company.com
    • Slack: URL do canal do Slack, como https://hooks.slack.com/services/T00000000/B00000000/XXXXX
    • PagerDuty: código do PagerDuty, como o abcd1234efgh56789
    • Webhook: URL do webhook, como https://apigee.com/test-webhook

      Observação: é possível especificar apenas um destino por notificação. Para especificar vários destinos para o mesmo tipo de canal, adicione mais notificações.

  6. Para adicionar outras notificações, repita a etapa anterior.
  7. Se você adicionou uma notificação, defina os seguintes campos:
    Campo Descrição
    Playbook (Opcional) Campo de texto livre para fornecer uma breve descrição das ações recomendadas para resolver os alertas quando eles forem disparados. Também é possível especificar um link para o wiki interno ou a página da comunidade em que você indica as práticas recomendadas. As informações neste campo serão incluídas na notificação. O conteúdo nesse campo não pode exceder 1.500 caracteres.
    Limitar Frequência de envio das notificações. Selecione um valor na lista suspensa.
  8. Clique em Salvar.

Ver alertas no painel "Eventos"

Quando o Edge detecta uma condição de alerta, ele a registra automaticamente no painel Eventos na interface do usuário do Edge. A lista de eventos exibidos no painel "Eventos" inclui todos os alertas, fixos e de certificado.

Para ver um alerta:

  1. Clique em Analisar > Eventos na interface do usuário do Edge. O novo painel "Eventos" é exibido:

  2. Filtre o painel "Eventos" por:

    • Ambiente
    • Região
    • Período
  3. Selecione uma linha no painel "Eventos" para mostrar o keystore que contém o certificado expirado para investigar melhor o alerta. Na página "Keystore", é possível fazer o upload de um novo certificado e excluir o certificado expirado.

Usar as APIs de alerta com alertas de validade

A maioria das APIs usadas para criar e gerenciar alertas de validade é igual àquelas usadas com alertas fixos. As seguintes APIs de alerta funcionam da mesma forma para alertas fixos e de validade:

No entanto, algumas APIs têm mais prioridades usadas para oferecer suporte a alertas de anomalias. Veja abaixo alguns exemplos:

Criar ou atualizar um alerta de validade

Use as mesmas APIs para criar ou atualizar um alerta de validade como é feito atualmente para um alerta fixo. O corpo da chamada de API para criar ou atualizar um alerta de validade é o mesmo usado para um alerta fixo, com as seguintes alterações:

  • Você precisa adicionar as novas propriedades a seguir para especificar que o alerta é uma validade:

    "alertType": "cert"
    "alertSubType": "certfixed"

    Os valores padrão dessas propriedades são:

    "alertType": "runtime"
    "alertSubType": "fixed"
  • Na matriz conditions:

    • A propriedade metrics aceita apenas os valores de expiration.
    • Use a propriedade gracePeriodSeconds para especificar o período de validade do certificado em segundos, até uma duração máxima de 30 dias.
    • As propriedades threshold, durationSeconds e comparator não são compatíveis.
  • No elemento dimensions da matriz conditions:
    • Defina o valor da propriedade certificate como ANY.
    • Defina o valor da propriedade proxy como ALL.
    • As propriedades statusCode, developerApp, collection, faultCodeCategory, faultCodeSubCategory, faultCodeName não são compatíveis.
  • A propriedade reportEnabled não é compatível com alertas de validade.

O exemplo de chamada de API a seguir cria um alerta de validade que é acionado quando qualquer certificado no ambiente de produção expirar nos próximos 30 dias. Uma notificação é enviada para o endereço de e-mail especificado quando o alerta é acionado.

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
}'

Defina $ACCESS_TOKEN como token de acesso do OAuth 2.0, conforme descrito em Receber um token de acesso do OAuth 2.0. Para informações sobre as opções de cURL usadas neste exemplo, consulte Usar cURL (em inglês).

Receber alertas de validade

Por padrão, a API Get Alerts retorna informações sobre todos os alertas definidos, fixos e de validade. Agora, essa API usa parâmetros de consulta para que você filtre os resultados:

  • enabled: se true especifica que são retornados apenas alertas ativados. O valor padrão é false.
  • alertType: especifica o tipo de alerta a ser retornado. Os valores permitidos são runtime, o padrão, e cert.
  • alertSubType: especifica o subtipo de alerta a ser retornado. O valor padrão não é definido, o que significa que retorna todos os subtipos de alerta. Especifique certfixed para retornar alertas de validade.

Por exemplo, use a seguinte chamada de API para retornar apenas os alertas para a organização chamada myorg:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&enabled=true'

A chamada a seguir retorna apenas alertas de validade, ativados e desativados:

curl -H "Authorization: Bearer $ACCESS_TOKEN" \
'https://apimonitoring.enterprise.apigee.com/alerts?org=myorg&alertType=cert&alertSubType=certfixed'

Defina $ACCESS_TOKEN como token de acesso do OAuth 2.0, conforme descrito em Receber um token de acesso do OAuth 2.0. Para informações sobre as opções de cURL usadas neste exemplo, consulte Usar cURL (em inglês).