Dove / Come viene memorizzata una password ODBC quando 'salvato' in Access?

9

Ho lavorato a un programma che utilizza MS Access e ODBC per connettersi a un server SQL. Uno dei requisiti è che l'utente non debba conoscere la password per la connessione al server SQL, quindi ho controllato la casella di controllo "Salva password" quando collego le mie tabelle SQL.

Qualcuno sa dove è memorizzata la password e quanto è sicura quando viene eseguita questa azione?

    
posta GeneralBison 15.07.2011 - 05:47
fonte

3 risposte

5

Vorrei sottolineare che la risposta alla seconda parte della domanda ha poco a che fare con la prima parte.

Anche se la password è stata memorizzata in modo crittografato super-strong (non lo è), questo non sarebbe comunque sicuro, in diversi aspetti.

  1. L'utente ha accesso completo e senza restrizioni al database. Cioè può fare tutto ciò che vuole (secondo le autorizzazioni dell'utente condiviso ... I privilegi dell'utente sono limitati sul database, destra ?). Per esempio. accesso a dati non autorizzati, cancellazione di dati di altri utenti, inserimento di rifiuti, ecc.
  2. Sembra che ci sia un account utente condiviso, che tutti gli utenti abbiano collegato la loro connessione ODBC ... Il che significa che il server del database non ha modo di limitare l'accesso degli utenti, segregare i loro dati, tracciare chi ha fatto cosa, ecc.
  3. In ogni caso, la password ODBC dovrebbe essere decrittografata in memoria , consentendo all'utente di afferrarla, quindi impersonare l'applicazione e, di nuovo, fare ciò che vuole.

Faresti molto meglio a ridisegnare l'applicazione, con un livello intermedio e tutti ...
Trovo sempre strano discutere di security e MS Access nella stessa conversazione ...

Se non è possibile modificare l'architettura, prendi in considerazione l'utilizzo dell'autenticazione integrata di Windows e legando gli account utente (o il gruppo) a un ruolo db per la gestione. In questo modo, almeno ogni utente avrà il proprio account sul server, è possibile limitare l'accesso (in base al principio del privilegio minimo), nessun account condiviso ed è possibile tenere traccia delle azioni degli utenti sul database.

    
risposta data 17.07.2011 - 09:47
fonte
3

I dettagli della password ODBC possono essere risolti aprendo odbcad32.exe sulla casella di Windows e interagendo con la finestra di dialogo. Penso che i dettagli che stai cercando si trovino negli ultimi paragrafi di ACC2000: non viene visualizzato alcun messaggio di password quando si utilizza Microsoft Access. MDB con ODBC

    
risposta data 15.07.2011 - 15:49
fonte
2

Questo è stato il primo risultato su google quando si guardava dove le password ODBC sono state salvate in generale.

Si scopre che sono archiviati in chiaro nel registro di Windows. Apri regedit e dai uno sguardo sotto:

HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI

    
risposta data 30.09.2016 - 01:31
fonte

Leggi altre domande sui tag