KB: la connessione MySQL DbLib utilizza le credenziali di Windows invece dell'autenticazione MySQL configurata

Altium Designer Altium Designer
In alcuni casi, le connessioni DbLib o SVNDbLib di Altium Designer a MySQL possono tentare di autenticarsi utilizzando l’account utente Windows corrente invece delle credenziali MySQL configurate. Questo può causare il fallimento dei test di connessione, errori di autenticazione dopo la riapertura della finestra di dialogo della connessione oppure registri MySQL che mostrano tentativi di accesso basati su Windows. Il problema si verifica in genere quando le credenziali MySQL non vengono mantenute correttamente dall’origine dati ODBC. Configurare un DSN di sistema a 64 bit con credenziali corrette garantisce che le credenziali MySQL necessarie siano disponibili per la connessione e impedisce il fallback dell’autenticazione al contesto utente Windows.

A colpo d'occhio

In alcuni casi, le connessioni DbLib o SVNDbLib di Altium Designer a MySQL possono tentare di autenticarsi utilizzando l’account utente Windows corrente invece delle credenziali MySQL configurate. Questo può causare il fallimento dei test di connessione, errori di autenticazione dopo la riapertura della finestra di dialogo della connessione oppure registri MySQL che mostrano tentativi di accesso basati su Windows. Il problema si verifica in genere quando le credenziali MySQL non vengono mantenute correttamente dall’origine dati ODBC. Configurare un DSN di sistema a 64 bit con credenziali corrette garantisce che le credenziali MySQL necessarie siano disponibili per la connessione e impedisce il fallback dell’autenticazione al contesto utente Windows.
Approfondisci con l'IA:

Dettagli della soluzione

I tentativi di autenticazione usano l’account sbagliato

Si possono osservare uno o più dei seguenti sintomi:

  • Test Connection non riesce, a meno che nome utente e password non vengano reinseriti ogni volta.
  • La connessione funziona temporaneamente ma non riesce dopo la riapertura della finestra di dialogo.
  • Le tabelle e lo schema sono visibili, ma l’autenticazione non riesce durante l’uso normale.
  • I log di MySQL mostrano tentativi di accesso che usano un utente e un dominio Windows invece di un account MySQL.
  • Lo stesso file .DbLib e lo stesso DSN funzionano correttamente su una macchina ma non su un’altra.
  • Il test della connessione riesce solo per la sessione corrente e non viene mantenuto.

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)”

Le credenziali non vengono mantenute nella connessione

Questo comportamento può verificarsi a causa dell’interazione tra Altium Designer, MSDASQL e il driver MySQL ODBC:

  • Altium Designer non memorizza le credenziali del database. I valori inseriti nella finestra di dialogo della connessione sono disponibili solo per la sessione corrente.
  • Le connessioni DbLib e SVNDbLib usano una stringa di connessione OLE DB e, comunemente, si basano sul provider ODBC di Microsoft (MSDASQL) quando si collegano a origini dati ODBC.
  • Il driver MySQL ODBC memorizza le credenziali come parte della configurazione del DSN.
  • Se il DSN non mantiene correttamente le credenziali, il provider OLE DB non riceve alcuna informazione sull’utente del database.
  • Quando non viene fornito alcun utente MySQL, MSDASQL può ricorrere al contesto utente Windows corrente.
  • MySQL non supporta l’autenticazione integrata di Windows, causando il fallimento dell’autenticazione.
  • User DSNssono più soggetti a problemi di autorizzazioni, criteri di sicurezza, persistenza delle credenziali e incompatibilità tra 32 bit e 64 bit.
  • La possibilità di esplorare tabelle o schema non conferma necessariamente che le operazioni autenticate successive avranno esito positivo.

Configurare un DSN di sistema persistente

  • Utilizzare un 64-bit System DSN correttamente configurato con credenziali per MySQL.System DSN
  • Fare riferimento al DSN di sistema dalla libreria di database invece di affidarsi alle credenziali inserite nella sessione.
  • Evitare l’uso di User DSNs in ambienti aziendali o protetti da criteri di sicurezza avanzati.User DSN
  • Assicurarsi che il driver ODBC, il DSN e l’installazione di Altium Designer siano tutti componenti a 64 bit.

Creare e verificare il DSN di sistema

  1. Aprire l’amministratore ODBC a 64 bit con privilegi amministrativi usando C:\Windows\System32\odbcad32.exe.odbcad32.exe
  2. Verificare che venga utilizzato l’amministratore ODBC a 64 bit e non la versione a 32 bit.
  3. Selezionare la scheda System DSN e scegliere Add.System DSNAdd
  4. Selezionare MySQL ODBC 8.0 Unicode Driver.MySQL ODBC 8.x Unicode Driver
  5. Immettere il nome del server MySQL, il nome del database, il nome utente MySQL e la password MySQL.
  6. Selezionare Test e salvare il DSN.Test
  7. Aprire il file .DbLib oppure .SVNDbLib in Altium Designer.*.DbLib*.SVNDbLib
  8. Fare riferimento al System DSN configurato ed eseguire il test della connessione.System DSN
  9. Chiudere e riaprire la finestra di dialogo della connessione, quindi eseguire nuovamente il test per verificare la persistenza delle credenziali.
  10. Verificare che il log del server MySQL mostri l’account MySQL configurato anziché un account Windows nel formato DOMAIN\Username.DOMAIN\username

Note aggiuntive

  • Altium Designer richiede un livello di accesso al database compatibile a 64 bit.
  • Altium Designer non conserva le credenziali del database per progettazione.
  • Reinserire le credenziali in Altium Designer consente solo un test di connessione temporaneo.
  • Le credenziali ODBC sono specifiche della macchina e devono essere configurate su ogni workstation che apre il file .DbLib oppure .SVNDbLib.*.DbLib*.SVNDbLib
  • Opzionale: verificare le voci di registro del DSN di sistema se sono necessarie ulteriori attività di risoluzione dei problemi.
  • Se la stessa libreria funziona su una macchina ma non su un’altra, confrontare il tipo di DSN, la versione del driver, l’architettura del driver e la configurazione della persistenza delle credenziali.

Riferimenti

AI-LocalizedLocalizzato tramite A
Se trovi un problema, seleziona il testo/l’immagine e premi Ctrl + Enter per inviarci il tuo feedback.