Condividi tramite

Protezione database ( multiutenza) a livello di codice VBA.

Anonimo
2019-09-09T07:12:57+00:00

Buongiorno a tutti, ho bisogno del vostro aiuto per poter capire come meglio proteggere un database di Access creato in multiutenza, diviso in Back end e front end.

Vorrei creare una routine che prima di aprire il Db condiviso esegua dei controlli di accesso e permetta il conseguente utilizzo.

Ho letto di funzioni tipo: individuare nome utente e nome computer, leggere il seriale dell' HD, creare una maschera di Login ecc.

Secondo voi esperti quale potrebbe essere la soluzione migliore tra quelle indicate per poter permettere una protezione migliore dato che il DB condiviso è molto complesso e contiene dati altamente sensibili.

Attendo un vostro consiglio per  poter creare quanto di meglio mi indicate.

Ciao Nicola.

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

4 risposte

Ordina per: Più utili
  1. Anonimo
    2019-09-09T09:01:29+00:00

    Ciao Sandro, oltre ad essere competente sei oltremodo anche modesto ed umile, grande e bella persona che sei.

    Grazie per i tuoi ottimi consigli.

    Ciao Nicola.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2019-09-09T08:51:32+00:00

    ciao Nicola,

    ti ringrazio, ma non sono un professionista, anzi...

    Per quanto allo studio, e libri di testo, fai una ricerca su google con Itiz Ben Gan, autentico Guru...!

    Sono tutti estremamente validi, alcuni di essi richiedono tempo e studio.

    In bocca al lupo…!

    Ciao e buona giornata.

    Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2019-09-09T08:46:36+00:00

    Ciao Sandro, chiarissimo e professionale come sempre.

    E' da tanto tempo che vorrei cimentarmi con SqlServer per database piu' potenti, affidabili e sicuri.

    Al riguardo ( te lo chiedo solo perché tu sei un professionista  e mi puoi aiutare a facilitare il mio studio con il suddetto Database, nel migliore dei modi) se ne hai la possibilità potresti indicarmi come e dove iniziare ad affrontare lo studio di SqlServer con eventuali testi ( in italiano possibilmente) da consultare?

    P.S. oppure consigliarmi un buon testo che mi permetta di imparare più cose possibili su SqlServer.

    Ti rinnovo la mia immensa stima per tutto quanto fai per noi.

    Ciao Nicola.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2019-09-09T08:32:46+00:00

    ciao Nicola,

    se le informazioni sono altamente sensibili, devi cambiare il database.

    Questo non significa che il FE non possa essere Access.

    Il database di Ms-Access jet/ace non permette che minimali attivita' di protezione, che volente o nolente possono essere by-passate.

    Certo, si, alcune di esse potrebbero essere piu' difficili da "bucare", ma per implementare una protezione a livello utente devi cambiare DB come detto.

    Nell'arco delle varie versioni e fino alla versione 2003 Access metteva a disposizione una protezione a livello utenti con una modalita' specifica/nativa che creava un file MDW, contenente login e password.

    Certamente utile, ma giocando con I bit, e conoscendo assembler non era cosi' difficile da "reveresare".

    Infatti, se ben ricordo, dalla versione 2010 l'interfaccia e' stata rimossa, e mantenuta la programmabilita' con VBA. Con 2013 e successive non saprei non ho mai provato, ma potrebbe essere ancora cosi'.

    Per le password di accesso e di protezione VBA vale lo stesso.

    Addirittura vale lo stesso, ma qui ci vogliono compentenze decisamente piu' specifiche per il reverse engeneering delle versioni MDE/ACCDE anche se in tal caso la parte dati resta ugualmente accessibile.

    Valuta SqlServer, ma ovviamente, la learning curve e' importante.

    Con esso puoi ottenere, oltre a quanto chiedi, una manipolazioni di dati decisamente piu' rigorosa attraverso tutti gli strumenti che mette a disposizione a livello di DbEngine ( storedProcedure, funzioni scalari, a livello tabella, trigger, windowing functions, efficienti funzioni di aggregazione, query pass-through, transazioni e molto altro….)

    Il suo motore e' decisamente potente.

    Nel mio piccolo ho realizzato un' applicazione con l'uso di recordset non associati con ADO, tra l'altro via Lan.

    Non vi e' alcuna traccia delle tabelle nel FE di Ms-Access ed i dati non sono che accessibili da me.

    Le performance sono tali da non rendersi conto del fatto che si lavori in tal modo.

    Nota che con il DB in SqlServer il  FE puo' essere sviluppato anche con altre applicazioni.

    HTH.

    Ciao, Sandro.

    La risposta è stata utile?

    0 commenti Nessun commento