21. december 2003 - 18:34Der er
6 kommentarer og 1 løsning
Sikkerhed og brugere
Jeg har nu rodet en del med sikkerhed og brugere. Jeg har oprettet en fil "sikret.mdw" og oprettet nogle brugere med rettigheder. Gruppen brugere i sikkerhedsguiden har jeg oprettet uden rettigheder, som guiden anbefaler. Jeg har oprettet nogle af standard grupperne via guiden: f eks "Læseadgang", "Opdatering" og "Nye data" og selsfølgelig 1 par administratorer. Men... hvordan får jeg lavet noget sikkerhed som gør at nogle af brugerne kan anvende 1 form og de andre brugere en anden form, altså sikkerhed på formniveau. Jeg har prøvet at ændre rettigheder på formene via menuen "Bruger og grupperettigheder" for en af brugerne, men det vil ikke rigtig lykkes.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Du kan lave en funktion, som checker om den aktuelle bruger er medlem af en gruppe (funktionen placeres i et modul): Public Function InGroup(Gruppe As String) As Boolean On Error Resume Next Dim wrkDefault As Workspace Dim usr As User Set wrkDefault = DBEngine.Workspaces(0) For Each usr In wrkDefault.Groups(Gruppe).Users If usr.Name = CurrentUser Then InGroup = True Next usr End Function
Herefter kan du f.eks. fra din hovedmenu lave denne kode, som checker hvad der sker når brugeren klikker på en betemt knap:
Select Case True Case InGroup("Læseadgang") Docmd.Openform "Din skrivebeskyttede form" Case InGroup("Opdatering") Docmd.Openform "En anden form" Case InGroup("Nye Data") Docmd.Openform "Opret data" end select
Dette er blot én måde at styre det på...der er flere.
Koden kræver vist nok en reference til "Microsoft DAO 3.x Object Library"
Jeg har fået lavet en gruppe: f eks "Læseadgang" og her har jeg via commandoen "bruger og gruppetilladelser" tildelt tilladelser: åbne/køre på moduler til gruppen "Læseadgang". Jeg har tildelt min bruger gruppen "Læseadgang". Når jeg afvikler, så kan jeg ikke få adgang til basen. Når jeg så ændrer mine tilladelser på gruppen "Læseadgang". hvor jeg tilføjer åbne/køre tilladelse til databasen. Så kan jeg få adgang, men når jeg så åbner formene, så kan jeg både tilføje og opdatere. Min form er sat til at åbne i rediger modus, har det nogen betydning, når vi taler sikkerhed
Tilladelser til at oprette, slette og redigere data skal gives på tabel-niveau. Dvs at det er på tabelniveau, at du skal fortælle at gruppen "Læseadgang" ikke på skrive, slette og oprette.
De tilladelser, som du angiver på formularen fortæller kun om brugeren må ændre og redigere designet af formularen.
175 point til thomasjepsen og 25 til terry. Terry. tak for linket og til thomas, tak for dine bidrag. ---- Jeg har nu fundet ud af at access egen sikkerhedscommando kan anvendes. Det som gav mig problemer var at jeg havde tildelt nogle tilladelser til en af brugerne og efterfølgende tildelte jeg samme bruger en gruppetilladelse. Tilladelse til den enkelte bruger er åbenbart højere prioriteret end gruppens tilladelser. ---- Til dig thomas - du har ret i at tilladelser også gives på tabelniveau, men for at åbne en form, så er du nødt til at tildele tilladelsen : åbne/køre for at åbne formen. ---- Samtidig havde jeg det problem at for at "Læse" en tabel/gennem formen, som havde en indbygget makro, som flyttede curseren til ny post, så opstod der kørselsstop. Jeg har nu gemt min gamle form under et nyt navn og fjernet makroen fra "form-current", så virker "Læse"-tilladelsen.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.