L’Explorateur de données Azure Cosmos DB ne parvient pas à se connecter
Parfois, l’Explorateur de données Azure Cosmos DB ne peut pas se connecter à votre compte ou effectuer des opérations sur des ressources ou des éléments. Cet article examine les causes potentielles et les solutions à ce problème.
Important
L’Explorateur de données Azure Cosmos DB n’est pas disponible pour l’API pour PostgreSQL ou l’API pour vCore.
Prerequisites
Un compte Azure Cosmos DB existant pour NoSQL, MongoDB RU, Apache Cassandra, Apache Gremlin ou Table
Symptômes
Vous ne pouvez pas vous connecter à l’Explorateur de données même après avoir activé l’option Autoriser l’accès à partir du portail Azure.
Cause
Même après avoir configuré le contrôle d’accès en fonction du rôle et les autorisations de portail appropriées, il existe des exigences d’accès réseau supplémentaires qui doivent être configurées en fonction de votre API sélectionnée.
Certains services, tels que l’API pour NoSQL, l’API pour Apache Gremlin et l’API pour Table, utilisent un SDK JavaScript côté client pour effectuer des opérations et nécessitent un ensemble de solutions.
D’autres services, tels que l’API pour MongoDB RU et l’API pour Apache Cassandra, utilisent un intergiciel spécifique au protocole et nécessitent une solution alternative.
Solution pour l’API pour NoSQL, Apache Gremlin ou Table
Les opérations de base de données, de conteneur, de graphique et de table (plan de contrôle) sont exécutées via des appels au plan de contrôle Azure Resource Manager à l’aide du fournisseur de ressources Azure Cosmos DB. Votre configuration réseau n’affecte pas ces opérations.
Les opérations d’élément (plan de données) sont exécutées à l’aide du Kit de développement logiciel (SDK) JavaScript dans le contexte de votre navigateur. L’appareil que vous utilisez actuellement doit disposer d’un accès réseau direct au compte.
Pour les comptes configurés avec un accès public (tous les réseaux), les opérations de plan de données ne doivent pas rencontrer de problèmes de connectivité liés au réseau.
Pour les comptes configurés avec l’accès public (réseaux sélectionnés), vous devez créer une règle de pare-feu pour autoriser l’accès au compte à partir de votre appareil actuel. La fonctionnalité Mise en réseau de la page du service dans le Portail Azure a un lien hypertexte Ajouter mon adresse IP (...) qui peut ajouter automatiquement votre adresse IP.
Si le compte n’a pas de règle de pare-feu, l’Explorateur de données génère une erreur qui peut être observée dans les notifications pour l’Explorateur de données. Ce message d’erreur contient du texte similaire aux exemples suivants :
API Error NoSQL Request originated from IP XXX.XXX.XXX.XXX through public internet. This is blocked by your Cosmos DB account firewall settings.
Apache Gremlin Failure in submitting query: g.V(): Request originated from IP XXX.XXX.XXX.XXX through public internet. This is blocked by your Cosmos DB account firewall settings.
Enregistrement Error while refreshing databases: Request originated from IP XXX.XXX.XXX.XXX through public internet. This is blocked by your Cosmos DB account firewall settings.
Pour les comptes configurés avec un accès public désactivé, votre appareil doit être connecté à un réseau virtuel avec une connectivité au compte pour que les opérations de plan de données fonctionnent.
Solution pour l’API pour mongoDB RU ou Apache Cassandra
Passez en revue les solutions de plan de contrôle et de plan de données, respectivement.
Les opérations de base de données, d’espace de clés et de collecte (plan de contrôle) sont exécutées via des appels au plan de contrôle Azure Resource Manager à l’aide du fournisseur de ressources Azure Cosmos DB. Votre configuration réseau n’affecte pas ces opérations.
Les opérations d’élément (plan de données) sont exécutées à l’aide d’un service proxy dans l’intergiciel de l’API. Ce service facilite l’utilisation du protocole natif de service (MongoDB, Cassandra) dans les opérations et requêtes d’élément. Le service proxy nécessite un accès réseau direct au compte.
Pour les comptes configurés avec un accès public (tous les réseaux), les opérations de plan de données ne doivent pas rencontrer de problèmes de connectivité liés au réseau.
Pour les comptes configurés avec l’accès public (réseaux sélectionnés), vous devez sélectionner Autoriser l’accès à partir du portail Azure dans la fonctionnalité Mise en réseau de la page du service dans le Portail Azure. Cette option ajoute une plage d’adresses IP qui incluent le service middleware. Vous n’avez pas besoin d’ajouter l’adresse IP de votre appareil actuel.
Si le compte n’a pas de règle de pare-feu, l’Explorateur de données génère une erreur qui peut être observée dans les outils de développement du navigateur. Ce message d’erreur contient un message générique
Error querying documents
ouFailed to establish connection with cassandra node
généré par le service middleware. Le message d’erreur développé est inclus dans les journaux de la passerelle de calcul, comme dans l’exemple suivant :Request originated from IP XXX.XXX.XXX.XXX through public internet. This is blocked by your Cosmos DB account firewall settings.