BEISPIEL
BEISPIEL
Kapitel 9: Fortgeschrittene Datenbankprogrammierung
Sichern auf Datenbankebene (ADO/ADOX)
Neue Datenbank mit Passwortschutz erzeugen:
Dim cat As New ADOX.Catalog
cat.Create "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\test.mdb;” & _
”Jet OLEDB:Database Password=geheim;"
...
Öffnen einer geschützten Datenbank:
Dim conn As New ADODB.Connection
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\test.mdb;" & _
"Jet OLEDB:Database Password=geheim;"
...
Erstellen neuer Benutzer und Gruppen (DAO)
Bevor Sie Rechte an Nutzer oder Gruppen vergeben können, müssen Sie diese registrieren. Die folgende
Abbildung zeigt die Teile der Datenbank-Engine, mit denen Sie sowohl User und Usergruppen hinzufügen
als auch verändern können.
Abbildung 9.22 Objekte der DBEngine zur Benutzerverwaltung
Grundsätzlich können Sie mit den obigen Objekten bzw. Auflistungen all das erreichen, was Sie auch über
die Multifunktionsleiste (Datenbanktools/Verwalten/Benutzer und Berechtigungen) realisieren können.
Abbildung 9.23 Access-Dialogfeld
536
BEISPIEL
BEISPIEL
BEISPIEL
Hinzufügen einer Gruppe »Buchhalter«
Dim ws As Workspace
Dim newGroup As GROUP
Set ws = DBEngine.Workspaces(0)
Der zweite Parameter ist die PID:
Set newGroup = ws.CreateGroup("Buchhalter", "6537462")
ws.Groups.Append newGroup
ws.Groups.Refresh
Hinzufügen der Personen »Müller« und »Braun«
Dim ws As Workspace
Dim newUser As User
Dim UserName As String, UserPID As String, UserPW As String
UserName = "Müller"
UserPID = "93285"
UserPW = "Müller"
Set ws = DBEngine.Workspaces(0)
Set newUser = ws.CreateUser(UserName, UserPID, UserPW)
ws.Users.Append newUser
Müller wird der Gruppe »Buchhalter« zugeordnet:
newUser.Groups.Append ws.CreateGroup("Buchhalter")
UserName = "Braun"
UserPID = "746834"
UserPW = "Braun"
Set newUser = ws.CreateUser(UserName, UserPID, UserPW)
ws.Users.Append newUser
Braun wird der Gruppe »Administratoren« zugeordnet:
newUser.Groups.Append ws.CreateGroup("Admins")
Nachträgliches Zuordnen von Braun zur Gruppe »Buchhalter«
Dim ws As Workspace
Dim newUser As User
Set ws = DBEngine.Workspaces(0)
Set newUser = ws.Users("Braun")
newUser.Groups.Append ws.CreateGroup("Buchhalter")
537
Zugriffsschutz in Access-Datenbanken

Get Microsoft Office Access 2007-Programmierung - Das Handbuch now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.