Étape 8 : Activer l'accès au synchronisateur

Obtenir un jeton d'autorisation

Pour effectuer les appels d'API Apigee décrits plus loin dans cette rubrique, vous devez obtenir un jeton d'autorisation doté du rôle Administrateur de l'organisation Apigee.

  1. Si vous n'êtes pas propriétaire du projet Google Cloud associé à votre organisation Apigee hybrid, assurez-vous que votre compte utilisateur GCP dispose du rôle roles/apigee.admin (Administrateur de l'organisation Apigee). Vous pouvez vérifier les rôles qui vous sont attribués à l'aide de cette commande :
    gcloud projects get-iam-policy ${PROJECT_ID}  \
    --flatten="bindings[].members" \
    --format='table(bindings.role)' \
    --filter="bindings.members:your_account_email"
    

    Exemple :

    gcloud projects get-iam-policy my-project  \
    --flatten="bindings[].members" \
    --format='table(bindings.role)' \
    --filter="bindings.members:myusername@example.com"

    Le résultat devrait ressembler à ceci :

    ROLE
    roles/apigee.admin
    roles/compute.admin
    roles/container.admin
    roles/gkehub.admin
    roles/iam.serviceAccountAdmin
    roles/iam.serviceAccountKeyAdmin
    roles/meshconfig.admin
    roles/owner
    roles/resourcemanager.projectIamAdmin
    roles/servicemanagement.admin
    roles/serviceusage.serviceUsageAdmin
  2. Si roles/apigee.admin n'apparaît pas dans vos rôles, ajoutez le rôle Administrateur de l'organisation Apigee à votre compte utilisateur. Exécutez la commande suivante pour ajouter le rôle à votre compte utilisateur :
    gcloud projects add-iam-policy-binding ${PROJECT_ID} \
      --member user:your_account_email \
      --role roles/apigee.admin

    Exemple :

    gcloud projects add-iam-policy-binding my-project \
      --member user:myusername@example.com \
      --role roles/apigee.admin
  3. Sur la ligne de commande, obtenez vos identifiants d'authentification gcloud à l'aide de la commande suivante :

    Linux/MacOS

    export TOKEN=$(gcloud auth print-access-token)

    Pour vérifier que votre jeton a été renseigné, utilisez echo, comme le montre l'exemple suivant :

    echo $TOKEN

    Votre jeton doit s'afficher sous forme de chaîne encodée.

    Windows

    for /f "tokens=*" %a in ('gcloud auth print-access-token') do set TOKEN=%a

    Pour vérifier que votre jeton a été renseigné, utilisez echo, comme le montre l'exemple suivant :

    echo %TOKEN%

    Votre jeton doit s'afficher sous forme de chaîne encodée.

Activer l'accès au synchronisateur

Pour activer l'accès du synchronisateur, procédez comme suit :

  1. Obtenez l'adresse e-mail du compte de service auquel vous accordez l'accès au synchronisateur. Pour les environnements hors production (comme suggéré dans ce tutoriel), il doit s'agir de apigee-non-prod. Pour les environnements de production, il doit s'agir de apigee-synchronizer. Exécutez la commande suivante :

    Hors production

    gcloud iam service-accounts list --filter "apigee-non-prod"

    Production

    gcloud iam service-accounts list --filter "apigee-synchronizer"

    Si elle correspond au modèle apigee-non-prod@${ORG_NAME}.iam.gserviceaccount.com, vous pouvez utiliser ce modèle à l'étape suivante.

  2. Appelez l'API setSyncAuthorization afin d'activer les autorisations requises pour le synchronisateur à l'aide de la commande suivante :

    Hors production

    curl -X POST -H "Authorization: Bearer ${TOKEN}" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:setSyncAuthorization" \
       -d '{"identities":["'"serviceAccount:apigee-non-prod@${ORG_NAME}.iam.gserviceaccount.com"'"]}'
    

    Production

    curl -X POST -H "Authorization: Bearer ${TOKEN}" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:setSyncAuthorization" \
       -d '{"identities":["'"serviceAccount:apigee-synchronizer@${ORG_NAME}.iam.gserviceaccount.com"'"]}'
    

    Où :

    • ${ORG_NAME} : nom de votre organisation hybride.
    • apigee-non-prod${ORG_NAME}.iam.gserviceaccount.com ou
      apigee-synchronizer${ORG_NAME}.iam.gserviceaccount.com : adresse e-mail du compte de service.
  3. Afin de vérifier que le compte de service a été défini, utilisez la commande suivante pour appeler l'API et obtenir une liste de comptes de service :
    curl -X GET -H "Authorization: Bearer $TOKEN" \
      -H "Content-Type:application/json" \
      "https://apigee.googleapis.com/v1/organizations/${ORG_NAME}:getSyncAuthorization"
    

    La sortie ressemble à ceci :

    Hors production

    {
       "identities":[
          "serviceAccount:apigee-non-prod@my_project_id.iam.gserviceaccount.com"
       ],
       "etag":"BwWJgyS8I4w="
    }

    Production

    {
       "identities":[
          "serviceAccount:apigee-synchronizer@my_project_id.iam.gserviceaccount.com"
       ],
       "etag":"BwWJgyS8I4w="
    }

Vous avez maintenant rendu possible la communication entre vos plans d'exécution et de gestion Apigee hybrid. Nous allons ensuite appliquer votre configuration à l'environnement d'exécution hybride et terminer votre installation d'Apigee hybrid.

1 2 3 4 5 6 7 8 (NEXT) Step 9: Install the hybrid runtime