Newsgroup: it.comp.appl.access
Titolo: riguardo la protezione di un DB

ho capito dai disorsi precedenti che la password non č il modo migliore di
proteggere un DB perchč possono scoprirla da codice.
io ho usato la tecnica dell' allowbypasskey per impedire all'utente di
entrare nel mio database ma adesso mi viene un dubbio : si puņ superare
anche questa protezione ?
e volevo anche chiedere : c'č un modo per impedire che ti esportino roba
dentro il tuo DB, password a parte ? (se sei su windows 98 perchč su nt il
problema non sussiste)
ciao
frolix8

 dentro il tuo DB, password a parte ? (se sei su windows 98 perchè su nt il


ti passo la routine così come sta nel mio db.
in pratica il blocco viene messo automaticamente quando si apre il form
principale.
se vuoi toglierlo (ma questo lo sai solo tu che l'hai messo ovviamente) devi
premere ,in questo caso , ctrl 6 con il focus su un'area di testo, che in
questo caso si chiama testo12 (ma può essere un bottone o qualsiasi altra
cosa , e ovviamente qualunque combinazione di tasti), chiudere il db e
riaprirlo premendo il tasto shift.
col blocco il db lavora normalmente anche in rete, semplicemente quando
qualcuno cerca di aprirlo con il tasto shift, cioè bypassando le
impostazioni di avvio, non ci riesce.
ciao
frolix8
Private Sub Form_Open(Cancel As Integer)
mettiblocco
End Sub
Sub mettiblocco()
Dim dbs As Database, prp As Property
Const conErroreProprietàNonTrovata = 3270
Set dbs = CurrentDb
On Error GoTo Modifica_Err
   dbs.Properties("AllowBypassKey") = False
On Error GoTo 0
Exit Sub
Modifica_Err:
    If Err = conErroreProprietàNonTrovata Then  ' Proprietà non trovata.
       Set prp = dbs.CreateProperty("AllowBypassKey", dbBoolean, True)
       dbs.Properties.Append prp
       End If
End Sub
Private Sub Testo12_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 54 And Shift = acCtrlMask Then togliblocco
End Sub
Sub togliblocco()
Dim dbs As Database, prp As Property
'MsgBox ("tolgo il blocco")
Const conErroreProprietàNonTrovata = 3270
Set dbs = CurrentDb
On Error GoTo Modifica_Err
dbs.Properties("AllowBypassKey") = True
On Error GoTo 0
Exit Sub
Modifica_Err:
    If Err = conErroreProprietàNonTrovata Then  ' Proprietà non trovata.
       Set prp = dbs.CreateProperty("AllowBypassKey", dbBoolean, True)
       dbs.Properties.Append prp
    End If
End Sub


..ma se io con la form principale aperta e il db "bloccato", pigio F11 ?
    io dico che si apre ugualmente...
                                                            Lu

 wrote in message
SXa9W1#KAHA...@newsmst.mcis.galactica.it...

ho provato e non si apre, perň ho un menu personalizzato, forse č per
quello, perchč su un altro database effettivamente con f11 viene fuori la
finestra del db.
frolix8

problema non sussiste)
credo gestendo i permessi utente.  vedi il sito comune in proposito.
anche qui comunque c'è chi dice che si cracca anche il file mdw, ma
sai, c'è gente che si vanta di tutto, poi al dunque è un'altra storia.
--
non studio non lavoro non guardo la tv
non vado al cinema non faccio sport
----------------------------------------
il sito comune di it.comp.appl.access:
http://members.xoom.it/it_db_access

 sě.
Secondo le ultime teorie del Luciani si puo' superare il superamento, ovvero
bloccare lo sbloccaggio da codice. Credo che abbia messo la routine per
farlo sul sito comune.
Saluti.
Luciano
(DOC)




esse poi si aprono?
ah, francamente non so... rimando a chi ne sa più di me...


 esse poi si aprono?
se l'utente pippo non possiede il permesso di visualizzazione per la tabella
T1, allora quando aprira' una form legata a tale tabella, ricevera' un
messaggio che lo avvisa che non e' autorizzato a leggere quei dati.
-- 
Federico
--------------------------------------
Sito Comune di it.comp.appl.access
http://members.xoom.it/it_db_access
mailto:
it_db_...@usa.net
--------------------------------------
Tutte le richieste che mi arrivano
in privato, vengono cestinate.
--------------------------------------
Rimuovi paperino. per e-mail
--------------------------------------

 sai, c'è gente che si vanta di tutto, poi al dunque è un'altra storia.
se cracca, se cracca





fare ?
Ritengo di no, cio' perso parecchio tempo dietro, ero riuscito a
trovare una mezza soluzione ma richiedeva la possibilita' di cambiare
lo user d'accesso 'al volo' e al momento non ho trovato nessuno che
sappia come farlo (sembra essere impossibile).
----------------------------------------------------------
Paolo Hölzl
Gruppo Tekup Software developer (Bologna)
----------------------------------------------------------
ATTENTION!, antispam 
For reply, substitute xxx with gruppotekup

 sappia come farlo (sembra essere impossibile).
Non e' possibile in quanto l'utente e' legato alla sessione di access.
Bisognerebbe aprire una nuova istanza di access con utente diverso.


 fare ?
Questa e' una questione piu' volte affrontata in questo ng.
L'unica soluzione e' bloccare l'accesso alle tabelle e legare le forms a query
con opzione WITH OWNERACCESS (vedi help).
Questo sistema ha pero' dei contro, nel senso che queste query sono accessibili
a tutti! Dovresti nascondere la finestra Database e disabilitare il tasto shift
creando la proprieta' AllowBypassKey ed impostando il parametro DLL a true
(vedi help).
Questa soluzione non risolve completamente il problema, nel senso che l'utente
normale non ci riuscira', ma un utente esperto ci accede senza problemi.
Un alternativa puo' essere quella di creare delle query con password, guarda la
faq di Sib sul sito comune.
