26. november 2001 - 16:24Der er
13 kommentarer og 2 løsninger
En rimelig fornuftig bruger/kode
Hej. Jeg har en database, hvor flere brugere skal kunne arbejde. Men for historikkens skyld, skal de logge på med et brugernavn og en kode - og dette brugernavn vil da være hæftet på alt det de foretager sig af rettelser og tilføjelser.
Spørgsmålet er - hvordan opretter jeg en fornuftig kode og formular til Brugernavn og kodeord? Det skal jo være det første de ser, når de åbner databasen.
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.
Der er også mulighed for at hente brugerens windows login. På den måde behøver brugerne ikke at logge på dit program, og det vil de sikkert være glade for at slippe for!
Brug Access\'s egen indbyggede sikkerhed: 1. Opret en arbejdsgruppe via Microsoft Access Arbejdsgruppeadministrator i Office mappen. 2. Opret brugerne i Access under Funktioner/Sikkerhed. OBS: De oprettes default uden password. 3. Sørg for at sætte password på Administrator kontoen. Det tvinger alle brugere til at logge på. 4. Tilknyt alle brugere via deres lokale Arbejdsgruppeadministrator. Se mere om sikkerhed i Hjælpesystemet
Det fdata her foreslår kan være en meget omstændig og ikke let forståelig affære og var ikke lige det jeg mente. Jeg skal lige have fundet noget kode, så vender jeg tilbage.
Private Declare Function apiGetUserName Lib \"advapi32.dll\" Alias _ \"GetUserNameA\" (ByVal lpBuffer As String, nSize As Long) As Long
\' Henter det navn brugeren er logget på med (netværkslogon) Function fOSUserName() As String \' Returns the network login name Dim lngLen As Long, lngX As Long Dim strUserName As String strUserName = String$(254, 0) lngLen = 255 lngX = apiGetUserName(strUserName, lngLen) If lngX <> 0 Then fOSUserName = Left$(strUserName, lngLen - 1) Else fOSUserName = \"\" End If End Function
Herefter kan du kalde funktionen fOSUserName og gemme resultatet i en streng, som evt. kan gemmes i en sammen med din historik.
sblar - jeg har lagt den ind i et nyt modul jeg har kaldt module_netværksnavn - men hvordan trækker jeg dataene - evt. i en tabel eller en forespørgsel?
> sblar. Ovenstående returnerer NT brugernavnet; men en del af spørgsmålet var: \"...skal de logge på med et brugernavn og en kode ... Det skal jo være det første de ser, når de åbner databasen\". Den del af opgaven løses stadig lettest med Access\'s egen adgangskontrol.
Som jeg opfattede spørgsmålet så var formålet udelukkende a.h.t. historikken. Selvfølgelig skal man ikke kune logge sig på med hvad som helst, men NT giver da rigelig sikkerhed i sig selv m.h.t. brugernavn og så er det da lettere. Iøvrigt synes jeg slet ikke der er noget let ved Access\' egen sikkerhedsmodel, så hvis det er et krav at brugerne skal logge sig på explicit, ville jeg lave en login-box og validere brugeren mod en tabel i DB.
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.