KB : la connexion MySQL DbLib utilise les informations d’identification Windows au lieu de l’authentification MySQL configurée

Altium Designer Altium Designer
Dans certains cas, les connexions Altium Designer DbLib ou SVNDbLib à MySQL peuvent tenter de s’authentifier à l’aide du compte utilisateur Windows actuel au lieu des identifiants MySQL configurés. Cela peut entraîner l’échec des tests de connexion, des erreurs d’authentification après la réouverture de la boîte de dialogue de connexion, ou des journaux MySQL indiquant des tentatives de connexion basées sur Windows. Le problème se produit généralement lorsque les identifiants MySQL ne sont pas correctement conservés par la source de données ODBC. La configuration d’un DSN système 64 bits correctement renseigné avec les identifiants appropriés garantit que les identifiants MySQL requis sont disponibles pour la connexion et empêche le basculement de l’authentification vers le contexte utilisateur Windows.

Détails de la solution

Les tentatives d’authentification utilisent le mauvais compte

Un ou plusieurs des symptômes suivants peuvent être observés :

  • Le test de connexion échoue sauf si le nom d’utilisateur et le mot de passe sont saisis à nouveau à chaque fois.
  • La connexion fonctionne temporairement, mais échoue après la réouverture de la boîte de dialogue.
  • Les tables et le schéma sont visibles, mais l’authentification échoue en utilisation normale.
  • Les journaux MySQL montrent des tentatives de connexion utilisant un utilisateur Windows et un domaine au lieu d’un compte MySQL.
  • Le même fichier .DbLib et le même DSN fonctionnent correctement sur une machine, mais échouent sur une autre.
  • Le test de connexion réussit uniquement pour la session en cours et n’est pas conservé.

Microsoft Data Link Error dialog showing connection test failure: provider initialization failed; MySQL ODBC 8.0 reports “Access denied for user ‘altium’@…de (using password: YES)”

Les informations d’identification ne sont pas conservées dans la connexion

Ce comportement peut se produire en raison de l’interaction entre Altium Designer, MSDASQL et le pilote MySQL ODBC :

  • Altium Designer ne stocke pas les informations d’identification de la base de données. Les valeurs saisies dans la boîte de dialogue de connexion ne sont disponibles que pour la session en cours.
  • Les connexions DbLib et SVNDbLib utilisent une chaîne de connexion OLE DB et s’appuient généralement sur le fournisseur ODBC de Microsoft (MSDASQL) lors de la connexion à des sources de données ODBC.
  • Le pilote MySQL ODBC stocke les informations d’identification dans la configuration du DSN.
  • Si le DSN ne conserve pas correctement les informations d’identification, le fournisseur OLE DB ne reçoit aucune information sur l’utilisateur de la base de données.
  • Lorsqu’aucun utilisateur MySQL n’est fourni, MSDASQL peut revenir au contexte de l’utilisateur Windows actuel.
  • MySQL ne prend pas en charge l’authentification intégrée Windows, ce qui entraîne l’échec de l’authentification.
  • User DSNssont plus sujets aux problèmes d’autorisations, aux politiques de sécurité, aux problèmes de persistance des informations d’identification et aux incompatibilités 32 bits/64 bits.
  • Le fait de pouvoir parcourir les tables ou le schéma ne confirme pas nécessairement que les opérations authentifiées ultérieures réussiront.

Configurer un DSN système persistant

  • Utilisez un 64-bit System DSN correctement configuré avec des informations d’identification pour MySQL.
  • Référencez le DSN système depuis la bibliothèque de base de données au lieu de vous appuyer sur des informations d’identification saisies pour la session.
  • Évitez d’utiliser User DSNs dans des environnements d’entreprise ou renforcés sur le plan de la sécurité.
  • Assurez-vous que le pilote ODBC, le DSN et l’installation de Altium Designer sont tous des composants 64 bits.

Créer et vérifier le DSN système

  1. Ouvrez l’administrateur ODBC 64 bits avec des privilèges administrateur à l’aide de C:\Windows\System32\odbcad32.exe.Vérifiez que l’administrateur ODBC 64 bits est bien utilisé et non la version 32 bits.
  2. Sélectionnez l’onglet System DSN, puis choisissez Add.
  3. Sélectionnez MySQL ODBC 8.0 Unicode Driver.Saisissez le nom du serveur MySQL, le nom de la base de données, le nom d’utilisateur MySQL et le mot de passe MySQL.
  4. Sélectionnez Test et enregistrez le DSN.Ouvrez le fichier .DbLib ou .SVNDbLib dans Altium Designer.
  5. Référencez le System DSN configuré et testez la connexion.Fermez et rouvrez la boîte de dialogue de connexion, puis testez à nouveau pour vérifier la persistance des informations d’identification.
  6. Vérifiez que le journal du serveur MySQL affiche le compte MySQL configuré plutôt qu’un compte Windows au format DOMAIN\Username.Remarques supplémentaires
    • Altium Designer nécessite une couche d’accès à la base de données 64 bits compatible.
    • Altium Designer ne conserve pas les informations d’identification de la base de données par conception.
    • La ressaisie des informations d’identification dans Altium Designer n’active qu’un test de connexion temporaire.
    • Les informations d’identification ODBC sont propres à chaque machine et doivent être configurées sur chaque poste de travail qui ouvre le fichier .DbLib ou .SVNDbLib.Facultatif : vérifiez les entrées de registre du DSN système si un dépannage supplémentaire est nécessaire.
    • Si la même bibliothèque fonctionne sur une machine mais pas sur une autre, comparez le type de DSN, la version du pilote, l’architecture du pilote et la configuration de persistance des informations d’identification.

    Références

AI-LocalizedLocalisé par IA
Si vous trouvez un problème, sélectionnez le texte/l’image et appuyez surCtrl + Enterpour nous envoyer vos commentaires.
Contenu