Kako postaviti pametne telefone i računala. Informativni portal
  • Dom
  • Windows Phone
  • Zaštita i hakiranje Access baza podataka. Za uklanjanje lozinke baze podataka

Zaštita i hakiranje Access baza podataka. Za uklanjanje lozinke baze podataka

Datoteka baze podataka Microsoft Accessa, kao i drugi dokumenti sustava Office, može se zaštititi lozinkom za otvaranje. Kopirajte datoteku BDTur_firm.mdb s kojom smo radili u prvom poglavlju, nazovite je "BD_withPassword.mdb". Za postavljanje lozinke potrebno je otvoriti bazu podataka u takozvanom ekskluzivnom, jednokorisničkom načinu rada. Činjenica je da mogućnost postavljanja lozinke kada više korisnika radi u isto vrijeme 1 Microsoft Office Access 2003 podržava 255 istodobnih korisnika. bi dovelo do grešaka, pa ga MS Access ne pruža. Pokrenite program, u glavnom izborniku idite na "Datoteka \ Otvori", idite na traženi direktorij, odaberite datoteku, s padajućeg popisa vrijednosti gumba "Otvori" odaberite "Isključivo" (Sl. 3.6):

Pojavljuje se prozor baze podataka. U glavnom izborniku idite na "Usluga \ Zaštita \ Postavi lozinku za bazu podataka", u prozoru "Postavi lozinku za bazu podataka" unesite lozinku "12345" i potvrdite je (slika 3.7).


Riža. 3.7.

Sada, svaki put kada otvorite ovu datoteku na bilo kojem računalu, morat ćete unijeti navedenu lozinku (slika 3.8).


Riža. 3.8.

Da bismo promijenili lozinku, moramo izbrisati postojeću, a zatim postaviti novu. Ponovo otvorite bazu podataka u ekskluzivnom načinu, u glavnom izborniku idite na "Usluga \ Zaštita \ Izbriši lozinku baze podataka". U prozoru koji se pojavi unesite trenutnu lozinku, nakon klika na gumb "OK" bit će izbrisana. Za unos nove vrijednosti ponovno idite na stavku izbornika "Postavi lozinku baze podataka", ovaj put unesite složeniju lozinku "q1w2e3r4t5y6u7i8o9p0".

Zaštita datoteke lozinkom iznimno je nesigurna i ne može se koristiti u stvarnim aplikacijama. Lozinka se čuva jasnom i vrlo je lako razbiti. Za to postoje mnogi uslužni programi na Internetu, kao što je Access Password Recovery Genie (http://www.lenosoft.com). Nakon pokretanja ovog programa, odaberite datoteku MS Access, za koju je potrebno odabrati lozinku, a lozinka se odmah pojavljuje u glavnom prozoru (slika 3.9).


Riža. 3.9.

Zatim ćemo morati ponovno unijeti lozinku - kako ne bismo gubili vrijeme, ponovno postavite njezinu vrijednost jednaku "12345". Pozabavimo se sada povezivanjem na datoteku baze podataka iz aplikacija. Naravno, sada ćete sumnjati može li se postavljanje lozinke uopće koristiti kao sigurnosna mjera, ali u svakom slučaju moramo naučiti kako se spojiti čak i na tako "nepouzdanu" bazu podataka. Napravite novi Windows projekt i nazovite ga "VisualBD_withPassword". Iz prozora Toolbox povucite kontrolu DataGrid na obrazac, postavite njezino svojstvo Dock na "Fill". Idite na karticu Podaci, dvaput kliknite na objekt OleDbDataAdapter. U čarobnjaku koji se pojavi konfigurirajte vezu s datotekom BD_withPassword.mdb. Sada se prilikom provjere veze u prozoru "Svojstva podatkovne veze" pojavljuje poruka o pogrešci (slika 3.10):


Riža. 3.10.

Na temelju teksta pogreške, prirodna je želja da se poništi okvir "Empty password" i unese "12345" u polje za lozinku. Ali i ovaj put dolazi do pogreške 2 Također provjerite da vaša datoteka baze podataka nije otvorena u samom Microsoft Accessu.(slika 3.11):


Riža. 3.11.

Poanta je da je sučelje kartice "Veza" namijenjeno unosu parametara računa radi zaštite na razini korisnika. Pogledat ćemo to sljedeće. Ovdje ponovno postavljamo potvrdni okvir "Isprazni lozinku" i idemo na karticu "Sve". Dvaput kliknite na svojstvo Jet OLEDB: Lozinka baze podataka (ili, označivši ga, kliknite na gumb "Promijeni vrijednost"), u prozoru "Promijeni vrijednost svojstva" koji se pojavi unesite lozinku "12345" (slika 3.12) .


Riža. 3.12.

Idite na karticu "Veza" - konačno smo uspjeli dobiti pristup bazi podataka (slika 3.13).


Riža. 3.13.

Pritisnite gumb "OK" za zatvaranje prozora "Svojstva podatkovne veze", u sljedećim koracima "Čarobnjaka za konfiguraciju podatkovnog adaptera" konfiguriramo ekstrakciju svih zapisa iz tablice "Turisti". U posljednjem koraku čarobnjaka - uključujući lozinku u nizu veze - odaberite gumb "Uključi lozinku"; ispitat ćemo liniju koju je generirao čarobnjak (slika 3.14):


Riža. 3.14.

Na panelu komponente obrasca odaberite objekt DataAdapter, idite na njegov prozor Svojstva i kliknite vezu Generiraj skup podataka. Ostavljamo zadani naziv DataSet objekta. U konstruktoru obrasca ispunite objekt DataSet, a također definirajte izvor podataka za element DataGrid:

public Form1 () (InitializeComponent (); oleDbDataAdapter1.Fill (dataSet11); dataGrid1.DataSource = dataSet11.Tables.DefaultView;)

Ovdje specificiramo indeks (jednak nuli) jedine tablice u skupu podataka.

Pokrećemo aplikaciju. Obrazac prikazuje podatke iz baze podataka (

Široka upotreba ms Accessa dovela je do cijele klase programa koji vam omogućuju da saznate "zaboravljene" lozinke za baze podataka. Ne znam tko je bio prvi, ali sliče kao blizanci.

Testiranje

Svi programi koji se razmatraju u ovom pregledu mogu se nositi s lozinkama poput "može". Ali ne dopuštaju vam svi da saznate nestandardne lozinke. Rezultati ispitivanja prikazani su u tablici. Više o sigurnosnim metodama možete pročitati u članku Osiguravanje i kompromitiranje Access baza podataka. Ovdje se može primijetiti da je postao vođa. Datoteka baze podataka Access, zaštićena lozinkom od 20 znakova koji se ne mogu ispisati i naslovom druge verzije, ostala je nedostupna. Nažalost, neosvojiva je ostala samo lozinka, a ne i baza podataka. omogućuje vraćanje sadržaja tablica i gotovo u potpunosti ponovno stvara datoteku, uključujući tablice, upite, obrasce, makronaredbe, izvješća i kod modula. U testiranju su sudjelovale registrirane verzije programa.

Omogućuje vam otvaranje lozinki baze podataka programa Access. Osim toga, moguće je izbrisati ili zamijeniti lozinku za Access 97 baze podataka.

Jedini program koji generira lozinku u heksadecimalnom obliku, što vam omogućuje da vidite lozinke pomoću znakova koji se ne mogu ispisati. Nekada sam tako mislio, ali u stvari, niz se prevodi u heksadecimalni oblik i kao rezultat toga nema smisla. Pristup 97 baza podataka sa lozinkom od 20 znakova smatra se oštećenim i ne daje nikakav rezultat.

AOPR vam omogućuje definiranje lozinki za mnoge MS aplikacije. Što se tiče baze podataka Access, on zna odrediti:

  • Lozinka baze podataka
  • Vlasnik baze podataka - korisničko ime (korisnik) i njegov identifikator (ID)
  • Podaci o vlasnicima objekata baze podataka
Otvaranjem datoteke radne grupe u AOPR-u možete vidjeti:
  • Korisnička imena i njihove lozinke
  • Članstvo korisnika u grupama

Program određuje lozinke za baze podataka formata 97 - 2000 - 2003. Za baze podataka Access 97 moguće je mijenjati i brisati lozinke.

Treba napomenuti da program nije meta u svom razvoju. Algoritmi za određivanje lozinki se poboljšavaju. Ako u prethodnoj verziji (AOXPPR) za Access 97 - samo prvih 14 znakova, i ako naiđe na znakove koji se ne mogu ispisati, to govori da je datoteka oštećena. Access 2k - normalno čita svih 20 znakova, ali daje upitnike na Unicodeu. U opisanoj verziji sve su lozinke normalno definirane, a znakovi koji se ne mogu ispisivati ​​normalno se kopiraju u međuspremnik.

Ovo je skup uslužnih programa koji vam omogućuju da saznate lozinke za vrlo velik broj aplikacija. Program Office Key radi s Access bazom podataka. Omogućuje vam definiranje lozinki za bazu podataka, grupe, korisnike i njihove lozinke pomoću datoteke radne grupe. Drugi uslužni program ovog proizvođača, Access Key, ima slične funkcije. Veličina arhive je 662 KB. To je samostalan proizvod i nije dio Passware Kita.

Program vam ne dopušta da saznate identifikatore (ID) korisnika, vlasnika baze podataka i njezinih objekata. Dakle, što se tiče sposobnosti, on je inferioran. Međutim, dobro se nosio s testovima. Kopira pravu lozinku u međuspremnik, a ne upitnike. Obično određuje lozinke prilikom zamjene niza od 40 bajtova, tipično za različite verzije baze podataka. Jedina pogreška u datoteci Access 97 sa znakovima koji se ne mogu ispisati.

Program vam omogućuje da definirate lozinku baze podataka, vlasnika baze podataka - njegovo ime i identifikator. Iz datoteke radnih grupa određuje se imena korisnika i njihove lozinke. Radi s bazom podataka ms Access 2.0 - 2003

Najlakši način da se zaštitite je postavljanje lozinke za otvaranje baze podataka (.mdb). Nakon što je lozinka postavljena, svaki put kada se baza podataka otvori, pojavit će se dijaloški okvir koji traži lozinku. Samo oni korisnici koji unesu ispravnu lozinku moći će otvoriti bazu podataka. Ova metoda je prilično sigurna (Microsoft Access šifrira lozinku, tako da joj ne možete pristupiti kada izravno čitate datoteku baze podataka), ali radi samo kada otvorite bazu podataka. Nakon otvaranja baze podataka, svi objekti su dostupni korisniku (dok se ne definiraju drugi tipovi sigurnosti, opisani kasnije u ovom odjeljku). Za bazu podataka koju dijeli mala grupa korisnika ili na samostalnom računalu, postavljanje lozinke obično je dovoljno.

Za postavljanje lozinke

  1. Otvorite datoteku baze podataka u ekskluzivnom načinu. Za ovo
  • U aplikaciji Access pokrenite naredbu Datoteka / Otvori.
  • Odaberite datoteku baze podataka.
  • Na gumbu Otvori odaberite ekskluzivni način rada.
  1. Izvršite naredbu u izborniku Servis / Sigurnost / Postavite lozinku za bazu podataka.
  2. Postavite lozinku i potvrdite je.

Za uklanjanje lozinke baze podataka

  1. Otvorite datoteku u ekskluzivnom načinu
  2. Pokrenite naredbu Usluga / Zaštita / Brisanje lozinke baze podataka.

Bilješka! Nemojte koristiti lozinku baze podataka ako namjeravate izvršiti replikaciju baze podataka. Replicirane baze podataka ne mogu se sinkronizirati ako je postavljena lozinka baze podataka.

Zaštita aplikacije

Svoju aplikaciju možete zaštititi od slučajnog ili namjernog oštećenja krajnjih korisnika skrivanjem objekata baze podataka u prozoru baze podataka. Koristite opcije pokretanja aplikacije za kontrolu izgleda i ponašanja aplikacije te za zaštitu izbornika i naredbenih traka.

Skrivanje predmeta

  1. U glavnom prozoru baze podataka odaberite objekt koji želite sakriti.
  2. Kliknite gumb Svojstva na alatnoj traci - otvorit će se prozor svojstava odabranog objekta.
  3. Označite okvir skriven i pritisnite tipku u redu..
  4. Za prikaz svih skrivenih objekata odaberite naredbu Mogućnosti na jelovniku Servis, otvorite karticu Pogled i potvrdite okvir skriveni predmeti... Ikone skrivenih objekata imat će nizak kontrast.
  5. Za ponovni prikaz skrivenih objekata ponovite korake 1-3, ali u koraku 3 poništite okvir skriven.

Skrivanje tablica i odnosa u shemi podataka

  1. Otvorite podatkovnu shemu ( Usluga / Shema podataka).
  2. Desnom tipkom miša kliknite na objekt (slika tablice) i odaberite naredbu Sakrij stol.

Osiguravanje objekata baze podataka na korisničkoj razini

Najfleksibilniji i najčešći način zaštite baze podataka naziva se sigurnost na razini korisnika. Ova metoda zaštite slična je onoj koja se koristi na većini umreženih sustava. Dva glavna razloga za korištenje sigurnosti na razini korisnika su:

  • zaštita aplikacije od oštećenja uslijed nenamjernih promjena od strane korisnika tablica, upita, obrazaca, izvješća i makronaredbi o kojima aplikacija ovisi;
  • zaštita povjerljivih informacija u bazi podataka.

Prilikom pokretanja Microsoft Accessa, korisnik se mora identificirati i unijeti lozinku. Unutar datoteke radne grupe korisnici su identificirani kao članovi grupe. Microsoft Access prema zadanim postavkama stvara dvije grupe: Administratori (grupa Administratori) i Korisnici (grupa Korisnici). Dopuštena je i definicija drugih grupa.

Iako je za većinu baza podataka teško postaviti sigurnost na razini korisnika, čarobnjak za sigurnost može vam pomoći da brzo i jednostavno zaštitite svoju Access bazu podataka. Štoviše, korištenjem uobičajenih zaštitnih shema, čarobnjak vam omogućuje da smanjite ili čak eliminirate potrebu za korištenjem naredbe Zaštita na izborniku Alati.

Nakon što pokrenete čarobnjak za sigurnost, dopuštenja korisničkog i grupnog računa u radnoj grupi mogu se dodijeliti i ukloniti za bazu podataka i njezine postojeće tablice, upite, obrasce, izvješća i makronaredbe. Također se mogu postaviti zadane dozvole pristupa dodijeljene novostvorenim objektima baze podataka.

Grupe i korisnici dobivaju dopuštenja pristupa koja određuju njihovu sposobnost pristupa svakom objektu u bazi podataka. Na primjer, članovi grupe Korisnici mogu imati dopuštenja za pregled, unos ili izmjenu podataka u tablici Kupci, ali im neće biti dopušteno mijenjati strukturu te tablice. Grupi "Korisnici" može se dopustiti samo pregled podataka u tablici koja sadrži informacije o nalozima, a ne i pristup tablici "Plaća". Članovi grupe Admins imaju dopuštenja za sve objekte u bazi podataka. Možete postaviti razgranatiju upravljačku strukturu stvaranjem vlastitih grupnih računa, dodjeljivanjem tim grupama odgovarajućih dopuštenja i dodavanjem korisnika grupama.

Ako su administratorska i korisnička grupa dovoljne za sustav zaštite, nema potrebe za stvaranjem grupa. Možete koristiti standardne grupe "Administratori" i "Korisnici". U tom slučaju morate dodijeliti odgovarajuća dopuštenja pristupa standardnoj grupi "Korisnici" i dodati dodatne administratore standardnoj grupi "Administratori". Svaki novi korisnik automatski se dodaje u grupu "Korisnici". Tipične dozvole pristupa za grupu Korisnici mogu uključivati ​​čitanje podataka i osvježavanje podataka za tablice i upite te otvaranje/pokreni za obrasce i izvješća.

Ako je za različite korisničke grupe potrebna razgranatija struktura upravljanja, moguće je stvoriti nove grupe, dodijeliti različite skupove dopuštenja pristupa grupama i dodati nove korisnike odgovarajućim grupama. Kako biste olakšali upravljanje dopuštenjima pristupa, preporučujemo da dodijelite dopuštenja pristupa samo grupama (ne pojedinačnim korisnicima), a zatim dodate korisnike u odgovarajuće grupe

Bilješka.

Za više informacija o sigurnosti Microsoft Accessa, pogledajte Vodič za Microsoft Office 2000 / Visual Basic programer.

Koraci čarobnjaka za zaštitu

  1. Napravite datoteku radne grupe.
  2. Naziv datoteke je postavljen (prema zadanim postavkama Secured. Mdw), kod (prema zadanim postavkama generira se nasumično).
  3. Objekti baze podataka koje treba zaštititi su označeni (prema zadanim postavkama svi objekti su zaštićeni). Da biste poništili zaštitu objekta, poništite odgovarajući potvrdni okvir.
  4. Dodjeljuju se vrste grupa s različitim razinama pristupa i njihovi kodovi (prema zadanim postavkama, generiraju se nasumično). Vrste grupa koje treba uključiti u datoteku označene su potvrdnim okvirom.
  5. Možete postaviti neka (ali ne sva) dopuštenja za grupu Korisnici, koja je prema zadanim postavkama uključena u svaku datoteku radne grupe.
  6. Korisnici se dodaju u datoteku radne grupe - ime, lozinka, kod (prema zadanim postavkama, generira se nasumično).
  7. Svaki od dodijeljenih korisnika uključen je u određenu grupu s odgovarajućom razinom pristupa.
  8. Određuje naziv sigurnosne (nezaštićene) kopije baze podataka.

Zaštita u višekorisničkom okruženju

Sigurnost baze podataka u okruženju s više korisnika ima tri aspekta.

Prvi je spriječiti korisnike da repliciraju bazu podataka. Replikacija baze podataka omogućuje korisniku da napravi kopiju dijeljene baze podataka, kao i da doda polja i druge promjene u trenutnu bazu podataka.

Drugo, zabrana postavljanja i promjene lozinke baze podataka. Ako je lozinka postavljena na zajedničku bazu podataka, nitko drugi, ne znajući lozinku, neće moći otvoriti bazu podataka.

Treće, štiti od promjena u opcijama pokretanja koje definiraju svojstva kao što su prilagođeni izbornici, prilagođene alatne trake i obrazac za pokretanje.

Ako dijeljena baza podataka nema sigurnost na razini korisnika, ne možete spriječiti korisnike da naprave takve promjene. Čarobnjak za sigurnost postavlja sigurnost baze podataka na razini korisnika, što vam omogućuje kontrolu pristupa određenim alatima i određivanje načina na koji se objekti baze podataka mogu koristiti. Prilikom postavljanja sigurnosti na razini korisnika, korisnik ili grupa za repliciranje baze podataka, postavljanje lozinke baze podataka i promjenu opcija pokretanja moraju imati istu dozvolu pristupa kao i administrator. Nakon što pokrenete čarobnjak za sigurnost, samo članovi Admins grupe trenutne radne grupe imaju administratorske ovlasti.

Ako je sigurnost na razini korisnika već uspostavljena, a korisnik ili grupa trenutno ima dopuštenje za pristup bazi podataka koje odgovara ovlaštenju administratora, uklanjanjem dopuštenja spriječit će korisnika ili grupu da unose promjene. Možete dodijeliti odgovarajuću dozvolu pristupa korisniku ili grupi kako biste im omogućili izvođenje ovih zadataka. Nije moguće samostalno kontrolirati dostupnost svakog zadatka.

Konfiguriranje parametara pokretanja za Access DBMS

Moguće je odrediti obrazac koji će se prikazati prilikom otvaranja baze podataka, zabraniti ili omogućiti prilagodbu alatnih traka ili korištenje kontekstnih izbornika te postaviti neke druge parametre pokretanja.

  1. Na izborniku Alati odaberite Opcije pokretanja.
  2. Odaberite opcije koje želite ili unesite vrijednosti koje želite.

    Bilješka.

    Ne biste trebali kombinirati postavku u parametrima pokretanja obrasca koji se otvara kada se aplikacija pokrene i makro autoexec za otvaranje obrasca pri pokretanju.

Odabirom Opcije u dijaloškom okviru Mogućnosti pokretanja

  1. Opcije pokretanja primjenjuju se na trenutnu bazu podataka Microsoft Accessa ili projekt Microsoft Accessa.
  2. Kada odaberete opciju u dijaloškom okviru Mogućnosti pokretanja, automatski se postavlja vrijednost svojstva Access baze podataka ili Access projekta povezanog s tom opcijom. Kliknite gumb za prikaz popisa ovih svojstava.
  3. Svojstva koja odgovaraju opcijama pokretanja ne nadjačavaju postavke svojstava za određenu alatnu traku, traku izbornika, izbornik prečaca, obrazac ili izvješće. Na primjer, traka izbornika i opcije izbornika prečaca u dijaloškom okviru Mogućnosti pokretanja ne nadjačavaju vrijednosti svojstava za određene obrasce ili izvješća koja imaju prilagođenu traku izbornika ili izbornik prečaca. Stoga, kada otvorite obrazac ili izvješće, Microsoft Access prikazuje prilagođenu traku izbornika priloženu tom obrascu ili izvješću, a ne globalnu traku izbornika navedenu u dijaloškom okviru Mogućnosti pokretanja.
  4. Možete koristiti dijaloški okvir Mogućnosti pokretanja umjesto ili kao dodatak makronaredbi autoexec ... Makro autoexec radi nakon što parametri pokretanja stupe na snagu, tako da u makronaredbi autoexec ne uključuju makronaredbe koje mogu promijeniti parametre pokretanja. Na primjer, ako je obrazac naveden u okviru Obrazac / Izlaz stranice dijaloškog okvira Mogućnosti pokretanja, a makronaredba autoexec Kada se pozove makronaredba Otvori obrazac, prvi će se otvoriti obrazac naveden u dijaloškom okviru Mogućnosti pokretanja, a zatim obrazac naveden u makronaredbi Otvori obrazac.
  5. U programu Access, ako je sigurnost na razini korisnika definirana za bazu podataka, možete spriječiti korisnike da mijenjaju postavke u dijaloškom okviru Mogućnosti pokretanja. Da biste to učinili, osigurajte da korisnici ne mogu dobiti administratorska prava za pristup bazi podataka.
  6. Postavke opcije pokretanja možete zaobići tako da držite pritisnutu tipku SHIFT dok otvarate bazu podataka.

Rad s različitim verzijama Accessa

Ponekad korisnik kreira bazu podataka u jednoj verziji Accessa, a onda je potrebno pogledati u drugoj verziji Accessa (bilo stvorenoj ranije ili kasnije).

Pritom uzmite u obzir sljedeće:

Da biste mogli uređivati ​​bazu podataka, trebate pretvoriti datoteku u potrebnu verziju Access DBMS-a.

Pretvaranje baze podataka u prethodnu verziju Access baze podataka (prethodna verzija)

  1. Izvrši naredbu Usluga / Uslužni programi / Pretvori bazu podataka / u prethodnu verziju pristupa.
  2. Tijekom faze konverzije od vas će se tražiti da unesete naziv za novu bazu podataka.

Pretvaranje baze podataka u novu verziju (nadogradnja)

  1. U fazi otvaranja pojavit će se poruka u kojoj se od vas traži da odaberete jednu od opcija
  • Pretvori bazu podataka
  • Otvoreno samo za gledanje.
  1. Odaberite radio gumb Pretvori bazu podataka i odredite novi naziv za bazu podataka i mapu.

Datoteke stvorene u Accessu 2000 otvaraju se u Accessu 2003 za pregled i uređivanje.

Lozinka korisničkog računa definirana je kako bi se spriječilo povezivanje korisnika pod računom drugog korisnika. MS Access zadano dodjeljuje korisnički račun Admin i sve nove korisničke račune stvorene u radnoj grupi, prazne lozinke.

Pažnja! Ako je lozinka izgubljena ili zaboravljena, bit će je nemoguće vratiti. Stoga ga trebate pohraniti na sigurno mjesto. Za pristup bazi podataka, korisnik koji je izgubio lozinku mora kontaktirati administrator(član grupe Admini radna grupa u kojoj su kreirani račun i lozinka) za uklanjanje lozinke.

Za Stvorite lozinku korisnik treba:

1. Pokrenite MS Access koristeći radnu grupu u kojoj je pohranjen korisnički račun i prijavite se u nju koristeći račun za koji trebate kreirati ili promijeniti lozinku.

2. Otvorite bazu podataka.

3. Na kartici u grupi Administrator odabrati tim

4. Na kartici promijeniti lozinku napustiti teren Trenutna lozinka prazan ako račun prethodno nije imao lozinku. U suprotnom unesite u polje Trenutna lozinka stara lozinka.

5. Uvesti Nova lozinka u polju Nova lozinka.

6. Ponovno uđite Nova lozinka u polju Potvrda i pritisnite tipku u redu(sl. 11.18).

Uklanjanje lozinke korisničkog računa

Da biste dovršili ovaj postupak, morate ući u bazu podataka koristeći račun člana grupe Admini.

1. Pokrenite MS Access pomoću datoteka radne grupe gdje je pohranjen korisnički račun.

2. Otvorite bazu podataka.

3. Na kartici Rad s bazama podataka na vrpci u grupi Administrator odabrati tim Korisnici i dopuštenja - Korisnici i grupe….

4. Na kartici Korisnici unesite naziv korisničkog računa u polje Ime.

5. Pritisnite tipku Ukloni lozinku(sl. 11.19).

6. Ponovite korake 4 i 5 za uklanjanje ostalih lozinki, a zatim pritisnite gumb u redu.



Dozvole za pristup

Dozvole- skup atributa koji određuju prava korisnika na podatke ili objekte u bazi podataka.

Postoje dvije vrste dopuštenja pristupa:

1. Eksplicitan - ako su izravno dodijeljeni korisničkom računu. Takva dopuštenja ne utječu na dopuštenja drugih korisnika.

2. Implicitno - dopuštenja pristupa dodijeljena grupnom računu. Korisnik uključen u takvu grupu dobiva sva dopuštenja dodijeljena grupi. Uklanjanjem korisnika iz ove grupe uklanjaju se sva dopuštenja dodijeljena toj grupi.

Kada korisnik pokuša izvesti bilo koju operaciju na zaštićenom objektu baze podataka, njegove trenutne dozvole određuju se kombinacijom eksplicitnih i implicitnih dopuštenja pristupa. Na razini korisnika uvijek djelovati minimalna ograničenja od nametnutih izričite dozvole za korisnika i za sve grupe kojima ovaj korisnik pripada. Stoga je najjednostavniji način upravljanja radnom grupom stvaranje novih grupa i definiranje dopuštenja pristupa za te grupe, a ne za pojedinačne korisnike. Zatim možete promijeniti dopuštenja za pojedinačne korisnike dodavanjem korisnika u grupe ili njihovim uklanjanjem iz grupa. Osim toga, ako trebate dodijeliti nova dopuštenja, ona se dodjeljuju svim članovima grupe odjednom u jednoj operaciji.

Promijenite dopuštenja drugih korisnika za pojedinačne objekte baze podataka mogu sljedeći korisnici:

Članovi grupe Admini definiran u datoteka radne grupe koja je korištena za izradu određene baze podataka;

· vlasnik objekt;

· bilo koji korisnik koji je primljen na ovom objektu administratorske dozvole.

U nekim slučajevima korisnici koji nemaju dopuštenje za izvođenje bilo koje radnje imaju mogućnost dodijeliti ih sami sebi. Ova se situacija događa za korisnika koji je član grupe. Admini ili vlasnik objekt.

Osoba koja je kreirala tablicu, upit, obrazac, izvješće ili makro je vlasnik ovog objekta. Osim toga, grupa korisnika koja može mijenjati dopuštenja u bazi podataka također može promijeniti vlasnika objekata ili ponovno kreirati te objekte, što je alternativni način za promjenu vlasnika objekata. Za ponovno stvaranje objekta dovoljno je uvesti ili izvesti ovaj objekt u drugu bazu podataka ili napraviti kopiju objekta. Ova tehnika je najjednostavniji način za promjenu vlasnika objekata, uključujući cijelu bazu podataka.

Administratori i vlasnici su neophodni jer im se daju dopuštenja koja se ne mogu opozvati.

1. Administratori(članovi grupe Admini) uvijek može dobiti sva dopuštenja za objekte stvorene u radnoj grupi.

2. Računi koji su vlasnicima tablice, upiti, obrasci, izvješća ili makronaredbe uvijek mogu dobiti sva dopuštenja za pristup tim objektima.

3. Račun koji je vlasnik DB, uvijek može otvoriti DB.

Budući da korisnički računi Admin su potpuno isti za sve instance MS Accessa, prvi korak u organizaciji sustava zaštite je definiranje računa administrator i vlasnik(ili jedan račun koji je i administrator i vlasnik). Nakon toga trebate izbrisati korisnički račun Admin iz grupe Admini... Ako to ne učinite, bilo koji korisnik Microsoft Accessa moći će se povezati s radnom grupom pomoću računa Admin i dobiti sva dopuštenja za pristup tablicama, upitima, obrascima, izvješćima i makronaredbama radne grupe.

U grupu Admini međutim, dopušteno je dodati proizvoljan broj računa vlasnik baze podataka može postojati samo jedan račun - onaj koji je bio aktivan kada je baza podataka stvorena, ili onaj koji je bio aktivan kada su vlasnička prava prenijeta stvaranjem nove baze podataka i uvozom svih objekata iz izvorne baze u nju. Međutim, grupni računi mogu posjedovati tablice, upite, obrasce, izvješća i makronaredbe baze podataka.

Za prijavu u MS Access mogu se koristiti samo korisnički računi; ne možete se prijaviti s grupnim računom.

Računi kreirani za korisnike baze podataka moraju se spremiti u datoteku radne grupe kojoj će se korisnici pridružiti radi rada s bazom podataka. Ako se za stvaranje baze podataka koristi druga datoteka radne grupe, morate je promijeniti prije stvaranja računa.

Potrebno je stvoriti jedinstvene lozinke za račune administrator i korisnika... Korisnik koji se povezuje pomoću administratorskog računa uvijek će moći dobiti sva dopuštenja za pristup svim tablicama, upitima, obrascima, izvješćima i makronaredbama stvorenim u radnoj grupi. Korisnik koji se povezuje pomoću vlasničkog računa uvijek će moći dobiti sva dopuštenja za pristup objektima koji pripadaju ovom vlasniku.

Nakon što izradite korisničke i grupne račune, možete vidjeti i ispisati njihove dijagrame. MS Access ispisuje izvješće Računi radne grupe koje prikazuje grupe kojima svaki korisnik pripada i sve korisnike u svakoj grupi.

"Zaštita baze podataka" ovdje znači način sprječavanja neovlaštenog pristupa informacijama pohranjenim u tablicama. Zaštita izvornog koda za obrasce i module nije pokrivena.

Relevantnost ove teme je iznimno velika. O tome se može suditi po prvom mjestu u ocjeni (18 tisuća pogodaka) članka koji je napisao Yuri Sherman. Čak sam naišao i na knjigu od 500 stranica koja je u potpunosti posvećena zaštiti pristupa: Garry Robinson "Real World Microsoft Access Database Protection and Security.

Standardne metode zaštite

Zaštita baze podataka lozinkom

Ovaj način zaštite omogućuje postavljanje lozinke za otvaranje baze podataka za sve korisnike. Da biste ga stvorili, trebate otvoriti datoteku baze podataka u "ekskluzivnom" načinu i odabrati stavku izbornika Usluga / Zaštita / Postavi lozinku za bazu podataka. Za rad s takvom bazom podataka u MS Accessu, morat ćete unijeti lozinku. Ovdje je primjer rada s DB datotekom koristeći DAO ili ADO.

Javni podtestDAO ()
Dim mWS As DAO.Workspace
Dim mDB As DAO.Baza podataka
Postavite mWS = DBEngine.Workspaces (0)

("C: \ a97.mdb", True, True, "; pwd = 123")
Kraj Sub

Javni podtestADO ()

CnDB.Open "Dobavljač = Microsoft.Jet.OLEDB.4.0" & _
"; Izvor podataka = C: \ a97.mdb" & _
"; Jet OLEDB: Lozinka baze podataka = 123"
Kraj Sub

Ovo je najnepouzdaniji način zaštite baza podataka. Postoji priličan broj besplatnih i plaćenih uslužnih programa za mapiranje lozinki. Dostupan je i izvorni kod za VB koji vam omogućuje čitanje takve lozinke. U ostalom, nije sve tako loše. Jednom sam naišao na originalnu modifikaciju ove metode zaštite, o kojoj će biti riječi u nastavku.

Zaštita korisničke lozinke

Ova metoda omogućuje vam uvođenje dodatne razine ograničenja vezanih uz rad Access baze podataka. Temelji se na izradi datoteke radne grupe, koja definira korisnička imena, njihove lozinke i prava za rad s raznim objektima baze podataka.

Slijed radnji za stvaranje zaštićene datoteke:

  • Napravite novu datoteku radne grupe.
    Da biste to učinili, u Accessu 97-2000 pokreće se program WRKGADM.EXE, a u Accessu 2003. morate odabrati stavku izbornika "Usluga / Zaštita / Administrator radne grupe". U administratoru pritisnite gumb "Kreiraj", navedite naziv, organizaciju i šifru grupe. Navodimo naziv i mjesto kreirane datoteke. Na primjer:
    Naziv: test_Name
    Organizacija: ~
    Šifra radne grupe: red od 20 simbola.
    Datoteka radne grupe: C: \ test \ gr.mdw
  • Napravite prečac za pokretanje ms Accessa pomoću generirane mdw datoteke. Prečac mora sadržavati redak: [put do MSACCESS.EXE] / WrkGrp [put do mdw datoteke]. Na primjer: "C: \ Program Files \ MSOffice2003 \ OFFICE11 \ MSACCESS.EXE" / WrkGrp C: \ test \ gr.mdw
  • Nakon pokretanja pristupa pomoću ovog prečaca, morate otvoriti stavku izbornika "Usluga / Zaštita / Korisnici i grupe". U dijaloškom okviru koji se otvori trebate stvoriti novog korisnika i dodati ga u grupu "Administratori". Na primjer, "test_User" kreiran je s kodom "987654321"
  • Sada morate otvoriti Access u ime kreiranog korisnika. Da biste to učinili, u kreirani prečac dodajte redak: / korisnik [korisničko ime]. Na primjer: "C: \ Program Files \ MSOffice2003 \ OFFICE11 \ MSACCESS.EXE" / WrkGrp C: \ test \ gr.mdw / User test_User
  • Pokrenite Access pomoću ovog prečaca. Sada stvoreni korisnik treba dodijeliti lozinku. To se radi u istom dijaloškom okviru "Korisnici i grupe". Pretpostavimo da je korisniku "test_User" dodijeljena lozinka "test_Password". Zatim morate stvoriti novu bazu podataka. U ovom slučaju, vlasnik ove baze podataka, kao i svih kreiranih ili uvezenih objekata (tablica, upita itd.) bit će korisnik čije je ime navedeno u prečacu.
  • Nakon kreiranja baze podataka, preporučljivo je izbrisati "Admin" iz grupe "Administratori", a grupi "Korisnici" oduzeti prava na objekte baze podataka i otvaranje baze podataka.
  • Dodajte naziv zaštićene baze podataka u prečac. Na primjer: "C: \ Program Files \ MSOffice2003 \ OFFICE11 \ MSACCESS.EXE" C: \ test \ db2k_test.mdb / WrkGrp C: \ test \ gr.mdw / User test_User / pwd test_Password

Ovdje je primjer otvaranja baze podataka zaštićene korisnicima pomoću DAO ili ADO

Javni podtestDAO ()
Dim mWS As DAO.Workspace
Dim mDB As DAO.Baza podataka
DBEngine.SystemDB = "C: \ test \ gr.mdw"
Postavite mWS = DBEngine.CreateWorkspace _
("", "test_User", "test_Password", dbUseJet)
Postavite mDB = mWS.OpenDatabase _
("C: \ test \ a97.mdb", Istina)
Kraj Sub

Javni podtestADO ()
Dim CnDB kao novi ADODB.Connection
CnDB.Open "Dobavljač = Microsoft.Jet.OLEDB.4.0;" & _
"Izvor podataka = C: \ test \ a97.mdb;" & _
"Jet OLEDB: baza podataka sustava = C: \ test \ gr.mdw;" & _
"Korisnički ID = test_Korisnik;" & _
"Lozinka = test_Lozinka;"
Kraj Sub

Uklanjanje takve zaštite.
Napravite novu bazu podataka. U prečac upišite put do ove baze podataka, MDW datoteku zaštićene baze podataka, ime i lozinku vlasnika. Otvorite novu bazu podataka pomoću ovog prečaca. Uvezite tablice iz zaštićenih u njega, a zatim promijenite vlasnika za sve objekte baze podataka u Admin. Kako biste saznali ime i lozinku vlasnika baze podataka, možete koristiti specijalizirane programe opisane u pregledu Access Passwords. Ako nedostaje datoteka radne grupe, možete je vratiti. Da biste to učinili, morate saznati imena i identifikatore vlasnika objekata baze podataka. Te se informacije nalaze u datoteci baze podataka i mogu se dohvatiti pomoću programa kao što je AOPR. Koristeći ove podatke, kreira se nova datoteka. (slijed je opisan gore)

Uopće nije potrebno koristiti programe koji vam omogućuju određivanje baze podataka ili korisničke lozinke. Često programeri uopće ne mare za skrivanje lozinke u tekstu programa. Nakon pokretanja programa koji radi sa zaštićenom bazom podataka, morate otvoriti virtualnu memoriju ove aplikacije u heksadecimalnom uređivaču WinHex. Traženje Unicode nizova "Korisnički ID ="; "Lozinka ="; "Zaporka baze podataka =" ili "pwd =" možete pronaći korisničko ime, njegovu lozinku i lozinku za bazu podataka.


Možete potpuno zanemariti prisutnost zaštite. Da biste to učinili, trebate koristiti AccessRecovery, koji stvara novu datoteku bez zaštite i u nju prenosi tablice, upite, obrasce, makronaredbe, izvješća i kod modula.

Nestandardne metode zaštite

Promjena ekstenzije datoteke

Prilično jednostavan način zavaravanja je promjena ekstenzije datoteke baze podataka. Vidjevši nepoznato proširenje, neće svi pokušati shvatiti prirodu ove datoteke. Osim toga, postaje moguće povezati ovo proširenje s vašim programom, tako da kada kliknete na datoteku, pokreće se vaša aplikacija, a ne Access. Preporučljivo je otvoriti takvu datoteku s isključivim pristupom, jer u tom slučaju ldb datoteka neće biti kreirana.

Zaštita pomoću lozinke baze podataka koja sadrži znakove koji se ne mogu ispisati

Prije svega, ova metoda je usmjerena na suzbijanje određivanja lozinki pomoću posebnih programa. Jedna baza s takvom zaštitom dobro mi je pokvarila poremećaj. Sada ću pokvariti raspoloženje njegovim autorima pričajući o ovoj zaštiti. Metoda se temelji na činjenici da je lozinka za baze podataka u formatu Access 2000 i 2002-2003 tekstualni niz u Unicode formatu. Međutim, nema ograničenja za njegov sadržaj. Standardni način postavljanja i korištenja lozinke baze podataka je unos s tipkovnice u dijaloški okvir. Ako niz lozinki sadrži znakove koji se ne mogu ispisati, tada ih program koji otvara lozinke baze podataka neće ispravno prikazati. S druge strane, ovu lozinku nije moguće unijeti u dijaloški okvir prilikom otvaranja baze podataka u MS Accessu.
Ali nisam zaboravio ni Access 97. Činjenica je da specifikacija baze podataka i pomoć za DAO 3.60 ukazuju na to da je maksimalni broj znakova u lozinki 14. Ali zapravo ih može biti 20. Istovremeno, sam Access 97 ne dopušta nizove lozinki duži od 14 znakova . Specifikacija Access 2003 također kaže oko 14 znakova, ali program prihvaća svih 20. Također je moguće koristiti znakove koji se ne mogu ispisivati, što većinu programa za razbijanje lozinki ostavlja u stuporu.

Da biste postavili takvu lozinku, morat ćete koristiti program koji koristi CompactDatabase metodu ADOX ili DAO knjižnica.

Zaštita od hakiranja.

  • Prvo, možete koristiti AccessRecovery.
  • Drugo, možete pokušati odrediti lozinku baze podataka pomoću posebnih programa. Pregled pristupnih lozinki daje sažetu tablicu njihovih mogućnosti.
  • Treće, lozinku možete saznati analizom programskog koda u debuggeru. Bez obzira na lozinku, ona se i dalje prosljeđuje kao tekstualni niz u metodi otvaranja baze podataka. Uz malo iskustva, ovo nije baš težak zadatak. Kada sam se prvi put susreo s takvom zaštitom, uspio sam pronaći lozinku koristeći OllyDbg debugger, pronalazeći mjesto gdje je ADODB.Connection stvoren
  • Možete saznati ili promijeniti lozinku baze podataka bez pribjegavanja pomoći posebnih programa. U Accessu 97, lozinka se dobiva XOR-om lozinke s nizom od 20 bajta. Vrijednosti ovih bajtova mogu se dobiti iz bilo koje mdb datoteke koja nije zaštićena lozinkom. Počevši od Access 2k, zbog korištenja Unicodea, 40 bajtova se dodjeljuje za pohranjivanje 20 znakova lozinke. Kod šifriranja se također koristi zbrajanje pomoću XOR-a, ali da biste dobili slijed bajtova koji odgovara praznoj lozinki, morate stvoriti datoteku s datumom baze podataka koja se istražuje. Dobiveni bajtovi se mogu unijeti u datoteku koja se istražuje i lozinka resetirati na nulu, ili se mogu dodati sličnim bajtovima datoteke koja se istražuje i može se dobiti vrijednost lozinke.

Ovaj rad ne razmatra moguće manipulacije datotekama radne grupe. Sigurno postoje načini zaštite pohranjenih lozinki od previše znatiželjnih programa, ali sve to gubi smisao kada se koristi AccessRecovery, koji uopće ne primjećuje zaštitu.

Zaštita od izmjene datoteke

Metoda zaštite temelji se na izmjeni prvih bajtova datoteke. Tako se prije otvaranja baze podataka u njenu datoteku upisuje ispravno zaglavlje pohranjeno u programu, a nakon zatvaranja vraća se pogrešno. Prilikom pokušaja otvaranja db datoteke pomoću ms Accessa, pojavljuje se poruka o pogrešci. Nije loše kombinirati ovu metodu s promjenom ekstenzije datoteke. Na primjer, možete uzeti zaglavlje dbf datoteke i napisati ga na početak mdb datoteke. Zatim promijenite ekstenziju datoteke u dbf i uživajte u rezultatu. Baza podataka se sada može otvoriti u Excelu, Accessu ili drugom programu koji vam omogućuje čitanje dbf datoteka. Evo primjera takve konverzije:

"izmjena zaglavlja DB datoteke
"Primjer: Call BaseProtect (" C: \ 01.mdb ", True)

Public Sub BaseProtect (spath kao niz, blok kao logički)
Dim iFn kao cijeli broj
iFn = FreeFile ()
Otvori sPath za binarni pristup Zapiši kao #iFn
Stavite #iFn, 5, CStr (IIf (bLock, _
"ProtectDataBase", "Standard Jet DB"))
Zatvori #iFn
Kraj Sub

Metoda nije dovoljno učinkovita, jer se program koji radi s bazom podataka može umjetno prekinuti i nezaštićena baza podataka će ostati na disku. Stoga ga vrijedi koristiti samo u kombinaciji s drugim metodama.

Zaštita promjenom verzije baze podataka

Ova metoda je daljnji razvoj ideje o modificiranju zaglavlja datoteke kako bi se suprotstavili programima koji čitaju lozinke. Metoda se temelji na činjenici da za rad s bazama podataka Access 97 i 2k programi koriste različite algoritme za čitanje lozinke i istovremeno pokušavaju samostalno odrediti verziju mdb datoteke.

Da biste odredili verziju, možete koristiti slijed od 40 bajtova, počevši od 122 od početka datoteke. Ako ovaj slijed iz Accessa 2k unesemo u bazu podataka Access 97, dobit ćemo zanimljiv rezultat. Ms Access, ADO i DAO dobro rade s ovom datotekom, a većina programa za razbijanje lozinki pada na ovaj trik. Sličan rezultat može se dobiti kada se slijed bajtova precijepi iz Accessa 97 u Access 2k

Pristupite 2k zaglavlju datoteke
dio lozinke baze podataka je označen zelenom bojom
plava - fragment karakterističan za verziju baze podataka
Pomak 0 1 2 3 4 5 6 7 8 9 A B C D E F

00000000 00 01 00 00 53 74 61 6E 64 61 72 64 20 4A 65 74
00000010 20 44 42 00 01 00 00 00 B5 6E 03 62 60 09 C2 55
00000020 E9 A9 67 72 40 3F 00 9C 7E 9F 90 FF 85 9A 31 C5
00000030 79 BA ED 30 BC DF CC 9D 63 D9 E4 C3 9F 46 FB 8A
00000040 BC 4E 9B 6D EC 37 40 D2 9C FA DB C8 28 E6 0E 20
00000050 8A 60 49 02 7B 36 E8 E4 DF B1 6A 62 13 43 D2 39
00000060 B1 33 29 F7 79 5B 8F 23 7C 2A 4F E9 7C 99 08 1F
00000070 98 FD DC 75 0C FF D8 FD 82 66 5F 95 F8 D0 89 24
00000080 85 67 C6 1F 27 44 D2 EE CF 65 ED FF 07 C7 46 A1
00000090 78 16 0C ED E9 2D 62 D4 54 06 00 00 34 2E 30 00

Elektronička zaštita ključa

Ovo je još jedna potvrda da su standardne metode zaštite, čak i od strane dobavljača trećih strana, ranjive. Govorimo o HASP ključevima. Pomoću uslužnog programa HASP Envelope možete šifrirati datoteku (u ovom slučaju bazu podataka) i dopustiti joj pristup samo iz zaštićene aplikacije. Koristi se mehanizam "transparentne" enkripcije. Kada se operativni sustav pokrene, pokreće se proces koji prati sve pozive zaštićene datoteke baze podataka. Ako ovaj poziv dolazi iz obične aplikacije, na primjer iz ms Accessa, datoteka se čita i prikazuje se poruka o "neprepoznatljivom formatu baze podataka". Ali ako aplikacija navedena tijekom enkripcije radi s datotekom, tada joj se podaci prenose u dešifriranom obliku. Kao rezultat toga, sam program nije svjestan prisutnosti zaštite. Da, složenost probijanja takve baze podataka značajno se povećava. No, pritom treba imati na umu da se uz aplikaciju mora isporučiti elektronički ključ po cijeni od N c.u. te da brzina pristupa podacima padne dva-tri puta.

Zaštita od hakiranja.

Pronađena su dva načina za dobivanje potpune kontrole nad bazom podataka.

  • Prvo, programski kod je bio ranjiv. Bazi se pristupilo pomoću upita. Od početka je u debuggeru pronađen zahtjev koji se poziva kao odgovor na klik na gumb u programu. Nadalje, ovaj zahtjev je zamijenjen tekstom zahtjeva za stvaranje tablice u drugoj bazi podataka. Nakon pritiska na tipku, upit je odabrao podatke tablice iz zaštićene baze podataka i spremio ih u drugu datoteku.
  • Drugo, napisan je program koji je pomoću kuke ubacio svoj kod u adresni prostor procesa zaštićenog HASP-om, a datoteka baze podataka jednostavno je kopirana u njegovo ime.

Šifriranje vrijednosti tablice

Ova metoda nije loša. U svakom slučaju, postoji prava nada da se nešto spasi. Međutim, postoji niz ograničenja. Prije prikaza podataka potrebno ih je dešifrirati. Ne postoji način traženja dijela niza u šifriranom polju. Algoritam šifriranja i ključ sadržani su u programu, što znači da postoji potencijalna ranjivost. U ovom slučaju, pouzdanost ovisi o otpornosti programa koji radi s bazom podataka na pucanje. Možete kombinirati posao s užitkom: ne šifrirati, već komprimirati sadržaj polja podsjetnika. Bavljenje algoritmom kompresije u programskom kodu je dosadno.

Zaključak

Prije nego što postavite pitanje kako zaštititi bazu podataka, trebali biste razmisliti o njezinoj potrebi. Nemojte se oslanjati na standardne metode, ali to nije razlog da prestanete koristiti Access. Stručnjak će hakirati sve, ali vi to možete učiniti ne tako lako.

Sljedeći članak opisuje Access transparentno šifriranje baze podataka, koje ima nekoliko prednosti u odnosu na postojeće metode.

Vrhunski povezani članci