Relatórios de segurança

Esta página aplica-se ao Apigee e ao Apigee Hybrid.

Veja a documentação do Apigee Edge.

A vista Relatórios de segurança permite-lhe criar relatórios para identificar ameaças de segurança às suas APIs. Para gerar relatórios, o Apigee analisa os dados de tráfego da API durante um intervalo de tempo especificado e procura padrões de tráfego invulgares que possam ser causados por agentes maliciosos. Em seguida, o Apigee apresenta um relatório que mostra toda a atividade suspeita. Com estas informações, pode tomar medidas para bloquear ataques contra as suas APIs.

Pode criar relatórios de segurança na IU do Apigee, conforme descrito abaixo, ou através da API Security reports. Se usar a IU, os dados dos relatórios ficam restritos ao ambiente que escolher. No entanto, através da API, também pode criar relatórios para grupos de ambientes.

Consulte Funções necessárias para relatórios de segurança para ver as funções necessárias para realizar tarefas de relatórios de segurança.

Para usar esta funcionalidade, tem de ativar o suplemento. Se for cliente de uma subscrição, pode ativar o suplemento para a sua organização. Consulte o artigo Faça a gestão da segurança avançada da API para organizações de subscrição para obter mais detalhes. Se for cliente de pagamento conforme o uso, pode ativar o suplemento nos seus ambientes elegíveis. Para mais informações, consulte o artigo Faça a gestão do suplemento de segurança avançada da API.

Deteção de bots

Uma das ameaças mais graves à segurança da API provém de bots: scripts automatizados que enviam pedidos maliciosos para APIs. A segurança avançada da API procura padrões de tráfego de API específicos, denominados regras de deteção, que se baseiam na análise de dados de API reais, para detetar bots.

Atraso nos dados dos relatórios de segurança

Os dados que fluem para o pipeline do Apigee Analytics têm um atraso de, em média, 15 a 20 minutos. Como resultado, um relatório de segurança cuja hora de fim seja inferior a 20 minutos no passado pode devolver resultados incorretos.

Abra a vista Relatórios de segurança

Para abrir a vista Relatórios de segurança:

Apigee na Cloud Console

Na Google Cloud consola, aceda à página Segurança avançada da API > Relatórios de segurança.

Aceda aos Relatórios de segurança

IU do Apigee clássico

Na IU do Apigee clássico, selecione Analisar > Segurança da API > Relatórios de segurança.

É apresentada a vista principal Relatórios de segurança:

Janela principal dos relatórios de segurança.

Na parte superior da página, pode selecionar:

  • O ambiente no qual quer criar um relatório.
  • O filtro Tipo de relatório. As opções são:
    • Tudo
    • Ativo
    • Falhou
    • Expirado

Abaixo dessas opções, os relatórios de segurança são apresentados nas linhas de uma tabela. Cada linha apresenta os seguintes detalhes do relatório:

  • O nome do relatório. Clique no nome do relatório para o ver.
  • O estado do relatório, que pode ser um dos seguintes:
    • Em execução: o relatório está atualmente em execução e ainda não pode ser visto.
    • completed: o relatório está concluído e pode ser visto ou exportado.
    • Expirado: o relatório expirou e já não pode ser visto nem exportado na IU. Para ver um relatório após a data de validade, tem de o exportar antes dessa data. Após 30 dias, o relatório é removido da lista de relatórios disponíveis.
  • A Hora de início e a Hora de fim apresentam as datas e as horas de início e de fim do relatório.

  • Data de envio: a data e a hora em que o pedido do relatório foi enviado.
  • Hora de validade: a data e a hora em que o relatório expira e deixa de poder ser visto na IU do Apigee. A data de expiração é 7 dias após a hora em que criou o relatório. Após 30 dias, o relatório é removido da lista de relatórios disponíveis. Não pode ver nem exportar relatórios na IU após a respetiva data de validade.
  • Tamanho do ficheiro: o tamanho do ficheiro do relatório. Pode ter de modificar os critérios do relatório para criar um relatório com um tamanho de ficheiro inferior ao tamanho máximo de ficheiro. Consulte as Limitações nos relatórios de segurança para obter informações sobre o tamanho máximo do ficheiro e formas específicas de reduzir o tamanho do ficheiro.
  • Exportar: exporta/transfere o relatório num ficheiro ZIP. A exportação só está disponível se o estado do relatório for concluído.

Crie um novo relatório de segurança

Para criar um novo relatório de segurança, comece por clicar em +Criar na vista Relatórios de segurança. É apresentada a caixa de diálogo Criar tarefa de relatório de segurança , onde pode configurar as opções do relatório, conforme descrito na secção seguinte.

Opções de relatórios de segurança

Pode especificar as seguintes opções para um relatório de segurança:

  • Nome do relatório: um nome para o relatório.
  • Intervalo de datas do relatório: hora de início e hora de fim do relatório.

    Nota: as horas de início e fim do relatório têm de ser no passado e, no máximo, um ano antes da criação do relatório.

  • Métricas: métrica para o relatório. Pode escolher entre as seguintes métricas e funções de agregação, que são funções que calculam estatísticas para as métricas.
    Métrica Descrição Funções de agregação
    bot O número de endereços IP distintos para bots detetados em intervalos de 1 minuto. count_distinct
    bot_traffic O número de mensagens de endereços IP de bots detetados em intervalos de um minuto. soma
    message_count

    O número total de chamadas de API processadas pelo Apigee em intervalos de 1 minuto.

    Nota: message_count não pode ser usado com outras métricas nem com a dimensão bot_reason no mesmo relatório.

    soma
    response_size Tamanho do payload de resposta devolvido em bytes. sum, avg, min, max
  • Dimensões: as dimensões permitem agrupar valores de métricas com base em subconjuntos relacionados dos dados. A tabela seguinte descreve as dimensões específicas dos relatórios de segurança avançada da API.

    Dimensão Descrição
    bot_reason
    incident_id (pré-visualização)
    security_action (pré-visualização) O tipo de ação de segurança. Os valores possíveis são ALLOW, DENY e FLAG.
    security_action_name O nome da ação de segurança.
    security_action_headers Cabeçalhos anexados a um pedido de uma ação ALLOW.

    Nota: a dimensão bot_reason, que é específica da segurança da API avançada, pode ser qualquer combinação das regras de deteção individuais. Quando é detetado um bot, o bot_reason consiste no subconjunto das regras de deteção individuais com as quais o tráfego do bot correspondeu quando foi detetado.

    Nota: bot_reason e incident_id só funcionam com as seguintes métricas:

    • bot
    • bot_traffic
    • response_size

    Consulte as dimensões para ver outras dimensões suportadas pelos relatórios de segurança avançada da API.

    Para adicionar várias dimensões, basta clicar em +Adicionar uma dimensão para cada dimensão que queira adicionar. Também pode alterar a ordem em que as dimensões aparecem no relatório clicando nas setas para cima ou para baixo à direita do campo de dimensão.

  • Filtros: os filtros permitem-lhe restringir os resultados a métricas com valores específicos. Para criar um filtro, defina os seguintes campos:
    • Selecione um nome para o filtro.
    • Selecione um operador de comparação.
    • Selecione um valor.

    Consulte Filtros.

Depois de selecionar todas as opções do relatório, clique em Criar para criar a tarefa de relatório. Pode ter de aguardar algum tempo até que o relatório esteja concluído. Pode clicar no botão Atualizar na parte superior direita do painel para ver o relatório concluído.

Veja um relatório concluído

Quando um relatório é concluído, é apresentado na tabela, conforme mostrado abaixo:

Relatório de segurança apresentado na tabela.

Para ver o relatório:

  • Clique no nome do relatório.
  • Clique em Exportar na linha desse relatório.
Nota: a deteção de bots tem um atraso de processamento de cerca de 15 a 20 minutos, em média.

Exemplo: relatório de endereços IP de bots

O exemplo seguinte cria um relatório que mostra os endereços IP dos bots detetados. Para criar o relatório, use a seguinte configuração:

  • Métrica: bot, o número de endereços IP distintos identificados como origens de bots.
  • Função de agregação: count_distinct
  • Dimensão: IP do cliente resolvido

O relatório concluído é apresentado abaixo:

Relatório de endereço IP de bot do relatório de segurança

Tenha em atenção que a tabela na parte inferior do relatório apresenta os endereços IP que a segurança avançada da API identificou como bots.

Exemplo: relatório de tráfego de bots por motivo do bot

O exemplo seguinte cria um relatório de tráfego de bots, ou seja, o número de pedidos de endereços IP que foram identificados como as origens de bots, por bot_reason, ou seja, o conjunto de regras de deteção que levaram à deteção do bot. Para criar o relatório, use a seguinte configuração:

  • Métrica: bot_traffic
  • Função de agregação: sum
  • Dimensão: bot_reason

O relatório concluído é apresentado abaixo:

Segurança: tráfego de bots por motivo do bot \report

Cada bot_reason consiste num subconjunto das regras de deteção individuais. Como pode ver no gráfico, a regra de deteção que contribuiu para a maior quantidade de tráfego de bots é o seguinte conjunto de regras:

  • Flooder
  • Brute Guessor
  • Robot Abuser

Exemplo: relatório de tráfego de bots

O exemplo seguinte cria um relatório que não está agrupado por uma dimensão. Se não quiser agrupar os dados por uma dimensão, pode definir a Dimensão como ambiente. Uma vez que os dados estão sempre restritos ao ambiente selecionado, isto resulta num relatório sem agrupamento de dados.

  • Métrica: tráfego de bots
  • Função de agregação: sum
  • Dimensão: environment
Relatório de segurança do relatório de tráfego de bots

O relatório apresenta o tráfego total de endereços IP que foram identificados como origens de bots, para cada intervalo de um minuto ao longo do intervalo de tempo do relatório. Tenha em atenção que não existe agrupamento.

Mais exemplos de relatórios de segurança

A tabela seguinte apresenta alguns exemplos de segurança de relatórios que pode criar usando diferentes métricas e dimensões:

Relatório Métrica Dimensões
Relatório de todo o tráfego de bots e contagem de bots por ambiente bot, bot_traffic ambiente
Relatório de tráfego de bots e contagem de bots por diferentes motivos bot, bot_traffic bot_reason
Relatório de tráfego de bots e número de bots para diferentes países bot, bot_traffic ax_geo_country
Relatório de tráfego de bots e número de bots para diferentes ISPs bot, bot_traffic ax_isp
Relatório de deteção de bots (vista de lista detalhada) bot_traffic Resolved Client IP, ax_isp, bot_reason, request_uri, client_id
Tráfego de bots por token de acesso bot_traffic access_token
Tráfego de bots por proxy de API bot_traffic apiproxy
Tráfego de bots por família de agentes bot_traffic ax_ua_agent_family
Tráfego de bots por agente do utilizador bot_traffic useragent
Tráfego de bots por tipo de agente bot_traffic ax_ua_agent_type
Tráfego de bots por categoria do dispositivo bot_traffic ax_ua_device_category
Tráfego de bots por família de SO bot_traffic ax_ua_os_family
Tráfego de bots por ID de cliente bot_traffic client_id
Tráfego de bots por caminho base do proxy bot_traffic proxy_basepath
Tráfego de bots por sufixo do caminho do proxy bot_traffic proxy_pathsuffix
Tráfego de bots por URI do pedido bot_traffic request_uri
Tráfego de bots por verbo de pedido bot_traffic request_verb
Tráfego de bots por código de estado da resposta bot_traffic response_status_code

Limitações nos relatórios de segurança

Os relatórios de segurança têm as seguintes limitações:

  • Os dados que fluem para o pipeline do Apigee Analytics têm um atraso de, em média, 15 a 20 minutos. Como resultado, a criação de um relatório em que a Hora de fim seja inferior a 20 minutos no passado pode devolver resultados incorretos.
  • O intervalo de tempo máximo para relatórios de bots é de 1 ano.
  • O número máximo de métricas que pode usar num relatório é 25 e o número máximo de dimensões que pode usar é 25.
  • Tal como acontece com a API de relatórios personalizados assíncronos, existe um limite de 31 MB de dados para um relatório. Se encontrar um limite de tamanho num relatório, pode:
    • Reduza o intervalo de datas do relatório.
    • Divida os dados em subconjuntos mais pequenos filtrando por um conjunto de valores e, em seguida, crie vários relatórios, um para cada subconjunto.
  • Não é possível listar a dimensão IP do cliente resolvido no mesmo relatório com a dimensão ax_geo_city ou ax_geo_country, devido a questões de privacidade.
  • As tarefas de relatórios de segurança que filtram por incident_id têm de incluir o incident_id como dimensão.
  • As seguintes métricas só estão disponíveis através da API Security Reports, mas não na IU: bot_first_detected (min) e bot_last_detected (max).