Deteção de APIs fantasma: APIs de gestão

Vista geral

Esta página fornece a sintaxe de referência para gerir a descoberta de APIs fantasma da Apigee a partir das APIs de gestão (APIM) da Apigee. Pode encontrar documentação para as APIs de gestão relacionadas com a descoberta de APIs fantasma, incluindo informações sobre cada campo num pedido, em https://cloud.google.com/apigee/docs/reference/apis/apim/rest e https://cloud.google.com/apigee/docs/reference/apis/apim/rpc

Para uma vista geral da descoberta de APIs fantasma e instruções para a gerir através da IU do Apigee na consola do Google Cloud, consulte o artigo Descoberta de APIs fantasma. Pode encontrar informações sobre os comportamentos gerais e as limitações da descoberta de APIs ocultas em Comportamentos e limitações.

Parâmetros em chamadas de API de referência

As chamadas API nesta página podem usar os seguintes parâmetros, que se referem às informações da sua conta do Apigee (como o seu projeto) ou às informações usadas quando cria tarefas de observação. Consulte o artigo Crie tarefas de observação para ver mais informações sobre cada um destes campos.

  • OBSERVATION_JOB_LOCATION é uma localização para um trabalho de observação.
  • OBSERVATION_JOB_NAME é um nome de tarefa de observação.
  • OBSERVATION_SOURCE_LOCATION é um local de origem para a tarefa de observação.
  • OBSERVATION_SOURCE_NAME é um nome de origem de observação.
  • PROJECT é o seu projeto do Apigee.

Crie um trabalho de observação

A criação de uma tarefa de observação requer vários passos/pedidos de API.

  1. Crie uma origem de observação: para criar uma nova origem de observação em vez de usar uma existente, faça um pedido POST para o ponto final observationSources com os detalhes da origem de observação.
    curl \ https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources?observation_source_id=OBSERVATION_SOURCE_NAME \
    -X POST \
    -H 'Content-type: application/json' \
    -d @- <<'EOF'
    {
      "gclbObservationSource": {
        "pscNetworkConfigs": [
          {
            "network": "projects/PROJECT/global/networks/{network_name}",
            "subnetwork":"projects/PROJECT/regions/OBSERVATION_SOURCE_LOCATION/subnetworks/{subnet_name}"
          }
        ]
      }
    }
    EOF
    A criação de uma origem de observação requer vários minutos e inicia um LRO, com uma resposta como esta:
    {
    "name": "projects/{project/locations/OBSERVATION_SOURCE_LOCATION/operations/operation-",
    "metadata": {
      "@type": "type.googleapis.com/google.cloud.apim.vl.ApiDiscoveryOperationMetadata",
      "createTime": "",
      "target": "projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME",
      "verb": "create",
      "requestedCancellation": false,
      "apiVersion": "vl"
    },
    "done": false
    }
  2. Para ver a origem de observação criada recentemente:
    curl \
    https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME
  3. Crie uma tarefa de observação: crie uma tarefa que procure APIs fantasma usando a origem que acabou de criar:
    curl \
    https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs?observation_job_id=OBSERVATION_JOB_NAME \
    -X POST \
    -H 'Content-type: application/json' \
    -d @- <<'EOF'
    {
      "sources": [
        "projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME"
      ]
    }
    EOF

Ative uma tarefa de observação

Use o seguinte comando para ativar uma nova tarefa de observação ou uma tarefa existente desativada.

curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME:enable \
-X POST \
-H 'Content-type: application/json' \
-d @- <<'EOF'
{}
EOF

Veja as APIs descobertas

Para ver as APIs descobertas por tarefas de observação ativadas, envie este comando:

curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME/apiObservations \
-X GET

Faça a gestão das etiquetas nos resultados de observação

Para listar as etiquetas já adicionadas aos resultados:

curl -H "https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION:listApiObservationTags"
  

Para gerir etiquetas:

curl -H "Content-Type: appication/json" \
"https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME/apiObservations:batchEditTags" \
-X POST -d @- <<'EOF'
{
  "requests": [
    {
      "apiObservationId": "API_OBSERVATION_ID",
      "tagActions": [
      {
        "tag": "demo",
        "action": "REMOVE"
      },
      {
        "tag": "Needs Attentions",
        "action": "ADD"
      }]
    }
  ]
}
EOF

Desative uma tarefa de observação

Este pedido desativa uma tarefa de observação sem a eliminar.

curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationsJobs/OBSERVATION_JOB_NAME:disable \
-X POST \
-H 'Content-type: application/json' \
-d @- <<'EOF'
{
}

Elimine uma tarefa de observação

Este pedido elimina uma tarefa de observação.

curl -X DELETE https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME

Elimine uma origem de observação

Este pedido elimina uma origem de observação.

curl -X DELETE https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME