none
Tracciare tutte le operazioni di modifica ai dati RRS feed

  • Domanda

  • Buongiorno a tutti,

    avrei due domande da porvi:
    sto cercando un metodo per poter tracciare tutte le operazioni eseguite, da un file access con tabelle collegate, su db sqlserver express 2014 in cui gli utenti vengono identificati tramite trusted connection. Ho letto qualcosa sulla possibilità di estrapolare tali informazioni dal log delle transizioni. Per questo motivo ho scaricato una versione trial di APEXSQL Log.
    La prima domanda è la seguente:
    come mai APEX non mi permette di accedere all'istanza del mio db, restituendomi l'errore "accesso non consentito per l'utente sa", mentre invece mi permette di effettuare l'accesso con gli altri utenti abilitati? Inoltre una volta tentato di effettuare tale login, non riesco piu ad accedere tramite management studio con il medesimo utente sa. Devo attendere delle ore prima di poter riaccedere.
    La seconda:
    Avete qualche suggerimento in merito alla tracciabilità?

    Grazie mille

    martedì 11 aprile 2017 07:27

Risposte

  • Ciao,

    a prescindere dal fatto che non saprei proprio come mai il tuo sa non è utilizzabile. Ma potrebbe essere disabilitato? Hai controllato il log degli errori di SQL Server? Esiste qualche policy data dal DBA o da chi gestisce l'istanza (sempre che la gestisca qualcun altro)?

    Detto questo, parlando di tracciabilità dei cambiamenti, hai varie opzioni.

    • Puoi usare il CDC (Change Data Capture), ma ti serve l'enterprise.
    • Puoi fare un trigger tuo che fa un suo log su di una tabella accessoria.
    • Puoi creare le temporal table, ma è disponibile solo su 2016.
    • Puoi fare direttamente dal chiamante (una stored procedure, l'applicazione stessa, ecc.) su di un log o simili

    Di più non mi viene in mente per ora.

    ciao


    Alessandro Alpi - Data Platfomr MVP - CTO & Co-Founder Engage IT Services S.r.l.

    mercoledì 12 aprile 2017 09:05
    Moderatore

Tutte le risposte

  • Ciao,

    a prescindere dal fatto che non saprei proprio come mai il tuo sa non è utilizzabile. Ma potrebbe essere disabilitato? Hai controllato il log degli errori di SQL Server? Esiste qualche policy data dal DBA o da chi gestisce l'istanza (sempre che la gestisca qualcun altro)?

    Detto questo, parlando di tracciabilità dei cambiamenti, hai varie opzioni.

    • Puoi usare il CDC (Change Data Capture), ma ti serve l'enterprise.
    • Puoi fare un trigger tuo che fa un suo log su di una tabella accessoria.
    • Puoi creare le temporal table, ma è disponibile solo su 2016.
    • Puoi fare direttamente dal chiamante (una stored procedure, l'applicazione stessa, ecc.) su di un log o simili

    Di più non mi viene in mente per ora.

    ciao


    Alessandro Alpi - Data Platfomr MVP - CTO & Co-Founder Engage IT Services S.r.l.

    mercoledì 12 aprile 2017 09:05
    Moderatore
  • be direi che mi hai dato un bel po di materiale su cui lavorare! ti ringrazio!!
    Riguardo all'accesso di sa, non è che non risco ad accedere. Il problema si verifica solo quando tento di avviare una sessione con apexsql. A quel punto  sa non riesce piu ad accedere per un certo periodo di tempo.
    cmq ho risolto creando un altro utente ed utilizzandolo in aplex.
    Le opzioni che mi hai elencato comunque, sono proprio quello che stavo cercando.
    Grazie ancora
    mercoledì 12 aprile 2017 11:03
  • Di nulla,

    ciao


    Alessandro Alpi - Data Platfomr MVP - CTO & Co-Founder Engage IT Services S.r.l.

    mercoledì 12 aprile 2017 13:21
    Moderatore