Newsgroup: it.comp.appl.access
Titolo: [A97] Gestione utenti - Chiedo parere su due modi per farla

Ciao a tutti, in questi giorni mi sono letto un po di documenti, 
guide, discussioni sui ng, per capire meglio la sicurezza di Access.
Questo perchè voglio iniziare una volta per tutte il passaggio di 
alcuni mdb a versioni che permettano le seguenti cose:
- impedire ad alcuni utenti avanzati la creazione o 
l'aggiornamento di oggetti negli mdb aziendali;
- usare mdb che racchiudano programmi per vari reparti, 
abilitando solo le funzioni adatte, tramite CommandBars
Ho letto della debolezza del file .MDW, anche se non ho trovato 
riferimenti a come verificarla. Non mi sono mai dilettato 
nell'hackare nulla, e non ho fatto niente più che aprirlo con un 
hex editor.
Mi piacerebbe capire come è stata provata questa debolezza, ma è 
ovvio e giusto che nessuno qui me lo dirà, e non me lo aspetto :)
Da quanto ho letto, sono indeciso tra due modi per gestire gli 
utenti nei miei mdb:
metodo 1: con MDW
Usare un MDW di sviluppo con l'utente Amministratore declassato, 
facente cioè parte solo degli Users, più un utente che ha poteri 
amministrativi, più tutti gli utenti ed i gruppi che fanno comodo 
a me.
Usare poi un mdw per i client, identico a quello di sviluppo 
TRANNE che per l'assenza dell'utente con poteri amministrativi
Gestisco i privilegi d'accesso agli oggetti del db, facendo si 
che nessuno tranne gli amministratori possa creare (tramite la 
funzionefaq_noNew() di cui si parla del documento MS secfaq.doc) 
  o modificare nulla.
Creo un mde.
metodo 2: con tabelle
Creo un paio di tabelle, per gli utenti e per i gruppi, in base 
alle quali gestisco l'abilitazione dei menu della barra dei menu 
personalizzata.
Per mia comodità gli utenti saranno quelli del dominio, usando 
Environ("userName") per leggerli.
Per tali tabelle imposto l'attributo db_hiddenObject in modo che 
non siano visibili, nemmeno se si cerca di vedere gli oggetti di 
sistema (Sitocomune, faq 1.4)
Sviluppo questo database usando un mdw nel quale l'utente 
Amministratore non fa parte del gruppo Admins in modo che, quando 
  verrà eseguito dai client con il system.mdw standard, non si 
potrà modificare né creare (tramite la funzionefaq_noNew() di cui 
si parla del documento MS secfaq.doc) oggetti.
----
Mi piacerebbe sentire i pareri dei componenti del ng riguardo ad 
ognuno di questi due metodi, per capire quale ritengono migliore 
e se ce ne sono altri ancora migliori.
Va tenuto presente che nella nostra azienda non ritengo ci sia 
alcuno che si metterebbe a craccare l'mdw o un mde, perciò in 
teoria potrei usare la gestione degli utenti semplice semplice 
con un mdw senz partiolari cautele, ma preferisco  tenere le 
spalle un po' più coperte.
Apprezzo ogni commento ;)
Alessio

 ha scritto nel messaggio 
news:fb3i3v$upk$1...@aioe.org...

Ciao Alessio,
Anch'io a breve (anche se le painificazioni nell'informatica sono qualcosa 
di aleatorio quanto una variabile) dovrei iniziare un progetto di protezione 
del nostro gestionale access.
Già adesso utilizziamo la sicurezza di access (MDW) che è vero è crackkabile 
con programmi che costano 20-30 euro, ma  non credo che un utente normale ci 
riuscirebbe.... almeno fino all'arrivo delle nuove generezioni nelle 
aziende... i ragazzi di oggi sono super esperti di crack (addestrati per i 
videogiochi/emule ecc..).
CMQ, io pensavo di utilizzare oltre all'MDW anche una funzione di 
disabilitazione dei tasti speciali di access (tipo SHIFT ecc..) che viene 
eseguita all'avvio (ne trovi un esempio sul sito comune). E anche una 
funzione per abilitare e disabilitare i menù sulla base del gruppo MDW 
dell'utente.
Per proteggere il codice conviene fare poi L'MDE, così non te lo tocca 
nessuno ;)
Ora io ho la fortuna che ho anche iniziato la migrazione su SQL per cui i 
dati, che a mio avviso è la vera ricchezza dell'azienda li proteggerò anche 
con la protezione integrata di SQL (windows integration), ossia creando 
gruppi di utenti windows che hanno accesso solo a certe tabelle SQL (come 
avviene per gli utenti access). Ma prograami per leggere le password di 
utenti windows io non li conosco...Magari ci sono.
Cmq, magari se ti interessa teniamoci in contatto, che ci confrontiamo e 
scambiamo codice.
Ciao

 scambiamo codice.
Certo! mi fa piacerissimo!
Io ho deciso di passare agli mde come prima cosa, che è la più 
semplice e mi protegge dalle modifiche ai programmi da parte di 
altri (per quanto con buone intenzioni e buoni risultati).
La gestione utenti la inizierò a provare su database di test, per 
vedere quanto mi appesantisce realmente...
Ciao!

 Ciao!
Ti ho aggiunto ai contatti.
Contattami pure se hai qualche dubbio.
o voglia di confrontarti.
Ciao 

 tanti oggetti una menata.
Appesantimento della gestione che devo fare io: naturalmente la 
sicurezza richiede SEMPRE un costo in termini di impegno e tempo: 
pensa solo alla definizione dei gruppi e degli utenti, nonchè 
alla creazione di non so quante voci di menu con le relative 
macro per le barre dei menu personalizzate che dovrei creare (li 
preferisco ai pannelli comandi con i pulsanti, ma per semplice 
questione di gusti), e alla successiva (ma spero non molta) 
manutenzione per gli aggiustamenti dovuti a cambi di reparto 
oppure a necessità di accesso a una funzionalità solo di una 
parte dei membri di un gruppo, che costringe a creare un nuovo 
gruppo e aggiustare ben bene la gestione, per esempio).
Se mi passi il file dove elenchi i problemi che hai riscontrato 
mi faresti davvero un grosso piacere!
Ti ho aggiunto pure io ai contatti, a presto!


 ovvio e giusto che nessuno qui me lo dirà, e non me lo aspetto :)
Non è tanto un problema di debolezza: se sei ossessionato dai casini che può
(teoricamente) fare un utente, dovresti cambiar lavoro.
La solidità degli MDW, in rapporto all'utenza aziendale media degli MDB, è
straordinaria   ;-)
Il vero problema è che la protezione utente integrata di Access non è più
supportata dagli ACCDB di Access 2007.
E' logico pensare che sarà la stessa musica con le versioni successive.
Quindi, fossi in te non utilizzerei delle features che muoiono con la
versione di Access che stai usando...
Tanto vale lavorare con delle tabelle interne al tuo applicativo in cui
gestisci i permessi e le autorizzazioni sull'evento Open di Form e Reports.
C'è chi si è spinto oltre ed è arrivato a livello di singoli oggetti:
http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=198
Saluti.


T'è proprio piaciuto questo lavoretto....!!!
@Alex

 ha scritto nel messaggio 
news:46d672b0$0$10627$4faf...@reader2.news.tin.it...

Azz... non lo sapevo? 

 Saluti.
T'č proprio piaciuto questo lavoretto....!!!
---------------------------------------------------------------------
Secondo me, se fosse free per tutti, sarebbe l'estensione piů bella per
Access mai sviluppata.
E lo dico con convinzione   ;-)
Saluti.

 Saluti.
Il mio 50% è favorevole... Silvio non ci sente per il restante 50%,
quindi rispetto la sua posizione.
;-)
@Alex