Applications et clés
Une application Echo représente un consommateur ou un fournisseur dans votre espace de travail. Ce n'est pas une personne qui se connecte à Maestro. Ses clés eck_ permettent aux automatisations d'utiliser certaines API Echo sans réutiliser la session d'un utilisateur.
Enregistrer l'application
Ouvrez Applications dans Maestro, créez l'application et ajoutez ses liaisons aux contrats. Choisissez Consumes pour une opération qu'elle appelle ou Provides pour une opération qu'elle fournit, puis sélectionnez la version convenue. Créer ou modifier des applications, des liaisons et des clés nécessite Echo Pro ou Pro AI ainsi que l'autorisation Echo/ManageHosting du groupe MockServers. Avec un forfait payant, l'administrateur de l'organisation reçoit cette autorisation par défaut et peut l'attribuer à un autre rôle. Echo Pro AI est annoncé pour bientôt et ne peut pas encore être souscrit.
Dans Free, le lien Applications ne figure pas dans le menu, mais vous pouvez ouvrir directement l'adresse ci-dessus pour lister les applications et les clés et révoquer une clé exposée. Ces trois actions ne nécessitent que Echo/MockServers ; elles ne permettent pas de créer ou de renouveler des identifiants.
Accorder les autorisations nécessaires
| Scope | Autorise | N'autorise pas |
|---|---|---|
ReadBoundContracts |
Lire les contrats consommés liés à cette application et leurs changements de compatibilité | Publier des versions ou lire tous les contrats de l'espace de travail |
PublishOwnedContracts |
Publier des versions de contrats existants avec une liaison Provides pour cette application |
Créer des contrats, en devenir propriétaire ou publier ceux d'une autre application |
ServeMocks |
Récupérer les règles des mocks actifs partagés par les équipes de l'espace de travail | Récupérer des mocks personnels, gérer l'hébergement ou autoriser la publication de contrats |
ServeMocks ne se limite pas aux contrats liés à cette application. Il lit les règles des mocks partagés dans l'espace de travail sans nécessiter leur publication sur le service public, mais obtenir ces règles exige un abonnement Echo Pro ou Pro AI en vigueur. Dans Free, une clé déjà créée peut encore lire les contrats avec ReadBoundContracts, tandis que la demande de règles reçoit 403. Utilisez des clés distinctes pour la CI du consommateur et la publication du fournisseur.
Créer et conserver une clé
- Ouvrez les clés de l'application, créez une clé et sélectionnez seulement les scopes nécessaires.
- Décrivez son usage et choisissez une expiration.
- Copiez immédiatement le secret complet. Il n'est affiché qu'une fois ; les listes suivantes montrent son préfixe et ses métadonnées.
- Conservez-le dans les secrets de la CI, dans l'environnement ou dans un coffre. Ne le placez jamais dans un commit, du code de navigateur, une capture d'écran ou une URL.
Les exemples de packages utilisent des variables d'environnement. Les packages envoient la clé à l'API, pas à l'URL du mock publié sur le service public. L'identifiant public de ce mock constitue un mécanisme d'accès distinct.
Renouveler et révoquer
Avec Echo Pro ou Pro AI, pour remplacer une clé, créez sa remplaçante, mettez à jour le processus consommateur, vérifiez-le puis révoquez l'ancienne. Révoquez une clé perdue ou exposée depuis la liste des clés de l'application ; créez-en une nouvelle au lieu d'essayer de récupérer le secret. Si vous perdez le forfait payant, ouvrez directement Applications dans Maestro : vous pouvez toujours lister et révoquer les clés avec Echo/MockServers, mais pas en créer ni en renouveler avant de retrouver le forfait.
La révocation bloque les futurs accès authentifiés à l'API. Elle n'efface pas les règles déjà mises en cache par Mock.Client ou Mock.Server : un échec d'actualisation conserve le dernier instantané. Pour arrêter immédiatement les mocks dans ce processus, désactivez l'interception ou arrêtez-le et gérez explicitement son cache.
Pour désactiver l'URL d'un mock publié ou remplacer son identifiant, utilisez le panneau décrit dans l'hébergement public de mocks. Révoquer une clé eck_ ne désactive pas cette URL.