Hvis du opprettet en database i en versjon av Access før Access 2007, og du brukte sikkerhet på brukernivå på denne databasen, forblir disse sikkerhetsinnstillingene på plass når du åpner filen i Access 2007 eller nyere. I tillegg kan du starte sikkerhetsverktøyene som leveres av Microsoft Office Access 2003 – sikkerhetsveiviseren for User-Level og de ulike dialogboksene for bruker- og gruppetillatelser – fra senere versjoner av Access. Denne artikkelen forklarer hvordan sikkerhetsfunksjonene i Access 2003 fungerer, og forklarer hvordan du starter og bruker dem i Access 2007 eller nyere.
Obs!: Informasjonen i denne artikkelen gjelder bare for en database som er opprettet i Access 2003 eller tidligere versjoner (en .mdb-fil). Sikkerhet på brukernivå er ikke tilgjengelig for databaser som er opprettet i Access 2007 eller nyere (ACCDB-filer). Hvis du konverterer .mdb-filen til det nye formatet (en ACCDB-fil), forkaster Access sikkerhetsinnstillingene på brukernivå.
I denne artikkelen
Slik fungerer sikkerhet på brukernivå i Access 2007 eller høyere
Access 2007 og nyere versjoner gir bare sikkerhet på brukernivå for databaser som bruker Access 2003 og tidligere filformater (.mdb- og MDE-filer). Hvis du åpner en database som er opprettet i en tidligere versjon av Access i senere versjoner, og databasen har bruk for sikkerhet på brukernivå, vil denne sikkerhetsfunksjonen fungere som utformet for denne databasen. Brukere må for eksempel skrive inn et passord for å bruke databasen.
I tillegg kan du starte og kjøre de ulike sikkerhetsverktøyene som leveres av Access 2003 og tidligere versjoner, for eksempel User-Level sikkerhetsveiviser og de ulike dialogboksene for bruker- og gruppetillatelser. Når du fortsetter, må du huske at disse verktøyene bare blir tilgjengelige når du åpner en .mdb- eller MDE-fil. Hvis du konverterer filene til ACCDB-filformatet, fjernes alle eksisterende sikkerhetsfunksjoner på brukernivå.
Oversikt over sikkerhet på brukernivå i Access 2003
Avsnittene nedenfor gir bakgrunnsinformasjon om sikkerhet på brukernivå i Access 2003 og tidligere versjoner. Hvis du allerede er kjent med den forrige sikkerhetsmodellen og sikkerhet på brukernivå, kan du hoppe over disse inndelingene og gå direkte til Angi sikkerhet på brukernivå eller Fjern sikkerhet på brukernivå senere i denne artikkelen.
Det grunnleggende om sikkerhet på brukernivå
Sikkerhet på brukernivå i Access ligner på sikkerhetsmekanismene på serverbaserte systemer – den bruker passord og tillatelser til å tillate eller begrense tilgangen til enkeltpersoner, eller grupper av enkeltpersoner, til objektene i databasen. Når du implementerer sikkerhet på brukernivå i en Access-database i Access 2003 eller tidligere versjoner, kan en databaseadministrator eller eieren av et objekt kontrollere handlingene som individuelle brukere eller grupper av brukere kan utføre på tabellene, spørringene, skjemaene, rapportene og makroene i databasen. Én gruppe brukere kan for eksempel endre objektene i en database, en annen gruppe kan bare skrive inn data i bestemte tabeller, og en tredje gruppe kan bare vise dataene i et sett med rapporter.
Sikkerhet på brukernivå i Access 2003 og tidligere versjoner bruker en kombinasjon av passord og tillatelser – et sett med attributter som angir hvilke typer tilgang en bruker har til dataene eller objektene i en database. Du kan angi passord og tillatelser for enkeltpersoner eller grupper av enkeltpersoner, og disse kombinasjonene av passord og tillatelser blir sikkerhetskontoer som definerer brukere og grupper av brukere som har tilgang til objektene i databasen. I sin tur er kombinasjonen av brukere og grupper kjent som en arbeidsgruppe, og Access lagrer denne informasjonen i en arbeidsgruppeinformasjonsfil. Ved oppstart leser Access arbeidsgruppeinformasjonsfilen og håndhever tillatelsene basert på dataene i filen.
Access har som standard en innebygd bruker-ID og to innebygde grupper. Standard bruker-ID er Admin, og standardgruppene er Brukere og administratorer. Som standard legger Access til den innebygde bruker-ID-en i Brukere-gruppen fordi alle ID-er må tilhøre minst én gruppe. Brukere-gruppen har i sin tur alle tillatelser for alle objektene i en database. I tillegg er Admin-ID-en også medlem av administratorgruppen. Administratorgruppen må inneholde minst én bruker-ID (det må være en databaseadministrator), og Admin-ID-en er standard databaseadministrator til du endrer den.
Når du starter Access 2003 eller tidligere versjoner, tilordner Access Admin bruker-ID-en til deg og gjør deg dermed medlem av hver standardgruppe. Denne ID-en og disse gruppene (Admin og Brukere) gir alle brukere alle brukerne alle tillatelser for alle objektene i en database– dette betyr at alle brukere kan åpne, vise og endre alle objektene i alle .mdb filer, med mindre du implementerer sikkerhet på brukernivå.
Én måte å implementere sikkerhet på brukernivå i Access 2003 eller tidligere versjoner på, er å endre tillatelsene for Brukere-gruppen og legge til nye administratorer i administratorgruppene. Når du gjør dette, tilordner Access automatisk nye brukere til Brukere-gruppen. Når du utfører disse trinnene, må brukere logge på med et passord når de åpner den beskyttede databasen. Hvis du imidlertid trenger å implementere mer spesifikk sikkerhet – tillat at én gruppe brukere skriver inn data og en annen bare kan lese disse dataene, for eksempel – må du opprette flere brukere og grupper og gi dem bestemte tillatelser til noen eller alle objektene i databasen. Implementering av denne typen sikkerhet på brukernivå kan bli en kompleks oppgave. Access gir deg User-Level sikkerhetsveiviseren for å forenkle prosessen, noe som gjør det enklere å opprette brukere og grupper i en etttrinnsprosess.
Sikkerhetsveiviseren for User-Level hjelper deg med å tilordne tillatelser og opprette bruker- og gruppekontoer. Brukerkontoer inneholder brukernavn og unike personlige ID-numre (PIDer) som kreves for å administrere en brukers tillatelser til å vise, bruke eller endre databaseobjekter i en Access-arbeidsgruppe. Gruppekontoer er en samling brukerkontoer som i sin tur befinner seg i en arbeidsgruppe. Access bruker et gruppenavn og en PID til å identifisere hver arbeidsgruppe, og tillatelsene som er tilordnet til en gruppe, gjelder for alle brukere i gruppen. Hvis du vil ha mer informasjon om hvordan du bruker veiviseren, kan du se Angi sikkerhet på brukernivå senere i denne artikkelen.
Når du har fullført veiviseren, kan du manuelt tilordne, endre eller fjerne tillatelser for bruker- og gruppekontoer i arbeidsgruppen for en database og eksisterende tabeller, spørringer, skjemaer, rapporter og makroer. Du kan også angi standardtillatelsene som Access tilordner for nye tabeller, spørringer, skjemaer, rapporter og makroer som du eller en annen bruker legger til i en database.
Arbeidsgrupper og arbeidsgruppeinformasjonsfiler
I Access 2003 og tidligere versjoner er en arbeidsgruppe en gruppe brukere i et flerbrukermiljø som deler data. En arbeidsgruppeinformasjonsfil inneholder bruker- og gruppekontoene, passordene og tillatelsene som er angitt for hver enkelt bruker eller gruppe med brukere. Når du åpner en database, leser Access dataene i arbeidsgruppeinformasjonsfilen og fremtvinger sikkerhetsinnstillingene som filen inneholder. I sin tur er en brukerkonto en kombinasjon av brukernavn og personlig ID (PID) som Access oppretter for å administrere brukerens tillatelser. Gruppekontoer er samlinger av brukerkontoer, og Access identifiserer dem også etter gruppenavn og en personlig ID (PID). Tillatelser som er tilordnet en gruppe, gjelder for alle brukere i gruppen. Disse sikkerhetskontoene kan deretter tilordnes tillatelser for databaser og deres tabeller, spørringer, skjemaer, rapporter og makroer. Tillatelsene lagres i den sikkerhetsaktiverte databasen.
Første gang en bruker kjører Access 2003 eller tidligere versjoner, oppretter Access automatisk en access-arbeidsgruppeinformasjonsfil som identifiseres av navnet og organisasjonsinformasjonen som brukeren angir når han installerer Access. For Access 2003 legger installasjonsprogrammet til den relative plasseringen til denne arbeidsgruppeinformasjonsfilen i følgende registernøkler:
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Access\Jet\4.0\Engines\SystemDB
og
HKEY_USERS\.DEFAULT\Software\Microsoft\Office\11.0\Access\Jet\4.0\Engines\SystemDB
Etterfølgende brukere arver standard arbeidsgruppefilbane fra verdien i HKEY_USERS registernøkkelen. Siden denne informasjonen ofte er enkel å fastslå, er det mulig for uautoriserte brukere å opprette en annen versjon av denne arbeidsgruppeinformasjonsfilen. Derfor kan uautoriserte brukere anta de ugjenkallelige tillatelsene til en administratorkonto (et medlem av administratorgruppen) i arbeidsgruppen som er definert av denne arbeidsgruppeinformasjonsfilen. Hvis du vil hindre at uautoriserte brukere forutsetter disse tillatelsene, oppretter du en ny arbeidsgruppeinformasjonsfil og angir en arbeidsgruppe-ID (WID), en alfanumerisk streng som skiller mellom store og små bokstaver, fra 4 til 20 tegn som du angir når du oppretter en ny arbeidsgruppeinformasjonsfil. Når du oppretter en ny arbeidsgruppe, identifiseres Admin-gruppen for denne arbeidsgruppefilen unikt. Bare noen som kjenner WID-en, kan opprette en kopi av arbeidsgruppeinformasjonsfilen. Hvis du vil opprette den nye filen, bruker du sikkerhetsveiviseren for User-Level.
Viktig!: Pass på å skrive ned nøyaktig navn, organisasjon og arbeidsgruppe-ID, inkludert om bokstavene er store eller små bokstaver (for alle tre oppføringene) – og oppbevar dem på et sikkert sted. Hvis du må opprette arbeidsgruppeinformasjonsfilen på nytt, må du angi nøyaktig samme navn, organisasjon og arbeidsgruppe-ID. Hvis du glemmer eller mister disse oppføringene, kan du miste tilgang til databasene.
Slik fungerer tillatelser og hvem som kan tilordne dem
Sikkerhet på brukernivå gjenkjenner to typer tillatelser: eksplisitt og implisitt. Eksplisitte tillatelser er tillatelsene som gis direkte til en brukerkonto. ingen andre brukere påvirkes. Implisitte tillatelser er tillatelsene som gis til en gruppekonto. Hvis du legger til en bruker i denne gruppen, gis gruppens tillatelser til denne brukeren. Hvis du fjerner en bruker fra gruppen, fjernes gruppens tillatelser fra denne brukeren.
Når en bruker prøver å utføre en operasjon på et databaseobjekt som bruker sikkerhetsfunksjoner, er brukerens sett med tillatelser basert på skjæringspunktet mellom brukerens eksplisitte og implisitte tillatelser. En brukers sikkerhetsnivå er alltid den minst restriktive av brukerens eksplisitte tillatelser og tillatelsene til alle grupper som brukeren tilhører. På grunn av dette er den minst kompliserte måten å administrere en arbeidsgruppe på å opprette nye grupper og tilordne tillatelser til gruppene, i stedet for til individuelle brukere. Deretter kan du endre individuelle brukeres tillatelser ved å legge til eller fjerne disse brukerne fra grupper. Hvis du må gi nye tillatelser, kan du også gi dem til alle medlemmer av en gruppe i én enkelt operasjon.
Tillatelser kan endres for et databaseobjekt ved å:
-
Medlemmer av administratorgruppen for arbeidsgruppeinformasjonsfilen som ble brukt da databasen ble opprettet.
-
Eieren av objektet.
-
Alle brukere som har administreringstillatelser for objektet.
Selv om brukere kanskje ikke kan utføre en handling for øyeblikket, kan de kanskje gi seg selv tillatelse til å utføre handlingen. Dette gjelder hvis en bruker er medlem av administratorgruppen, eller hvis en bruker er eier av et objekt.
Brukeren som oppretter en tabell, spørring, et skjema, en rapport eller en makro, er eieren av objektet. I tillegg kan gruppen med brukere som kan endre tillatelser i databasen, også endre eierskapet til disse objektene, eller de kan opprette disse objektene på nytt, som begge er måter å endre eierskapet til objektene på. Hvis du vil opprette et objekt på nytt, kan du lage en kopi av objektet, eller du kan importere det fra, eller eksportere det til, en annen database. Dette er den enkleste måten å overføre eierskapet til objekter på, inkludert selve databasen.
Obs!: Kopiering, import eller eksport endrer ikke eierskapet til en spørring som har egenskapen RunPermissions satt til Eierens. Du kan bare endre eierskapet til en spørring hvis egenskapen RunPermissions er satt til Brukerens.
Sikkerhetskontoer
En arbeidsgruppeinformasjonsfil for Access 2003 inneholder følgende forhåndsdefinerte kontoer.
Konto |
Funksjon |
Administrasjon |
Standard brukerkonto. Denne kontoen er nøyaktig den samme for hver kopi av Access og andre programmer som kan bruke Microsoft Jet-databasemotoren, for eksempel Visual Basic for Applications (VBA) og Microsoft Office Excel 2003. |
Administratorer |
Administratorens gruppekonto. Denne kontoen er unik for hver arbeidsgruppeinformasjonsfil. Som standard er Admin-brukeren medlem av Administrator-gruppen. Det må være minst én bruker i Administrator-gruppen til enhver tid. |
Brukere |
Gruppekontoen består av alle brukerkontoer. Access legger automatisk til brukerkontoer i Brukere-gruppen når et medlem av administratorgruppen oppretter dem. Denne kontoen er den samme for en arbeidsgruppeinformasjonsfil, men den inneholder bare brukerkontoer som er opprettet av medlemmer av administratorgruppen for denne arbeidsgruppen. Som standard har denne kontoen alle tillatelser for alle nylig opprettede objekter. Den eneste måten å fjerne en brukerkonto fra Brukere-gruppen på, er at et medlem av administratorgruppen sletter denne brukeren. |
I praksis er sikkerhet i Access 2003 og tidligere versjoner alltid aktiv. Inntil du aktiverer påloggingsprosedyren for en arbeidsgruppe, logger Access på alle brukere ved oppstart ved hjelp av standard Admin brukerkonto med et tomt passord. I bakgrunnen bruker Access Admin-kontoen som administratorkonto for arbeidsgruppen. Access bruker den Admin kontoen i tillegg til eieren (gruppen eller brukeren) av alle databaser og tabeller, spørringer, skjemaer, rapporter og makroer som er opprettet.
Administratorer og eiere er viktige fordi de har tillatelser som ikke kan tas bort:
-
Administratorer (medlemmer av administratorgruppen) kan alltid få alle tillatelser for objekter som er opprettet i arbeidsgruppen.
-
En konto som eier en tabell, spørring, et skjema, en rapport eller en makro, kan alltid få fullstendige tillatelser for objektet.
-
En konto som eier en database, kan alltid åpne databasen.
Fordi den Admin brukerkontoen er nøyaktig den samme for hver kopi av Access, er den første fremgangsmåten for å sikre databasen å definere brukerkontoer for administrator og eier (eller bruke én enkelt brukerkonto som både administrator- og eierkontoer), og deretter fjerne Admin brukerkonto fra administratorgruppen. Ellers kan alle med en kopi av Access logge seg på arbeidsgruppen ved hjelp av Admin-kontoen og ha alle tillatelser for arbeidsgruppens tabeller, spørringer, skjemaer, rapporter og makroer.
Du kan tilordne så mange brukerkontoer som du vil til Administratorer-gruppen, men bare én brukerkonto kan eie databasen – den som eier kontoen, er brukerkontoen som er aktiv når databasen opprettes, eller når eierskap overføres ved å opprette en ny database og importere alle objektene i databasen til den. Gruppekontoer kan imidlertid eie tabeller, spørringer, skjemaer, rapporter og makroer i en database.
Viktige faktorer når du organiserer sikkerhetskontoer
-
Bare brukerkontoer kan logge på Access. du kan ikke logge på ved hjelp av en gruppekonto.
-
Kontoene du oppretter for brukere av databasen, må lagres i arbeidsgruppeinformasjonsfilen som disse brukerne blir med i når de bruker databasen. Hvis du bruker en annen fil til å opprette databasen, endrer du filen før du oppretter kontoene.
-
Pass på å opprette et unikt passord for administrator og brukerkontoer. En bruker som kan logge på ved hjelp av administratorkontoen, kan alltid få alle tillatelser for alle tabeller, spørringer, skjemaer, rapporter og makroer som ble opprettet i arbeidsgruppen. En bruker som kan logge på ved hjelp av en eierkonto, kan alltid få alle tillatelser for objektene som eies av denne brukeren.
Når du har opprettet bruker- og gruppekontoer, kan du vise og skrive ut relasjonene mellom dem. Access skriver ut en rapport over kontoene i arbeidsgruppen som viser gruppene som hver bruker tilhører, og brukerne som tilhører hver gruppe.
Obs!: Hvis du bruker en arbeidsgruppeinformasjonsfil som er opprettet med Microsoft Access 2.0, må du være logget på som medlem av administratorgruppen for å skrive ut bruker- og gruppeinformasjon. Hvis arbeidsgruppeinformasjonsfilen ble opprettet med Microsoft Access 97 eller nyere, kan alle brukere i arbeidsgruppen skrive ut bruker- og gruppeinformasjon.
Angi sikkerhet på brukernivå
Trinnene i denne delen forklarer hvordan du starter og kjører sikkerhetsveiviseren for User-Level. Husk at disse trinnene bare gjelder for databaser som har et Access 2003- eller tidligere filformat, som åpnes i Access 2007 eller nyere versjoner.
Viktig!: Hvis du bruker sikkerhetsveiviseren User-Level i Access 2007 eller nyere versjoner til å angi en standard arbeidsgruppeinformasjonsfil, må du også bruke kommandolinjebryteren /WRKGP til å peke til arbeidsgruppeinformasjonsfilen når du starter Access. Hvis du vil ha mer informasjon om hvordan du bruker en kommandolinjebryter med Access, kan du se artikkelen Kommandolinjebrytere for Microsoft Office-produkter.
Start sikkerhetsveiviseren for User-Level
-
Åpne .mdb- eller MDE-filen du vil administrere.
-
Klikk pilen under Brukere og tillatelser i Administrer-gruppen på fanen Databaseverktøy, og klikk deretter Veiviser for sikkerhet på brukernivå.
-
Følg trinnene på hver side for å fullføre veiviseren.
Obs!:
-
Sikkerhetsveiviseren for User-Level oppretter en sikkerhetskopi av gjeldende Access-database med samme navn og en .bak filtype, og bruker deretter sikkerhetstiltak for de merkede objektene i den gjeldende databasen.
-
Hvis den gjeldende Access-databasen bidrar til å beskytte VBA-kode ved hjelp av et passord, ber veiviseren deg om passordet, som du må angi for at veiviseren skal kunne fullføre operasjonen.
-
Alle passord du oppretter gjennom veiviseren, skrives ut i rapporten User-Level sikkerhetsveiviseren, som skrives ut når du er ferdig med å bruke veiviseren. Du bør holde denne rapporten på et sikkert sted. Du kan bruke denne rapporten til å opprette arbeidsgruppefilen på nytt hvis den går tapt eller er skadet.
-
Fjern sikkerhet på brukernivå
Hvis du vil fjerne sikkerhet på brukernivå mens du arbeider i Access 2007 eller nyere, lagrer du .mdb-filen som en ACCDB-fil.
Lagre en kopi av filen i . ACCDB-format
-
Klikk på Fil-fanen. Backstage-visningen åpnes.
-
Klikk Del til venstre.
-
Klikk Lagre database som til høyre, og klikk deretter Access-database (*.accdb).
Dialogboksen Lagre som vises.
-
Bruk Lagre i-listen til å finne en plassering der du kan lagre den konverterte databasen.
-
Velg Access 2007-2016-database (*.accdb) i Filtype-listen.
-
Klikk på Lagre.
Obs!: Hvis du bruker Access 2007, klikker du Microsoft Office-knappen og deretter Konverter for å åpne dialogboksen Lagre i for å lagre databasen i . ACCDB-filformat.
Referanse for objekttillatelser
Tabellen nedenfor viser tillatelsene du kan angi for en database og objektene i databasen, og den beskriver effekten eller resultatet av å bruke hver tillatelsesinnstilling.
Tillatelse |
Gjelder for disse objektene |
Resultat |
Åpne/kjøre |
Hele databasen, skjemaer, rapporter, makroer |
Brukere kan åpne eller kjøre objektet, inkludert prosedyrer i kodemoduler. |
Åpne i alenemodus |
Hele databasen |
Brukere kan åpne en database og låse ut andre brukere. |
Les utforming |
Tabeller, spørringer, skjemaer, makroer, kodemoduler |
Brukere kan åpne de oppførte objektene i utformingsvisning. Obs!: Når du gir tilgang til dataene i en tabell eller spørring ved å tilordne en annen tillatelse, for eksempel Lese data eller Oppdater data, kan du også gi leseutformingstillatelser fordi utformingen må være synlig for å presentere og vise dataene riktig. |
Endre utforming |
Tabeller, spørringer, skjemaer, makroer, kodemoduler |
Brukere kan endre utformingen av de oppførte objektene. |
Administrere |
Hele databasen, tabeller, spørringer, skjemaer, makroer, kodemoduler |
Brukere kan tilordne tillatelser til de oppførte objektene, selv når brukeren eller gruppen ikke eier objektet. |
Les data |
Tabeller, spørringer |
Brukere kan lese dataene i en tabell eller spørring. Hvis du vil gi brukere tillatelse til å lese spørringer, må du også gi disse brukerne tillatelse til å lese de overordnede tabellene eller spørringene. Denne innstillingen innebærer leseutformingstillatelse, noe som betyr at brukere kan lese tabell- eller spørringsutformingen i tillegg til dataene. |
Oppdater data |
Tabeller, spørringer |
Brukere kan oppdatere dataene i en tabell eller spørring. Brukere må ha tillatelse til å oppdatere den overordnede tabellen eller spørringene. Denne innstillingen innebærer både leseutformings- og lesedatatillatelser. |
Sett inn data |
Tabeller, spørringer |
Brukere kan sette inn data i en tabell eller spørring. For spørringer må brukere ha tillatelse til å sette inn data i de overordnede tabellene eller spørringene. Denne innstillingen innebærer både lesedata- og leseutformingstillatelser. |
Slett data |
Tabeller, spørringer |
Brukere kan slette data fra en tabell eller spørring. For spørringer må brukere ha tillatelse til å slette data fra de overordnede tabellene eller spørringene. Denne innstillingen innebærer både lesedata- og leseutformingstillatelser. |