Présentation
Cette page fournit la syntaxe de référence pour gérer la détection d'API Shadow Apigee à partir des API Apigee Management (APIM). La documentation des API Management liées à la détection d'API Shadow, y compris des informations sur chaque champ d'une requête, est disponible aux adresses https://cloud.google.com/apigee/docs/reference/apis/apim/rest et https://cloud.google.com/apigee/docs/reference/apis/apim/rpc
Pour obtenir une présentation de la détection de l'API Shadow et des instructions pour la gérer à l'aide de l'interface utilisateur Apigee dans la console Cloud, consultez la page Détection de l'API Shadow. Pour obtenir des informations sur les comportements généraux et les limites de la détection d'API Shadow, consultez la page Comportements et limites.
Paramètres dans les appels d'API de référence
Les appels d'API de cette page peuvent utiliser les paramètres suivants, qui font référence aux informations de votre compte Apigee (telles que votre projet) ou aux informations utilisées lors de la création de jobs d'observation. Consultez la section Créer des jobs d'observation pour en savoir plus sur chacun de ces champs.
- OBSERVATION_JOB_LOCATION est un emplacement pour un job d'observation.
- OBSERVATION_JOB_NAME est un nom de job d'observation.
- OBSERVATION_SOURCE_LOCATION est un emplacement source pour le job d'observation.
- OBSERVATION_SOURCE_NAME est un nom de source d'observation.
- PROJECT est votre projet Apigee.
Créer un job d'observation
La création d'un job d'observation nécessite plusieurs étapes/requêtes API.
- Créer une source d'observation : pour créer une source d'observation plutôt que d'utiliser une source existante, envoyez une requête POST au point de terminaison observationSources avec les détails de la source d'observation.
La création d'une source d'observation prend plusieurs minutes et lance une LRO, avec une réponse semblable à celle-ci :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
{ "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 } - Pour afficher la source d'observation nouvellement créée :
curl \ https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME
- Créer un job d'observation : créez un job qui recherche les API parallèles à l'aide de la source que vous venez de créer :
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
Activer un job d'observation
Utilisez la commande suivante pour activer un nouveau job d'observation ou un job existant désactivé.
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
Afficher les API détectées
Pour afficher les API détectées par les jobs d'observation activés, exécutez la commande suivante :
curl https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME/apiObservations \ -X GET
Gérer les tags dans les résultats d'observation
Pour afficher les tags déjà ajoutés aux résultats :
curl -H "https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION:listApiObservationTags"
Pour gérer les tags :
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
Désactiver un job d'observation
Cette requête désactive un job d'observation sans le supprimer.
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' { }
Supprimer un job d'observation
Cette requête supprime un job d'observation.
curl -X DELETE https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_JOB_LOCATION/observationJobs/OBSERVATION_JOB_NAME
Supprimer une source d'observation
Cette requête supprime une source d'observation.
curl -X DELETE https://apim.googleapis.com/v1alpha/projects/PROJECT/locations/OBSERVATION_SOURCE_LOCATION/observationSources/OBSERVATION_SOURCE_NAME