<ph type="x-smartling-placeholder"></ph>
Vous consultez la documentation Apigee Edge.
Accédez à la page
Documentation sur Apigee X. En savoir plus
Lorsque vous utilisez SAML avec l'API Edge, le processus que vous utilisez pour obtenir un accès OAuth2 et les jetons d'actualisation de l'assertion SAML est appelé flux mot de passe. Avec le code secret vous utilisez un navigateur pour obtenir un code secret à usage unique que vous utiliserez ensuite pour obtenir OAuth2 de jetons.
Cependant, votre environnement peut être compatible avec l'automatisation pour des tâches de développement courantes, comme l'automatisation des tests ou l'intégration et le déploiement continus (CI/CD). Pour automatiser ces tâches lorsque SAML est activé, vous avez besoin d'un moyen d'obtenir et d'actualiser les jetons OAuth2 sans sans devoir copier/coller un code secret depuis un navigateur.
À propos des utilisateurs machine
Apigee Edge prend en charge les utilisateurs machine de votre organisation pour laquelle le protocole SAML est activé. Les utilisateurs de machines sont utilisés uniquement à des fins d'automatisation et ne sont pas accessibles directement par une personne.
Un utilisateur machine peut obtenir des jetons OAuth2 sans avoir à spécifier de code secret. Vous pouvez donc automatiser entièrement le processus obtenir et actualiser les jetons OAuth2 à l'aide de l'API Edge.
Étapes pour automatiser le processus de génération de jetons
Pour automatiser le processus de génération de jetons, procédez comme suit:
Vidéo: Regardez une courte vidéo pour découvrir comment automatiser l'accès aux API Apigee Edge à l'aide des identifiants de l'utilisateur machine.
Gérer les utilisateurs de la machine pour les zones d'identité SAML
Apigee fournit l'interface de ligne de commande (CLI) de gestion des utilisateurs machine pour créer et gérer des comptes utilisateur machine. Les étapes d'utilisation de la CLI de gestion des utilisateurs de la machine sont décrites dans les sections suivantes.
Utiliser la CLI
Pour utiliser la CLI de gestion des utilisateurs machine, commencez par télécharger et décompresser le fichier suivant:
usermgmt.tar.gz
(1)
Le format d'appel de la CLI est le suivant:
usermgmt_platform [command] [flags]
Le tableau suivant récapitule les plates-formes compatibles et la commande correspondante pour appeler la CLI de gestion des utilisateurs machine.
(Les exécutables se trouvent dans le répertoire usermgmt
.)
Plate-forme | 32 bits | 64 bits |
---|---|---|
Linux | usermgmt_linux_386 |
usermgmt_linux_amd64 |
Mac | usermgmt_darwin_386 |
usermgmt_darwin_amd64 |
Windows | usermgmt_windows_386 |
usermgmt_windows_amd64 |
Le tableau suivant récapitule les commandes que vous pouvez spécifier.
Vous pouvez éventuellement transmettre l'un des indicateurs suivants pour afficher l'aide sur la commande spécifiée: -h ou --help.
Se connecter à la CLI
La première fois que vous exécutez la CLI dans une période de 24 heures, vous êtes invité à saisir les identifiants de votre compte zoneadmin.
Enter your Apigee credentials
Username: zoneadmin-username
Password: zoneadmin-password
If your user is opted with MFA, enter MFA code. Otherwise press enter to skip.
MFA: mfa-code_or_enter_to_skip
La CLI de gestion des utilisateurs de la machine stocke un jeton d'accès sur votre machine locale. Vous ne devez donc vous connecter qu'une seule fois par période de 24 heures.
Obtenir de l'aide sur l'utilisation de la CLI
Affichez les informations d'utilisation de la CLI à l'aide de la commande usermgmt_platform help. Consultez la section Utiliser la CLI pour obtenir la liste des plates-formes compatibles.
usermgmt_platform help
Les informations d'aide suivantes s'affichent:
A command-line interface (CLI) to manage machine user accounts to automate
Apigee identity zone management. Use the CLI to create, list, delete,
and reset the password for machine users.
Usage:
usermgmt [flags]
usermgmt [command]
Available Commands:
create Creates a machine users in an identity zone.
delete Deletes a machine users in an identity zone.
help Help about any command
list Lists the machine users in an identity zone.
reset Resets the password for a machine user in an identity zone.
Flags:
-h, --help help for usermgmt
Use "usermgmt [command] --help" for more information about a command.
Affichez l'aide sur une commande spécifique en transmettant la commande et l'indicateur -h ou --help sur la ligne de commande.
Par exemple, pour obtenir de l'aide sur la commande "list" :
usermgmt_platform list -h
Les informations d'aide suivantes s'affichent:
Lists the machine users in an identity zone.
Usage:
usermgmt list [flags]
Flags:
-h, --help help for list
Créer un utilisateur machine dans une zone d'identité
Créez un utilisateur machine dans une zone d'identité à l'aide de la commande usermgmt_platform create. Consultez la section Utiliser la CLI pour obtenir la liste des plates-formes compatibles.
- Saisissez la commande suivante:
usermgmt_platform create
La liste des zones d'identité s'affiche:
myzone1 myzone2
- Saisissez le nom d'une zone lorsque vous y êtes invité:
Enter a zone name: myzone1
- Saisissez un nom d'utilisateur pour l'utilisateur de la machine:
Create a Machine User Username: machineuser1@mycompany.com
- Saisissez un mot de passe pour l'utilisateur de la machine. Saisissez à nouveau le mot de passe lorsque vous y êtes invité.
Password: password Re-enter password: password
L'utilisateur est créé.
Created machine user machineuser1@mycompany.com
Répertorier tous les utilisateurs de la machine d'une zone d'identité
Répertoriez tous les utilisateurs de la machine d'une zone d'identité à l'aide de la commande usermgmt_platform list. Consultez la section Utiliser la CLI pour obtenir la liste des plates-formes compatibles.
- Saisissez la commande suivante:
La liste des zones d'identité s'affiche:usermgmt_platform list
myzone1 myzone2
- Saisissez le nom d'une zone lorsque vous y êtes invité:
Enter a zone name: myzone1
La liste des utilisateurs de la machine dans la zone d'identité s'affiche:
Machine users in the zone: machineuser1@mycompany.com
Réinitialiser le mot de passe d'un utilisateur de machine dans une zone d'identité
Réinitialisez le mot de passe d'un utilisateur machine dans une zone d'identité à l'aide de la commande usermgmt_platform reset. Consultez la section Utiliser la CLI pour obtenir la liste des plates-formes compatibles.
- Saisissez la commande suivante:
usermgmt_platform reset
La liste des zones d'identité s'affiche:
myzone1 myzone2
- Saisissez le nom d'une zone lorsque vous y êtes invité:
Enter a zone name: myzone1
- Saisissez le nom d'utilisateur de la machine dont vous souhaitez réinitialiser le mot de passe:
Reset User Password Enter the username for the machine user Username: machineuser1@mycompany.com
- Saisissez un nouveau mot de passe pour l'utilisateur de la machine. Saisissez à nouveau le mot de passe lorsque vous y êtes invité.
Enter the new password: password Re-enter password: password
Le mot de passe est réinitialisé.
Reset password for machine user machineuser1@mycompany.com
Supprimer un utilisateur machine dans une zone d'identité
Supprimez un utilisateur machine dans une zone d'identité à l'aide de la commande usermgmt_platform delete. Consultez la section Utiliser la CLI pour obtenir la liste des plates-formes compatibles.
- Saisissez la commande suivante:
La liste des zones d'identité s'affiche:usermgmt_platform delete
myzone1 myzone2
- Saisissez le nom d'une zone lorsque vous y êtes invité:
Enter a zone name: myzone1
- Saisissez le nom d'utilisateur de la machine que vous souhaitez supprimer:
Delete User Enter the username for the machine user Username: machineuser1@mycompany.com
L'utilisateur machine est supprimé.
Deleted user machineuser1@mycompany.com
Attribuer les rôles requis à l'utilisateur machine dans votre organisation Edge
À l'aide de l'interface utilisateur, ajoutez l'utilisateur de la machine à votre organisation Edge compatible SAML et attribuez-lui les rôles requis (par exemple, administrateur de l'organisation). comme indiqué dans la section Ajouter des utilisateurs.
Obtenir les jetons OAuth2 de l'utilisateur machine
Vous pouvez automatiser le processus de génération de jetons et gérer la mise en cache des jetons pour les utilisateurs de machine avec la
Utilitaires acurl
(1) et get_token
(1), tels que décrits dans l'article
OAuth2 pour les utilisateurs machine et Utilisateurs de machines dans les zones SAML.
Pour obtenir manuellement les jetons OAuth2 de l'utilisateur machine avec curl
:
- Utilisez l'outil d'encodage d'URL de votre choix pour encoder le nom d'utilisateur et le mot de passe de l'utilisateur de la machine.
Avertissement:Utilisez un outil d'encodage d'URL
interne pour vous assurer que les identifiants de l’utilisateur de la machine ne seront pas compromis. - Générez les jetons d'accès et d'actualisation initiaux en appelant le point de terminaison du jeton SAML, illustré dans l'exemple suivant:
curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \ -H "accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://zoneName.login.apigee.com/oauth/token -s \ -d 'grant_type=password&username=machineusername&password=machineuserpassword'
Pour l'autorisation, transmettez les identifiants client OAuth2 réservés,
ZWRnZWNsaTplZGdlY2xpc2VjcmV0
, dans le champAuthorization
. L'appel imprime les jetons d'accès et d'actualisation àstdout
- Transmettez le jeton d'accès à un appel d'API de gestion Edge en tant qu'en-tête de support:
curl -H "Authorization: Bearer ACCESS_TOKEN" \ https://api.enterprise.apigee.com/v1/organizations/orgName
- Lorsque le jeton d'accès expire, vous pouvez l'actualiser en l'envoyant au service
de jeton, comme le montre l'exemple suivant:
curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \ -H "Accept: application/json;charset=utf-8" \ -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \ https://zoneName.login.apigee.com/oauth/token \ -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'
(1) Copyright 2023 Google LLC
Les outils usermgmt
, acurl
et get_token
sont rendus disponibles en tant que "logiciels". sous la section
contrat régissant votre utilisation de Google Cloud Platform, y compris du Service
Les conditions d'utilisation spécifiques sont disponibles à l'adresse https://cloud.google.com/terms/service-terms.