Tabellenänderung protokollieren

grauer wolf60

Neuer Benutzer
Beiträge
4
Hallo,

habe ein folgendes Problem. Es wird eine Access Datenbank (Frontend) benutzt und der SQL Server 2008 R2 als Backend. Diese Datenbabk wird von 50 Usern genutzt. Diese User sind in sogenannten Sicherheitsgruppen mit unterschiedlichen Berechtigung im AD gespeichert. Bsp GS-HNO-DHZ..... Problem ist die Terminverwaltung. Hier wird auf eine Tabelle zugegriffen. Um hier nun Änderung zu speichern, soll User, Rechnername, Windows Anmeldenamen und Änderungsdatum protokolliert werden in der Art von geändert am >>Datum<< von >>User<< und die Art der Änderung >>Löschen, Neuer Eintrag ...<<. Hier beginnt das eigentliche Problem. Macht man das auf der Accessebene oder auf dem SQL Server. und wie ermittelt man die User. Es nützt nicht immer "sa" zu sehen. Ich brauche den realen User. Ich habe es schon mit sytemtabellen via sys.sysdatabases oder sys.databases versucht, kenne mich dabei aber nicht genügen aus. Vielleicht gibt es hierzu ja Skript Beispiel, die man dann für die eigenen Bedürfnisse umschreiben kann. Unter Google habe ich noch nicht das Richtige gefunden. Daher wende ich mich an dieses Forum um hier vielleicht Lösungsvorschläge zu bekommen.
 
Werbung:
Hier beginnt das eigentliche Problem. Macht man das auf der Accessebene oder auf dem SQL Server. und wie ermittelt man die User. Es nützt nicht immer "sa" zu sehen. Ich brauche den realen User.

Wenn es sauber sein soll macht das die DB. Wie erfolgt da die Anmeldung, als sa oder als realer User? Hast Du die 50 User auch in der DB angelegt?

Das Logging macht man dann via TRIGGER. Für eine andere DB (PostgreSQL) kann ich Dir fertige Lösungen zeigen, für M$SQL nicht.
 
Werbung:
Man kann in MSSQL auch mit Domänenbenutzern (und Gruppen) arbeiten, kann also die Windows-Anmeldung als DB Login akzeptieren ohne die User alle anlegen zu müssen. Der Client muss natürlich fähig sein, diese Anmeldung zu verwenden und da kenn ich mich leider nicht mit Access aus. Das wäre aber auf jedenfall die saubere Lösung und so ließe es sich DB seitig umsetzen. Ansonsten muss der Client den Usernamen loggen, kene Chance den anders auszulesen. Die DB kennt nur die Anmeldeinformationen die ihr der Client gibt.
 
Zurück
Oben