En tant qu'outil collaboratif pour la conception, la documentation, le débogage, la simulation et le test d'API, Apidog possède une fonctionnalité très appréciée : la prise en charge des opérations de base de données lors de l'envoi/réception de requêtes. Cette fonctionnalité facilite grandement les utilisateurs qui ont besoin de préparer des données de requête lors de l'appel d'un point d'accès ou d'insérer des données dans une base de données lors de la réception d'une réponse, ce qui en fait un favori parmi les utilisateurs.
Cependant, comme de nombreux utilisateurs utilisent quotidiennement cette fonctionnalité de manière intensive, certains domaines d'amélioration ont été identifiés. L'un des points les plus fréquemment soulevés est :
La configuration de la connexion à la base de données peut-elle être configurée par l'administrateur de l'équipe et ensuite utilisée de manière collaborative par les autres membres de l'équipe ? Il est vraiment fastidieux pour chacun de ressaisir les détails de connexion.
Dès la conception initiale de cette fonctionnalité, nous avions déjà envisagé de permettre l'utilisation collaborative des configurations de base de données. Cependant, permettre aux utilisateurs de sauvegarder des informations sensibles telles que les noms d'utilisateur et les mots de passe de base de données sur un serveur cloud est une question qui nécessite une attention particulière. Par conséquent, la sécurité des données était la raison principale pour laquelle l'utilisation collaborative des configurations de connexion à la base de données n'a pas été mise en œuvre à ce moment-là.
Aujourd'hui, Apidog est devenu l'outil principal de collaboration et de gestion d'API pour des millions de développeurs, et les capacités fondamentales d'Apidog sont devenues plus puissantes. Par conséquent, nous avons reconsidéré cette exigence d'optimisation pour l'utilisation collaborative des configurations de connexion à la base de données, en nous efforçant d'équilibrer la sécurité des données et l'efficacité du développement pour satisfaire nos utilisateurs.
Stockage des configurations de connexion à la base de données dans le cloud
Étape 1 : Créer une nouvelle connexion à la base de données
Lorsque votre version d'Apidog est mise à jour vers la version 2.6.50 ou supérieure, accédez à "Paramètres du projet -> Connexion à la base de données" et cliquez pour créer une nouvelle connexion à la base de données. Vous constaterez que tous les champs de connexion vous guident pour utiliser des variables pour remplir les valeurs des champs.

Étape 2 : Configurer les variables dans différents environnements
Dans la gestion des environnements, configurez des variables pour les connexions à la base de données à utiliser dans différents environnements. De cette façon, ces variables peuvent être appliquées dans les configurations de connexion à la base de données.

Étape 3 : Configurer les connexions à la base de données à l'aide de variables
De retour sur la page de configuration de la connexion à la base de données, vous pouvez remplir manuellement les variables en utilisant le format de variable, ou référencer directement ces variables via la fonctionnalité de valeur dynamique. Nous vous recommandons d'utiliser des variables d'environnement ici afin que la configuration bascule automatiquement avec le contexte des différents environnements. À l'exception du numéro de port, tous les autres champs doivent être remplis à l'aide de variables.

Étape 4 : Enregistrer et utiliser les connexions à la base de données
Enregistrez la configuration de la connexion à la base de données qui utilise des variables, et elle pourra être utilisée dans les opérations de base de données en gestion d'API, en test automatisé et dans d'autres domaines.

Lors de l'utilisation, le mécanisme d'utilisation réel pour les configurations de connexion à la base de données enregistrées localement par rapport à celles enregistrées dans le cloud est le suivant :
Configuration enregistrée localement (sans utiliser de variables) | Configuration enregistrée dans le cloud (utilisant des variables) |
1. Lorsqu'une requête de point d'accès déclenche une opération de base de données, la configuration de base de données spécifiée est lue. | 1. Lorsqu'une requête de point d'accès déclenche une opération de base de données, la configuration de base de données spécifiée est lue. |
2. Le système lit les détails de configuration à partir d'un fichier local, en utilisant directement les valeurs réelles. | 2. La configuration est récupérée depuis le cloud et contient des variables. Le système résout ces variables en fonction de leurs noms et de leur priorité. |
3. Ces valeurs (par exemple, hôte, nom d'utilisateur, mot de passe) sont utilisées pour construire une connexion complète à la base de données et initier la connexion. | 3. Les variables sont remplacées par leurs valeurs réelles pour former une configuration complète de connexion à la base de données, et la connexion est initiée. |
4. Une fois la connexion réussie, les instructions SQL définies dans l'opération de base de données sont exécutées, ainsi que toute opération comme la sauvegarde des résultats dans des variables. | 4. Une fois la connexion réussie, les instructions SQL définies dans l'opération de base de données sont exécutées, ainsi que toute opération comme la sauvegarde des résultats dans des variables. |
ASTUCE : Pour les autres membres du projet qui ont besoin d'utiliser cette configuration de connexion à la base de données, ils n'ont désormais plus qu'à se rendre dans la gestion des environnements, trouver les variables correspondantes et remplir les valeurs locales, sans avoir à configurer dans la gestion de projet comme auparavant.
Ce sont les étapes détaillées pour configurer les connexions à la base de données cloud. Puisqu'il est recommandé d'utiliser des valeurs locales, et que la configuration réelle est toujours stockée localement, il n'y a donc pas lieu de s'inquiéter des risques de sécurité des données. Les variables rendent simplement le processus plus pratique et gérable.
Apidog continue également de prendre en charge la saisie directe des valeurs réelles dans les paramètres de connexion à la base de données. Cela garantit la compatibilité avec les configurations existantes et prend en charge les utilisateurs qui préfèrent travailler avec des données locales. Cependant, un rappel clair sera affiché, encourageant les utilisateurs à passer aux variables et à les enregistrer dans le cloud pour une expérience meilleure et plus simplifiée.

Précautions d'utilisation des connexions à la base de données cloud :
Dans les configurations de connexion à la base de données, lorsque des variables sont utilisées, ce qui est réellement enregistré dans le cloud est le nom de la variable. Lors de l'exécution des connexions à la base de données, la configuration de connexion complète sera assemblée selon les règles d'utilisation des variables pour initier la connexion.
✅ Actions recommandées :
- Utilisez "Valeur actuelle" ou "Variable Vault" pour les valeurs des variables.
- Le numéro de port peut être saisi directement, pas besoin d'utiliser une variable, pour plus de commodité et sans risque.
❌ Actions non recommandées :
- Utiliser "Valeur initiale" pour les valeurs des variables.
- Mélanger du texte en clair et des variables, ce qui obligerait toujours chacun à configurer séparément dans les paramètres du projet.
Utilisation des variables Vault pour enregistrer les configurations de connexion à la base de données
Pour les paramètres de connexion à la base de données, nous recommandons d'utiliser les variables Vault. Ces variables sont récupérées d'un service externe de gestion des secrets et stockées sous forme cryptée sur votre machine locale. Cette approche offre le meilleur des deux mondes : une protection sécurisée des données et une collaboration d'équipe efficace grâce au stockage cloud.
Étape 1 : Configurer les variables Vault
Configurez un fournisseur Vault et stockez le texte en clair des informations d'identification de connexion à la base de données. Pour les configurations de connexion à la base de données dans différents environnements, vous devez créer différentes clés Vault dans votre fournisseur. Pour les méthodes spécifiques, consultez la documentation d'aide.

Étape 2 : Créer des variables d'environnement
Pour chaque environnement, créez des variables d'environnement avec le même nom, par exemple dbHost
. Ensuite, définissez la Valeur initiale
pour référencer la variable Vault appropriée pour cet environnement, et laissez la Valeur actuelle
suivre la valeur initiale.

Pourquoi faire cela ?
- Cela encapsule la variable Vault dans une variable d'environnement. Ainsi, lorsque vous configurerez la connexion à la base de données plus tard, il vous suffira de sélectionner la variable d'environnement. Apidog utilisera automatiquement la bonne valeur en fonction de l'environnement actuel.
- Stocker les données dans une valeur initiale garantit que tous les membres du projet peuvent les utiliser sans avoir à les configurer manuellement à nouveau, ce qui améliore l'efficacité de l'équipe.
Étape 3 : Configurer les connexions à la base de données à l'aide du secret Vault
Lors de la configuration d'une connexion à la base de données, utilisez les variables d'environnement que vous avez définies dans Gestion de l'environnement
(par exemple, dbHost
, dbUser
, dbPassword
). Pour référencer rapidement ces variables, utilisez la fonctionnalité de valeur dynamique.

Étape 4 : Tester la connexion à la base de données
Cliquez sur "Tester la connexion". Il vous sera demandé de choisir un environnement pour le test.
Assurez-vous que les variables utilisées dans la connexion (comme l'hôte, le port, le nom d'utilisateur, etc.) sont correctement configurées pour cet environnement. Une fois confirmé, le système testera la connexion :
- ✅ Si la connexion est réussie, tout est bon.
- ❌ En cas d'échec, vérifiez le message d'erreur pour les étapes de dépannage spécifiques.

Étape 5 : Utiliser les opérations de base de données dans les requêtes de point d'accès
Dans les Pré-processeurs
ou Post-processeurs
d'une requête de point d'accès, vous pouvez ajouter une opération de base de données en utilisant la configuration de base de données cloud enregistrée.

Exemple :
Disons que vous voulez :
- Rechercher l'
id
d'un animal nommé "Nancy" dans la base de données. - Utiliser cet ID pour récupérer des informations détaillées via une requête de point d'accès.

Apidog va alors :
- Exécuter l'opération de base de données
- Récupérer la valeur (par exemple,
petID
) - L'enregistrer comme variable (par exemple,
petId
) - Utiliser cette variable dans la requête de point d'accès
Une fois la configuration de la base de données configurée dans le cloud comme décrit ci-dessus :
- Les autres membres de l'équipe peuvent la réutiliser dans leurs propres opérations de base de données.
- Il n'est pas nécessaire que chaque personne la configure manuellement.
- Cela permet de gagner du temps et d'assurer la cohérence au sein de votre projet.
En conclusion
La pratique ci-dessus montre comment utiliser les variables Vault pour stocker et appliquer en toute sécurité les configurations de connexion à la base de données. Voici un bref résumé des étapes :
- Créez des variables Vault distinctes pour chaque paramètre de base de données dans différents environnements (par exemple,
testDBHost
pour les tests,prodDBHost
pour la production). Vous pouvez ignorer le port car il reste généralement le même. - Définissez des variables d'environnement avec le même nom dans tous les environnements. Pour chaque environnement, définissez la valeur initiale de la variable d'environnement pour référencer sa variable Vault correspondante.
Le tableau ci-dessous illustre comment configurer ces variables d'environnement pour les environnements de test et de production. Vous pouvez définir la valeur actuelle pour qu'elle corresponde à la valeur initiale.
Environnement | Nom de la variable d'environnement | Valeur initiale | Description |
Environnement de test | dbHost | {{vault:testDbHost}} | Référence la variable Vault pour l'adresse de la base de données dans l'environnement de test |
dbUsername | {{vault:testDbUsername}} | Référence la variable Vault pour le nom d'utilisateur de la base de données dans l'environnement de test | |
dbPwd | {{vault:testDbPwd}} | Référence la variable Vault pour le mot de passe de la base de données dans l'environnement de test | |
dbTable | store | Pas de problèmes de sécurité des données, donc saisi directement. La variable Vault est facultative | |
Environnement de production | dbHost | {{vault:prodDbHost}} | Référence la variable Vault pour l'adresse de la base de données dans l'environnement de production |
dbUsername | {{vault:prodDbUsername}} | Référence la variable Vault pour le nom d'utilisateur de la base de données dans l'environnement de production | |
dbPwd | {{vault:prodDbPwd}} | Référence la variable Vault pour le mot de passe de la base de données dans l'environnement de production | |
dbTable | store | Pas de problèmes de sécurité des données, donc saisi directement. La variable Vault est facultative |