Newsgroup: it.comp.appl.access
Titolo: Accessi controllati dal Log file.

Salve ragazzi.
Per la questione terremoto, spero innanzitutto, per le persone del Nord, che
tutto si risolva nel migliore dei modi e che la paura passi, purtroppo so
cosa vuol dire....
Problema.
Ho la necessità di controllare gli accessi al database che ho creato nel
senso che, in riferimento alla legge sulla privacy, l'utente mi ha chiesto
di creare tante password di accesso quanti sono gli utilizzatori del
programma.
La 'ciliegina sulla torta' è stata la richiesta di voler registrare ogni
operazione compiuta in un file di log in modo da sapere 'chi' e 'quando' è
stata compiuta una certa operazione nel database.
Ho visitato il sitocomune ed ho trovato un database di esempio creato da
Marco Pizzamiglio (namor) ed il codice realizzato da Mauro Castaldi.
Mi pare però che in tutte e due i casi non venga considerata la possibilità
di realizzare innanzitutto password diverse per tutti gli utenti, sapete
dirmi qualcosa?
E' possibile realizzare tutto ciò?
Grazie come sempre
Ciao
Rita

 ha scritto nel messaggio news:1Iqpd.51854$Es2.1...@twister2.libero.it...

[HIMO]
è realizzabile ma è antiprivacy
mantenere un log delle operazioni che uno fa è assolutamente antiprivacy... ok per l'acesso controllato e sapere quali record 
modificati, ma registrare ogni operazione compiuta (comprensiva la visualizzazione del report, della maschera, ecc) in un file di 
log non rispetta il "diritto di libertà"...
[/HIMO]
cmq puoi crearti una tabella (o usare l'autenticazione mdw di access) per gli utenti così ogni utente dovrà inserire la propria user 
e password per accedere, poi su modificarecord metti il codice per scrivere nel log quando ha modificato il record (fin qui non si 
lede la privacy perchè sai chi l'ha modificato ma non sai cosa ha realmente inserito, a meno che sia stato l'ultimo ad effettuare la 
modifica)
se proprio uno non può accedere ad una determinta area puoi, controllando la user, negargli l'apertura di maschere/report o altro...
spero di aver capito la tua richiesta, non conosco i codici citati, ma a grandi linee ciò che hai detto è fattibile...
ciao
Nick 

 stata compiuta una certa operazione nel database.
*****
ATTENZIONE!!!!
Non è la giliegina, ma l'ostacolo... la legge per cui il cliente ti ha
chiesto di fare sta cosa, la vieta totalmente... registrare l'accesso è
una cosa... registrare le operazioni, un altra... non è privacy, ma
anti-privacy. (anche perchè penso tu cliente voglia monitorarlo)
*****
Tornando alla questione.
Antiprivacy o meno, la cosa si può fare, basta crearsi anche una tab log.
Su evento modifica di ogni record di ogni tab apri il recordset della tab
log e inserisci magari la data, l'ora, l'operazione compiuta, e l'utente
che l'ha compiuta (riportando il CurrentUser).
Se vuoi saperne di più, chiedi... ma attenta alla privacy.
-- 
Pablitomf (Maurizio Facciuti)
“Quando non ti eserciti ricorda che qualcuno in qualche posto si sta
allenando e, quando lo incontrerai, ti batterà”.
Ed Macauley 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

Rita ha scritto:

Sono due esempi il cui scopo è solo qello di mostrare come loggare i dati
su file di testo. Sta a te modificarli ed integrarli secondo le tue
esigenze.
Se applichi la protezione a livello utente puoi usare
application.CurrentUser per ottenere il nome dell'utente, se invece ti
costruisci da sola un sistema di autenticazione lo ricaverai da lì.
Stai attenta che il mio esempio ha un bug, non ho ancora avuto tempo di
studiarne le cause per risolverlo. Adesso scrivo un post per descriverlo.
Namor
-- 
namor at inwind punto it



se siamo in due a dirlo allora non era soltanto HIMO la mia affermazione di prima :D
ottimo ;)
ciao Nick 

 E' possibile realizzare tutto ciò?
Ho realizzato un intero software gestionale che prevede la registrazione di
tutte le operazioni compiute dall'operatore corrente.
L'operatore può connettersi al suo account, modificare la propria password
ma non visualizzare il log.
Nessuno può visualizzare il log se non il programmatore stesso (questo
almeno nel mio software).
Se ti interessa posso pubblicarti qualche screenshot.
Ciao.

 > > >

Grazie Nick per la risposta ed i chiarimenti, ho capito che forse ho
interpretato male io la cosa perchè l'utente, nel mio caso il primario di un
reparto ospedaliero, vuole soltanto registrare eventuali cambiamenti ai
record in modo da risalire all'autore di eventuali manomissioni.
In ogni modo inizio a fare delle prove e ti farò sapere.
  Di nuovo grazie
   Ciao Rita

 ha scritto nel messaggio
news:co6odi$aq2$1...@news.newsland.it...

Grazie Pablitomf per la risposta, dico anche a te ciò che ho detto agli
altri e cioè che forse ho interpretato male io la cosa perchè l'utente, nel


 ha scritto nel messaggio
news:co6of0$b7b$1...@news.newsland.it...

Namor grazie per i tuoi chiarimenti, scusami, ma ho ancora tante
problematiche da risolvere con Access e, quindi, ho creduto che in questo
caso si potesse fare poco per adattare il tuo codice alle mie specifiche
esigenze.
In ogni modo sono felice che si possa fare, sperando di riuscirci...
Per il resto dico anche a te ciò che ho detto agli altri e cioè che forse ho
interpretato male io la cosa perchè l'utente, nel mio caso il primario di un
reparto ospedaliero, vuole soltanto registrare eventuali cambiamenti ai
record in modo da risalire all'autore di possibili manomissioni.
Comunque, inizio a fare delle prove e ti farò sapere.
  Di nuovo grazie
   Ciao Rita
Attendo il tuo post.

"vuLCan Karayan" <noEmail...@NoSpam.com> ha scritto nel messaggio
news:SkEpd.220106$b5.10...@news3.tin.it...

Grazie mille vulCan per la risposta, vedrei molto volentieri lo screenshot
di cui parli così da avere davanti un esempio.
Dico anche a te ciò che ho detto agli altri e cioè che forse ho interpretato
male io la cosa perchè l'utente, nel mio caso il primario di un reparto
ospedaliero, vuole soltanto registrare eventuali cambiamenti ai record in
modo da risalire all'autore di possibili manomissioni.
Per non sbagliare, però,  prendo in considerazione la possibilità di
registrare tutte le operazioni compiute anche perchè conosco bene il mio
cliente che giammai commetterebbe delle leggerezze in fatto di discrezione e
riservatezza.
Ciò che hai realizzato tu è esattamente ciò che spero di realizzare io,
infatti penso che solo il programmatore debba avere accesso al log file.
Io inizio a fare tutte le prove suggeritemi anche negli altri post, sperando
di non pesare troppo sulle vostre spalle.
Attendo lo screenshot.


 application.CurrentUser per ottenere il nome dell'utente, se invece ti
Ciao Namor,
ho usato il tuo codice per risolvere il mio problema relativo alle password
visto che avevo già tutto pronto, ho inserito poi una nuova tabella e
maschera associata ed è tutto ok.
Sempre sul tuo DB di prova ho attivato la protezione utente creando 3 nuovi
utenti con relative autorizzazioni e password, in pratica hanno tutti la
stessa autorizzazione tranne quella di cambiare la struttura del DB
ovviamente.
Ho lavorato un pò usando gli username e password creati però il logfile mi
registra le modifiche mantenendo lo username dell'Amministratore ed
ignorando gli username creati da me.
Ho capito che devo inserira la riga 'application.CurrentUser', ma non so
dove inserirla.
Puoi dirmelo?
Grazie mille
Ciao
 Rita
P.S.: E' chiaro che il messaggio è rivolto a tutti, non solo a Namor.


 ha scritto nel messaggio
news:tmoqd.55311$Ni.19...@twister1.libero.it...

Salve, volevo dire che ho risolto, grazie a tutti.
Ho riletto il codice ed ho corretto la riga interessata in questo modo (ora
funziona):
UserName = Application.CurrentUser 'Environ("Username")
Ciao
Rita


Salve,
questa volta la domanda è: Come faccio a nascondere il file di log?
Ho pensato ad una partizione del disco protetta, dovrei fare delle prove,
perchè ora il problema è fare in modo che nessun utente smanettone riesca ad
intercettare il file di log.
Grazie ancora
Ciao Rita

 Namor
Parole sante....!!!
Ma con un pò di pazienza affrontiamo anche questo.
Ciao
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 Ciao Rita
Della sicurezza del file di log ne avevo parlato con Alex Baraldi, essendo


 ha scritto nel messaggio
news:3WFqd.56607$Ni.19...@twister1.libero.it...

Ciao Namor, si infatti il file deve essere 'sprotetto' per poterci scrivere
le operazioni compiute.
Io già stavo pensando ad una partizione protetta del disco, ma vorrei fare
prima delle prove perchè anche in questo caso devo poterci accedere.
Comunque anche la tua idea va benissimo.
   Grazie ancora e buona serata
          Rita

 namor at inwind punto it
Namor,
scusami ma ho un grave problema, ho ricontrollato ora, funziona tutto, cioč
la modifica del record e l'inserimento con relativo log, non funziona
affatto la cancellazione del record.
Come ti ho detto in un altro post in cui mi chiedevi del bug, in effetti io
non ho alcun messaggio di errore solo che, alla cancellazione di un record,
il programma non mi chiede se voglio cancellarlo o meno, lo cancella e basta
senza registrare nulla nel log.
Come mai?
Io ho la libreria DAO nei riferimenti e mi sembra tutto a posto.
Ti ricordo che ho Windows XP ed Office 2003.
Mi sembrava che andasse tutto liscio per me!!
Ovviamente pongo la domanda a tutti perchč ora davvero non so che fare, non
avendo alcun messaggio di errore!
Grazie Rita

 Grazie Rita
L'ho giŕ scritto nel post in cui ho segnalato il bug, lo riporto anche qui
per completessa del thread.
La classe non logga le cancellazioni perchč hai tolto la spunta all'opzione
Strumenti/Opzioni/Modifica-Trova/Conferma/Modifiche record
quindi gli eventi "Prima di conferma eliminazione" e "Dopo conferma
eliminazione" usati dalla classe textlog non si verificano.
Bisogna riabilitare l'opzione "Conferma modifiche record" o modificare il
codice della classe per farlo lavorare sul solo evento "Eliminazione", che
si verifica sempre, anche quando disabiliti le richieste di conferma.
Namor
-- 
namor at inwind punto it
questo articolo e` stato inviato via web dal servizio gratuito 



Namor ti ringrazio anche da questa parte.
Ok tutto a posto.
Ciao
Rita