Ce guide explique comment migrer des clients OAuth 2.0 créés à l'aide de l'API OAuth Admin Identity-Aware Proxy (IAP) vers les clients OAuth 2.0 gérés par Google et déployés automatiquement par IAP.
Qu'est-ce qui change ?
Nous abandonnons l'API IAP OAuth Admin, qui inclut les API suivantes pour la gestion manuelle des clients et des marques OAuth :
Au lieu de gérer manuellement les clients OAuth 2.0, IAP va désormais créer et gérer automatiquement les clients OAuth lorsque cela sera nécessaire. Cette modification simplifie la gestion des clients, réduit les erreurs manuelles et rationalise vos processus de déploiement.
Ce qui ne change pas
Cette obsolescence n'affecte pas les clients OAuth que vous configurez manuellement à l'aide de l'API Compute Engine, de l'API App Engine ou de la console Google Cloud .
Vous pouvez continuer à créer des configurations de marque et de client OAuth, et à les gérer à l'aide de la console Google Cloud . Les configurations existantes continueront d'être entièrement compatibles.
Si vous n'utilisez pas l'API Admin OAuth IAP, ce changement n'aura aucune incidence sur vous.
Description détaillée
Depuis le 22 janvier 2025, l'API Admin OAuth 2.0 IAP, qui permet de créer un client OAuth 2.0 IAP, est obsolète. L'API Admin IAP OAuth 2.0 n'est plus requise, car vous n'avez plus besoin de configurer les clients OAuth. IAP utilise désormais un client OAuth géré par Google pour l'accès au navigateur par défaut ou lorsqu'aucun client OAuth 2.0 n'est configuré explicitement. Le client OAuth 2.0 géré par Google limite l'accès aux applications compatibles avec IAP aux utilisateurs de la même organisation lorsqu'ils accèdent à ces applications via un navigateur.
L'API Admin OAuth 2.0 Identity-Aware Proxy (IAP) étant obsolète, vous ne pouvez plus créer ni gérer de clients OAuth. Les clients OAuth créés avant cette obsolescence ne seront pas invalidés. Vous pouvez continuer à utiliser les clients OAuth que vous avez créés précédemment et les gérer à l'aide de la console Google Cloud .
Si vous avez configuré des applications avec des clients OAuth créés à l'aide de l'API Admin IAP 2.0 ou d'une autre méthode, ces applications continueront de fonctionner. Aucune modification n'est requise pour les applications. Toutefois, si vous avez configuré l'automatisation pour créer des clients lors du déploiement d'applications ou pour récupérer des codes secrets client pour des clients existants, vous devez mettre à jour vos scripts d'automatisation afin de supprimer la dépendance à l'API Admin IAP OAuth 2.0.
Si vous prévoyez d'utiliser le client OAuth 2.0 géré par Google, consultez le guide Accès programmatique pour configurer l'accès programmatique pour ces applications.
Si vous avez une exigence qui n'est pas satisfaite par le client OAuth 2.0 géré par Google, vous pouvez partager un seul client OAuth avec plusieurs applications IAP. Vous n'aurez ainsi pas besoin de créer manuellement un client pour chaque nouvelle application.
Actions requises
Mettre à jour les scripts d'automatisation
Si vous utilisez Terraform ou d'autres outils pour automatiser la configuration d'IAP, et que vous utilisez l'API OAuth 2.0 Admin d'IAP, vous devez mettre à jour les scripts d'automatisation pour utiliser un client précréé ou le client OAuth géré par Google avec IAP.
Configurer l'accès programmatique pour les applications à l'aide des clients OAuth2.0 gérés par Google
Si vous avez déjà des applications protégées par IAP et que vous prévoyez de les migrer pour utiliser le client OAuth 2.0 géré par Google, vous pouvez configurer l'accès programmatique pour ces applications en ajoutant des clients OAuth 2.0 à la liste d'autorisation.
Migrer les ressources compatibles avec IAP
Pour migrer vos ressources afin qu'elles utilisent le client OAuth 2.0 géré par Google, suivez les étapes correspondant au type de ressource que vous souhaitez migrer (par exemple, une ressource Compute Engine).
Migrer les ressources App Engine compatibles avec IAP
Suivez les étapes de cette section pour migrer les ressources App Engine pour lesquelles IAP est activé et un client OAuth 2.0 est configuré.
gcloud
Avant de passer aux étapes suivantes, assurez-vous de disposer d'une version à jour de la gcloud CLI. Pour savoir comment installer la gcloud CLI, consultez Installer la gcloud CLI.
Utilisez Google Cloud CLI pour vous authentifier.
gcloud auth login
Cliquez sur l'URL qui s'affiche, puis connectez-vous.
Une fois la connexion effectuée, copiez le code de validation qui s'affiche et collez-le dans la ligne de commande.
Exécutez la commande suivante pour spécifier le projet contenant les applications que vous souhaitez continuer à protéger avec IAP.
gcloud config set project PROJECT_ID
Exécutez la commande suivante pour récupérer l'ID client OAuth 2.0 configuré.
gcloud app describe --format="value(iap.oauth2ClientId)"
Enregistrez l'ID client de la commande précédente si vous souhaitez autoriser l'accès programmatique.
Pour ajouter le client OAuth 2.0 à la liste d'autorisation pour l'accès programmatique, effectuez une opération de lecture-mise à jour-écriture sur l'API des paramètres IAP.
gcloud iap settings get --resource-type=app-engine --project=$PROJECT > settings.yaml
Mettez à jour le fichier settings.yaml et ajoutez l'ID client OAuth 2.0 récupéré précédemment sous
programmaticClients
, comme dans l'exemple.accessSettings: oauthSettings: programmaticClients: - CLIENT_ID
Appliquer les nouveaux paramètres à l'application App Engine
gcloud iap settings set settings.yaml --resource-type=app-engine --project=PROJECT_ID
Pour migrer vos applications, exécutez la commande suivante.
gcloud iap web enable --resource-type=app-engine
API
Exécutez la commande suivante pour récupérer l'ID client OAuth 2.0 configuré.
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://appengine.googleapis.com/v1/apps/PROJECT_ID?fields=iap"
Exécutez la commande suivante pour récupérer les paramètres d'achats via l'IAP existants dans un fichier
settings.json
.curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/appengine-PROJECT_ID:iapSettings" > settings.json
Mettez à jour le fichier
settings.json
pour ajouter CLIENT_ID précédemment enregistré en tant que client programmatique.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }
Exécutez la commande suivante pour mettre à jour les paramètres d'IAP;application.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/appengine-PROJECT_ID:iapSettings"
Exécutez la commande suivante pour préparer un fichier
settings.json
.cat << EOF > settings.json { "iap": { "enabled":true } } EOF
Exécutez la commande suivante pour migrer vos applications.
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://appengine.googleapis.com/v1/apps/PROJECT_ID?updateMask=iap"
Migrer des ressources Compute Engine compatibles avec IAP
Suivez les étapes de cette section pour migrer les ressources Compute Engine pour lesquelles IAP est activé et un client OAuth 2.0 est configuré.
gcloud
Avant de passer aux étapes suivantes, assurez-vous de disposer d'une version à jour de la gcloud CLI. Pour savoir comment installer la gcloud CLI, consultez Installer la gcloud CLI.
Utilisez Google Cloud CLI pour vous authentifier.
gcloud auth login
Cliquez sur l'URL qui s'affiche, puis connectez-vous.
Une fois la connexion effectuée, copiez le code de validation qui s'affiche et collez-le dans la ligne de commande.
Exécutez la commande suivante pour spécifier le projet contenant les applications que vous souhaitez continuer à protéger avec IAP.
gcloud config set project PROJECT_ID
Exécutez la commande suivante pour récupérer l'ID client OAuth 2.0 configuré.
Champ d'application global
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global \ --format="value(iap.oauth2ClientId)"
Champ d'application régional
Enregistrez l'ID client de la commande précédente si vous souhaitez autoriser l'accès programmatique.gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME \ --format="value(iap.oauth2ClientId)"
Pour autoriser le client OAuth 2.0 à accéder par programmation, effectuez une opération de lecture-mise à jour-écriture sur l'API des paramètres IAP.
Champ d'application global
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME > settings.yaml
Champ d'application régional
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME > settings.yaml
Mettez à jour le fichier settings.yaml et ajoutez l'ID client OAuth 2.0 récupéré précédemment sous
programmaticClients
, comme dans l'exemple.accessSettings: oauthSettings: programmaticClients: - CLIENT_ID
Appliquer les nouveaux paramètres sur l'application Compute Engine
Champ d'application global
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME
Champ d'application régional
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME
Pour migrer vos applications, exécutez la commande à portée mondiale ou régionale.
Champ d'application global
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --global \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
Champ d'application régional
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --region REGION_NAME \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
Pour confirmer que l'ID client OAuth n'est pas défini, exécutez la commande suivante à portée globale ou régionale. Après avoir exécuté la commande, vérifiez que le champ de l'ID client OAuth est vide.
Champ d'application global
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global
Champ d'application régional
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME
API
Exécutez la commande suivante pour récupérer l'ID client OAuth 2.0 configuré.
Champ d'application global
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
Champ d'application régional
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
Exécutez la commande suivante pour récupérer les paramètres d'achats via l'IAP existants dans un fichier
settings.json
.Champ d'application global
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
Champ d'application régional
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
Mettez à jour le fichier
settings.json
pour ajouter CLIENT_ID précédemment enregistré en tant que client programmatique.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }
Exécutez la commande suivante pour mettre à jour les paramètres d'IAP;application.
Champ d'application global
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings"
Champ d'application régional
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings"
Exécutez la commande suivante pour préparer un fichier
settings.json
.cat << EOF > settings.json { "iap": { "enabled":true, "oauth2ClientId": " ", "oauth2ClientSecret": " " } } EOF
Exécutez la commande suivante pour migrer vos ressources IAP.
Champ d'application global
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
Champ d'application régional
curl -X PATCH
-H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"Pour confirmer que l'ID client OAuth n'est pas défini, exécutez la commande suivante à portée globale ou régionale. Après avoir exécuté la commande, vérifiez que le champ de l'ID client OAuth est vide.
Champ d'application global
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
Champ d'application régional
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
Terraform
Si vous migrez des ressources existantes compatibles avec IAP pour utiliser un client OAuth géré par Google, vous devez définir explicitement les champs oauth2_client_id
et oauth2_client_secret
sur une seule espace blanc.
Exemple :
resource "google_compute_backend_service" "default" {
name = "tf-test-backend-service-external"
protocol = "HTTP"
load_balancing_scheme = "EXTERNAL"
iap {
oauth2_client_id = " "
oauth2_client_secret = " "
}
}
Les champs oauth2_client_id
et oauth2_client_secret
sont facultatifs. Si vous travaillez avec de nouvelles ressources compatibles avec IAP;application, vous pouvez les ignorer.
Pour en savoir plus, consultez la documentation Terraform.
Migrer des ressources Cloud Run compatibles avec IAP
Suivez les étapes de cette section pour migrer les ressources Cloud Run pour lesquelles IAP est activé et un client OAuth 2.0 est configuré.
gcloud
Avant de passer aux étapes suivantes, assurez-vous de disposer d'une version à jour de la gcloud CLI. Pour obtenir des instructions sur l'installation de gcloud CLI, consultez Installer la CLI gcloud.
Pour vous authentifier, utilisez la Google Cloud CLI et exécutez la commande suivante.
gcloud auth login
Cliquez sur l'URL qui s'affiche, puis connectez-vous.
Une fois la connexion effectuée, copiez le code de validation qui s'affiche et collez-le dans la ligne de commande.
Exécutez la commande suivante pour spécifier le projet contenant les applications que vous souhaitez continuer à protéger avec IAP.
gcloud config set project PROJECT_ID
Exécutez la commande suivante pour récupérer l'ID client OAuth 2.0 configuré.
Champ d'application global
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global \ --format="value(iap.oauth2ClientId)"
Champ d'application régional
Enregistrez l'ID client de la commande précédente si vous souhaitez autoriser l'accès programmatique.gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME \ --format="value(iap.oauth2ClientId)"
Pour autoriser le client OAuth 2.0 à accéder par programmation, effectuez une opération de lecture-mise à jour-écriture sur l'API des paramètres IAP.
Champ d'application global
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME > settings.yaml
Champ d'application régional
gcloud iap settings get \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME > settings.yaml
Mettez à jour le fichier settings.yaml et ajoutez l'ID client OAuth 2.0 récupéré précédemment sous
programmaticClients
, comme dans l'exemple.accessSettings: oauthSettings: programmaticClients: - CLIENT_ID
Appliquer les nouveaux paramètres sur l'application Compute Engine
Champ d'application global
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME
Champ d'application régional
gcloud iap settings set settings.yaml \ --resource-type=compute \ --project=PROJECT_ID \ --service=BACKEND_SERVICE_NAME \ --region=REGION_NAME
Pour migrer vos ressources, exécutez la commande à portée globale ou régionale.
Champ d'application global
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --global \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
Champ d'application régional
gcloud compute backend-services update BACKEND_SERVICE_NAME \ --region REGION_NAME \ --iap=enabled,oauth2-client-id=" ",oauth2-client-secret=" "
Pour confirmer que l'ID client OAuth n'est pas défini, exécutez la commande suivante à portée globale ou régionale. Après avoir exécuté la commande, vérifiez que le champ de l'ID client OAuth est vide.
Champ d'application global
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --global
Champ d'application régional
gcloud compute backend-services describe BACKEND_SERVICE_NAME \ --region REGION_NAME
API
Exécutez la commande suivante pour récupérer l'ID client OAuth 2.0 configuré.
Champ d'application global
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
Champ d'application régional
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME?fields=iap.oauth2ClientId"
Exécutez la commande suivante pour récupérer les paramètres d'achats via l'IAP existants dans un fichier
settings.json
.Champ d'application global
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
Champ d'application régional
curl -X GET \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings" > settings.json
Mettez à jour le fichier
settings.json
pour ajouter CLIENT_ID précédemment enregistré en tant que client programmatique.{ "accessSettings": { "oauthSettings": { "programmaticClients": [ "CLIENT_ID" ] }, }, }
Exécutez la commande suivante pour mettre à jour les paramètres d'IAP;application.
Champ d'application global
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute/services/BACKEND_SERVICE_NAME:iapSettings"
Champ d'application régional
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d "@settings.json" \ "https://iap.googleapis.com/v1/projects/PROJECT_ID/iap_web/compute-REGION_NAME/services/BACKEND_SERVICE_NAME:iapSettings"
Exécutez la commande suivante pour préparer un fichier
settings.json
.cat << EOF > settings.json { "iap": { "enabled":true, "oauth2ClientId": " ", "oauth2ClientSecret": " " } } EOF
Exécutez la commande suivante pour migrer vos ressources.
Champ d'application global
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
Champ d'application régional
curl -X PATCH
-H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Accept: application/json" \ -H "Content-Type: application/json" \ -d @settings.json \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"Pour confirmer que l'ID client OAuth n'est pas défini, exécutez la commande suivante à portée globale ou régionale. Après avoir exécuté la commande, vérifiez que le champ de l'ID client OAuth est vide.
Champ d'application global
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/backendServices/BACKEND_SERVICE_NAME"
Champ d'application régional
curl -X PATCH \ -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION_NAME/backendServices/BACKEND_SERVICE_NAME"
Migrer des ressources Google Kubernetes Engine compatibles avec IAP
Ajoutez le bloc IAP suivant à la définition de ressource personnalisée (CRD) BackendConfig. Cela active IAP avec le client OAuth 2.0 géré par Google.
apiVersion: cloud.google.com/v1
kind: BackendConfig
metadata:
name: config-default
namespace: my-namespace
spec:
iap:
enabled: true
Utiliser un jeton JWT de compte de service pour s'authentifier auprès d'IAP
Vous pouvez vous authentifier auprès d'IAP sans avoir à utiliser l'API Admin OAuth obsolète en utilisant un jeton JWT de compte de service.
Obtenir le code secret d'un client OAuth
Pour obtenir le code secret d'un client OAuth sans utiliser l'API OAuth Admin obsolète, utilisez Secret Manager en suivant les instructions de cet exemple Terraform : google_secret_manager_secret
.
Déterminer si vous utilisez l'API Admin OAuth
Pour vérifier si vous utilisez l'API OAuth Admin, procédez comme suit.
Dans la console Google Cloud , ouvrez la page des API IAP, puis sélectionnez le projet que vous souhaitez analyser.
Accéder à la page des API IAPDans la liste Sélectionner des graphiques, sélectionnez Trafic par méthode API, puis cliquez sur OK.
Dans la section Méthodes, recherchez les méthodes dont le préfixe est
google.cloud.iap.v1.IdentityAwareProxyOAuthService
. Cela indique que le projet utilise l'API Admin OAuth.