Öryggiskerfiš ķ MS Access

Įrni Sigurjónsson

 

 

Athugasemd: Greinin mišašist upphaflega viš Access 97, en eftir žvķ sem ég best veit gilda sömu reglur um öryggi ķ Access 2000. Greinin var skrifuš ķ jśnķ 1998.

 

 

Uppsetning öryggiskerfis skiptir verulegu mįli ķ fjölnotendaumhverfi og dregur slķkt kerfi śr hęttu į mistökum ķ vinnslu og į óęskilegu upplżsingastreymi.

 

Grunnatriši

Öryggiskerfiš er tvķskipt; annars vegar er ašgangsoršskerfi (share-level security), sem felur ķ sér aš hęgt er aš setja eitt ašgangsorš fyrir hverja gagnaskrį og getur žį hver sį sem žekkir ašgangsoršiš opnaš skrįna. Hins vegar er notendaöryggiskerfi (user-level security), sem felur ķ sér aš hver notandi hefur notandanafn og lykilorš, og eru réttindi bundin viš notandanafniš. Notendaöryggiskerfiš er mun fjölhęfara og flóknara en hitt og veršur hér ķ framhaldinu ašeins fjallaš um žaš kerfi.

            Microsoft Jet gagnagrunnsvélin notar sérstakan gagnagrunn til aš geyma upplżsingar um hópa og notendur og ašgangsorš. Žessi gagnagrunnur er ķ sérstakri skrį į diskinum og er nafnauki hennar .MDW; er žetta kallaš vinnuhópsskrį eša Workgroup File. Žau forrit sem nota Jet gagnagrunnsvélina geta stušst viš žetta öryggiskerfi. Meš Microsoft Access fylgir lķtiš forrit sem nefnist Workgroup Administrator, og mį nota žaš til aš tengja sig viš vinnuhópsskrį. Sį sem ekki tengir sig viš neina sérstaka vinnuhópsskrį er sjįlfkrafa tengdur SYSTEM.MDW ķ Windows\System möppunni.

 

Hugtök

 

Vinnuhópur (workgroup): gagnaskrį sem varšveitir ašgangsheimildir. Gengiš er ķ vinnuhóp meš Workgroup Administrator.

Hópur (group): Hęgt er aš mynda hóp notenda og gefa hópnum réttindi.

Notandi (user): Hęgt er aš mynda notanda og gefa honum réttindi og ašgangsorš. Ķ notandanafni eru hįstafir jafngildir lįgstöfum.

Réttindi, ašgangur, ašgangsheimildir (permissions): Réttindi geta tengst hópi og/eša notanda.

Lykilorš, ašgangsorš (password): Ķ žeim skiptir munur hį- og lįgstafa mįli. Ekki mį nota bakstrik (\). Notendur įkveša lykilorš sķn sjįlfir og geta breytt žeim sjįlfir.

Admins hópur: Sjįlfkrafa myndašur hópur (umsjónarmanna).

Admin notandi: Sjįlfkrafa myndašur notandi (umsjónarmašur, hefur full réttindi).

Users hópur: Sjįlfkrafa myndašur hópur almennra notenda.

 

 

Hvaš er geymt ķ gagnaskrį og hvaš ķ vinnuhópsskrį?

Réttindi eru geymd ķ gagnaskrįnni (.MDB) sem geymir viškomandi hluti. Žannig geta t.d. ašgangsréttindi aš töflunni Višskiptamenn veriš geymd ķ gagnagrunninum VIDSK1.MDB, sé taflan vistuš žar.

Réttindi geta żmist veriš bein (explicit) eša óbein (implicit); bein eru žau réttindi sem veitt eru notendum, en óbein hin sem veitt eru hópum (og žar meš óbeint žeim notendum sem eru ķ hópnum).

            Upplżsingar um hópa, svo sem notendur ķ hópnum, nöfn žeirra og ašgangsorš eru ekki geymd ķ almennum gagnagrunnsskrįm, heldur ķ vinnuhópsskrįm. Žegar notandinn opnar Access er nafniš athugaš og lykiloršiš, og svo er žetta boriš saman viš hlutina ķ žeirri gagnaskrį sem opnuš er hverju sinni.

 

Innbyggšir hópar og notendur

Ķ Access eru sjįlfgefnir notendur og hópar, og er öryggiskerfiš alltaf fyrir hendi, jafnvel žótt engar sérstakar rįšstafanir hafi veriš geršar til aš gangasetja žaš. Žegar Access er fyrst opnaš er notandinn sjįlfkrafa tekinn inn sem innbyggši Admin notandinn. Sjįlfgefiš er aš Admin sé mešlimur ķ Admins hópnum, en sį hópur veitir full réttindi į öllum hlutum gagnagrunnsins. Ķ upphafi eru ekki notuš lykilorš, en sé sett inn lykilorš fyrir Admins notandann, hefur lykiloršaašferšin veriš tekin ķ notkun og upp frį žvķ žarf alltaf lykilorš til aš opna Access, svo fremi aš ekki sé skipt um vinnuhóp.

            Ekki er hęgt aš eyša innbyggšum hópum og notendum, en hęgt er aš breyta réttindum žeirra, og žaš er einmitt gert žegar öryggiskerfiš er tekiš ķ notkun.

 

Tengdar töflur

Hentugt er aš kljśfa gagnagrunn ķ töfluskrį annars vegar og forritsskrį hins vegar, og eru žį töflur töfluskrįrinnar tengdar (linked, attached) ķ forritsskrįna.

            Sé tafla tengd, žarf aš athuga aš til aš breyta ašgangi aš žeirri töflu žarf aš opna skrįna sem hśn er geymd ķ, og er ekki nóg aš breyta ašgangi aš töflunni ķ žeirri skrį žar sem tengingin er. Hęgt er aš breyta réttindum ķ forritsskrįnni meš tengingunni, en ķ reynd er žį ekki veriš aš breyta ašgangi aš töflunni sjįlfri, heldur aš töflutengingunni eingöngu. Ef ašeins er breytt ašgangi aš tengingunni getur hver sem er myndaš nżja tengingu og haft žannig fullan ašgang aš töflunni sem ętlunin var aš lęsa.

 

Žetta žarf aš gera til aš mynda öryggiskerfi

Fyrst žarf aš bśa til nżjan vinnuhóp og bęta nżjum notanda ķ Admins hópinn, og į sį notandi aš verša umsjónarmašur sķšar. Žį er Admin notandinn fjarlęgšur śr Admins hópnum, svo eru réttindi tekin af Users hópnum og eign hluta sett į nżja mešliminn ķ Admins (nżja umsjónarmanninn). Nęst eru hópar myndašir og žeim śthlutaš réttindum; svo eru myndašir notendur og žeir settir ķ hópana eftir žvķ sem viš į. Mjög er ęskilegt aš réttindi séu tengd viš hópa fremur en einstaka notendur, žvķ notendur (starfsmenn) koma og fara og getur veriš mikil vinna aš setja upp nż réttindi fyrir žį hvern um sig, en sįraeinfalt er aš bśa til nżjan notanda og setja hann ķ hóp. Žaš er žvķ langtum žęgilegra aš nota óbein réttindi en bein.

            Žegar öryggi er stillt er stušst viš réttindavalgluggann (Tools: Security: User and Group Permissions) og žarf žį aš velja hvort setja į réttindi fyrir hópa eša einstaklinga; svo eru valdir žeir hlutir sem réttindin varša (töflur, fyrirspurnir, form, skżrslur, fjölvar, kóši) og loks veitt réttindi. Réttindin sem hęgt er aš stilla ķ žessum glugga eru įtta talsins: Opna/lesa, Skoša hönnun, Breyta hönnun, Réttindastjórn, Lesa gögn, Breyta gögnum, Bęta viš gögnum og Eyša gögnum. Gera mį rįš fyrir aš flestum žyki mestu varša aš takmarka ašgangsréttindi aš töflum — gögnunum sjįlfum — en ašrar heimildir skipta lķka mįli, og getur t.d. veriš ęskilegt aš hindra aš notendur breyti hönnun hluta į borš viš kóša eša fyrirspurnir.

            Žess mį geta aš öryggisžįttum mį stjórna meš kóša og er t.d. einfalt mįl aš skrifa stefju sem birtir lista yfir alla hópa og notendurna ķ hverjum hópi. Einnig er tiltölulega aušvelt aš lįta forritiš kanna ķ hvaša hópi eša hópum sį notandi er, sem er aš nota forritiš hverju sinni, og lįta forritiš bregšast viš meš įkvešnum hętti eftir žvķ ķ hvaša hópum notandinn er.

 


Mynd 1: Valkostir undir Tools: Security.

 

 


Skref fyrir skref

Hér er žvķ lżst sem gera žarf aš til aš koma į öryggiskerfi (notendaöryggiskerfi), skref fyrir skref; ferliš er viškvęmt og er žaš į įbyrgš notandans en ekki greinarhöfundar aš ekkert fari śrskeišis!

1. Byrjašu į žvķ aš taka afrit af gagnaskrįnni (.MDB) og vinnuhópsskrįnni (SYSTEM.MDW).

2. Opnašu žvķnęst vinnuhópsforritiš og myndašu nżja vinnuhópsskrį. Skrifašu nišur upplżsingarnar sem notašar eru til žess arna, nafn, fyrirtęki og vinnuhópsauškenni, žvķ ef skrįin skemmist veršur aš vera hęgt aš mynda hana aš nżju (annars geta gögnin glatast aš fullu!).

3. Opnašu Access og einhverja gagnaskrį (svo öryggiskostir verši tiltękir ķ Tools valmyndinni).

4. Nś ert žś notandinn Admin, og skaltu nęst aš setja ašgangsorš undir Tools: Security: User and Group Accounts. Hér eftir verša notendur vinnuhópsins bešnir um ašgangsorš.


Mynd 2: User and Group Accounts valglugginn. Ķ žessu tilviki sżnir hann aš notandinn Admin er ķ hópunum Admins og Users. Velja žarf Change Logon Password til aš breyta ašgangsoršinu, og žarf žį aš tvķslį žaš inn til stašfestingar.

 


5. Myndašu nś nżjan notanda (Tools: Security: User and Group Accounts), sem į aš verša umsjónarmašur ķ staš Admin. Žegar nżr notandi er myndašur žarf aš setja inn PID (personal identity) sem er žaš nafn sem öryggiskerfiš notar fyrir žennan notanda innįviš (žetta er ekki lykilorš, žaš er sett sķšar).

6. Settu nżja notandann ķ Admins hópinn.

7. Taktu Admin śr Admins hópnum. Alltaf žarf a.m.k. einn notandi aš vera ķ žeim hópi.

8. Lokašu Access og opnašu žaš aftur og loggašu žig nś inn sem nżi notandinn. Enn er ekkert lykilorš komiš til sögunnar fyrir žann notanda.

9. Opnašu gagnagrunninn sem žarf aš nota öryggiskerfiš og keyršu öryggissmišinn (Security Wizard). Veldu alla hlutina, og mun smišurinn flytja žį śt ķ nżjan gagnagrunn en lįta hinn, sem fyrir er, óbreyttan. Žetta gerir nżja notandann aš eiganda (og meginrétthafa) allra hlutanna ķ nżja gagnagrunninum. Smišurinn fjarlęgir réttindi Admin notandans og Users hópsins og setur dulmįl (encryption) į gagnagrunninn. Athugiš aš eigandi hlutar (Owner) hefur full stjórnréttindi (Administrative Permission) į hlutnum (žetta vęri lķka hęgt aš gera įn ašstošar smišsins).

10. Opnašu nżja gagnagrunninn.

11. Myndašu hópa og notendur.

12. Loggašu žig inn undir nafni hinna żmsu notenda til aš setja lykilorš fyrir žį, žvķ annars vill žaš gleymast.

13. Settu višeigandi réttindi fyrir hópana (og ķ undantekningartilvikum fyrir einstaka notendur lķka) eftir žvķ sem viš į; til žess skal nota ašgangsheimildagluggann (sjį mynd 3).

 


Mynd 3: Valgluggi ašgangsheimilda (permissions). Ķ žessu tilviki eru hópar birtir fremur en einstakir notendur (List: Groups), enda er hentugast aš vinna ašallega meš ašgangsheimildir hópa. Undir object type er Table vališ, en til greina kemur aš stilla ašgangsheimildir fyrir ašra hluti ķ kerfinu. Į žessum glugga kemur fram hve nśverandi notandi er (hér: Admin, sjįlfgefni notandinn).

 


 


Algengar og alvarlegar villur viš uppsetningu öryggiskerfis

·        Aš nota SYSTEM.MDW sem vinnuhópsskrį. Ķ stašinn į aš smķša nżja, sérstaka vinnuhópsskrį fyrir viškomandi forrit. Hver sem er gęti bśiš til nżja SYSTEM.MDW skrį og žar meš öšlast full ašgangsréttindi.

·        Aš gleyma aš taka Admin notandann śr Admins hópnum. Sį sem notar SYSTEM.MDW gęti žį opnaš gagnagrunninn og kęmi sjįlfkrafa inn sem Admin (įn žess aš vera bešinn um lykilorš) og hefši žį full Admins réttindi.

·        Aš gleyma aš taka réttindi af Users hópnum; allir sem skrį sig inn eru sjįlfkrafa mešlimir ķ Users hópnum.

·        Aš gleyma aš bśa til nżja hópa og nota bara innbyggšu hópana (Admins, Users).

 

 

Muniš

·        Ekkert öryggiskerfi er algerlega öruggt.

·        MS Access er gagnagrunnskerfi fyrir einkatölvur, og eru vinnslugetu žess og öryggisbśnaši takmörk sett.

·        Muniš aš gera tilraunir meš öryggiskerfi į afriti af gagnaskrį įšur en žiš lįtiš til skara skrķša. Mešan žiš skiljiš ekki til hlķtar hvernig öryggiskerfiš virkar er alltaf hętta į aš hiš versta gerist, sem er aš žiš lęsiš kerfinu fyrir sjįlfum ykkur og öllum öšrum!

 

 

Heimildir

Ašalheimild: Mary Chipman and Andy Baron: Are Your Access Applications Secure? ķ Microsoft Access/Office/VB Advisor, September 1997, Vol. 5, No. 9, bls. 56-64.

Sjį einnig grein sömu höfunda ķ heftinu į eftir (November 1997, bls. 34-41), svo og Timothy M.O'Brien et al.: Microsoft Access 97: Developer's Handbook, Redmond: Microsoft Press, 1997, bls. 415-448.