Vous consultez la documentation Apigee Edge.
Accédez à la
documentation Apigee X. info
Vous pouvez utiliser l'authentification de base pour accéder à l'API Edge de votre compte Edge pour le cloud. Avec l'authentification de base, vous transmettez vos identifiants (l'adresse e-mail et le mot de passe de votre compte Apigee) dans chaque requête adressée à l'API Edge.
L'authentification de base est le mécanisme d'authentification compatible le moins sécurisé. Vos identifiants ne sont ni chiffrés ni hachés. Ils sont uniquement encodés en base64. Au lieu de l'authentification de base, Apigee vous recommande d'utiliser OAuth2 ou SAML pour accéder à l'API Edge.
Format de l'authentification de base
Vous pouvez transmettre vos identifiants en tant qu'en-tête encodé en base64 ou en tant que paramètres dans un client HTTP.
Lorsque vous transmettez vos identifiants dans l'en-tête, vous devez les encoder en base64. Voici un exemple d'en-tête d'authentification de base HTTP encodé :
Authorization: Basic YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo
Avec un client tel que curl, vous transmettez vos identifiants avec l'option -u, comme illustré dans l'exemple suivant :
curl https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval -u email_address:password
curl encode votre adresse e-mail et votre mot de passe, puis les ajoute à l'en-tête
Authorization de la requête.
Si vous omettez votre mot de passe, vous serez invité à le saisir.
Notez que vous devez utiliser l'adresse e-mail de votre compte Apigee et non votre nom d'utilisateur dans les appels d'API Edge.
Accéder à l'API Edge avec curl
Vous pouvez également définir manuellement la requête d'en-tête Authorization lorsque vous utilisez curl
pour accéder à l'API Edge.
curl encode vos identifiants, comme indiqué ci-dessus, il peut arriver que vous ne souhaitiez pas saisir vos identifiants non encodés dans l'historique de vos commandes.
Pour définir manuellement les en-têtes et accéder à l'API Edge avec curl :
- Encodez en base64 votre adresse e-mail et votre mot de passe à l'aide d'un outil tel que
base64. Exemple :read -es PASSecho -n ahamilton@apigee.com:$PASS | base64L'outil
base64renvoie une chaîne encodée :YWhhbWlsdG9uQGFwaWdlZS5jb206bXlwYXNzdzByZAo=
- Ajoutez la chaîne encodée à l'en-tête
Authorizationde votre requête d'API Edge comme illustré dans l'exemple suivant :read -es PASSBASIC=$(echo -n ahamilton@apigee.com:$PASS | base64curl -H "Authorization: Basic $BASIC" \ https://api.enterprise.apigee.com/v1/organizations/ahamilton-eval { "createdAt" : 1491854501264, "createdBy" : "noreply_iops@apigee.com", "displayName" : "ahamilton", "environments" : [ "prod", "test" ], "lastModifiedAt" : 1491854501264, "lastModifiedBy" : "noreply_iops@apigee.com", "name" : "ahamilton", "properties" : { "property" : [ { "name" : "features.isSmbOrganization", "value" : "false" }, { "name" : "features.isCpsEnabled", "value" : "true" } ] }, "type" : "trial" }
Cette requête obtient des informations sur l'organisation "ahamilton-eval". Pour obtenir la liste complète des points de terminaison de l'API Edge, consultez la documentation de référence de l'API Apigee Edge.
Vous devez inclure l'en-tête Authorization dans chaque requête.
Désactiver l'authentification de base
Vous pouvez désactiver l'authentification de base (à condition qu'OAuth2 ou SAML soit activé) en envoyant une requête à l'assistance Apigee Edge.
Consignes concernant les scripts
Dans certaines situations, il n'est pas pratique de collecter le mot de passe lors de l'exécution du script. Par exemple, vous devrez peut-être exécuter un job Cron qui se déclenche lorsqu'aucun administrateur n'est présent. Dans ce cas, vous devez rendre le mot de passe disponible pour le script sans aucune intervention humaine.
Suivez les instructions ci-dessous :
- Centralisez les identifiants dans un seul fichier utilisé comme source pour les programmes et les scripts que vous écrivez.
- Protégez le fichier source des identifiants dans la mesure du possible à l'aide de la sécurité et des autorisations du système de fichiers et permissions
- Créez un client d'automatisation avec des autorisations très limitées sur des ressources spécifiques de votre organisation.