SQL Server-Security – Teil 8: Datenbankrollen

Berechtigungskonzepte sind mit einer Vielzahl von Fachbegriffen verbunden. Separation of Duties, Principle of Least Privilege, Role Based Access Control, Discretionary Access Control etc. pp. Sie behandeln die Vergabe von Zugriffsrechten auf unterschiedlichen Sicherheitsniveaus. Im Kern jedoch dient jede dieser Methoden der Vertraulichkeit und Integrität der Daten. Die Anwender dürfen nur auf die Ressourcen zugreifen, die sie zum Erfüllen ihrer Aufgaben benötigen. Dabei gilt es Überschneidungen von Zuständigkeiten und somit den Missbrauch von Daten zu vermeiden. SQL Server unterstützt zur Umsetzung dieser Anforderungen gleich mehrere Konzepte.

Weiterlesen

SQL Server: Verschlüsselte Backups erstellen

Im Beitrag „SQL Server: Vollsicherung und Wiederherstellung“ haben wir uns angesehen, wie wir eine Sicherung einer SQL Server-Datenbank durchführen können. Wenn wir uns eine solche Sicherungsdatei im Texteditor ansehen, stellen wir schnell fest, dass ein Backup, wie wir es in diesem Beitrag vorgestellt haben, nicht verschlüsselt abgelegt wird, sondern den unverschlüsselten Text enthält. Liegen solche Daten im heimischen Server, der durch das Windows-Sicherheitssystem vor Zugriffen Fremder gesichert ist, mag das praktikabel sein. Sollen jedoch Kopien von diesen Daten angelegt werden, die nicht auf diese Weise gesichert sind, ist eine zusätzliche Verschlüsselung nötig. Das verschlüsselte Sichern einer SQL Server-Datenbank ist wesentlich aufwendiger als die einfache Sicherung. Deshalb schauen wir uns dies Schritt für Schritt im vorliegenden Beitrag an.

Weiterlesen

Outlook: E-Mail-Absender per VBA einstellen

Die üblichen Artikel über das Versenden von E-Mails über Outlook per VBA lassen meist unberücksichtigt, wie man den Absender einer E-Mail einstellen kann. Dies kann nicht durch einfaches Zuweisen der Absender-Adresse geschehen, da der Absender unter Outlook in einem Konto vorhanden sein muss. Die passende Eigenschaft heißt Send-UsingAccount. Wie wir diese füllen, wie wir die verfügbaren Absender-E-Mail-Adressen ermitteln und welche Besonderheit bei Verwendung von Late Binding zu beachten sind, zeigen wir in diesem Beitrag.

Weiterlesen

Zertifikate und Kennwörter mit Keepass speichern

In der heutigen Zeit ist Datensicherheit wichtiger denn je. Und da wir in einem anderen Beitrag mit dem Titel „SQL Server: Verschlüsselte Backups erstellen“ (www.access-im-unternehmen.de/1450) ein Zertifikat erstellen, das wir irgendwo sicher beherbergen müssen, stellen wir im vorliegenden Beitrag einmal eine Methode vor, wie wir Zertifikate und Kennwörter sicher speichern können. Keepass ist ein Open Source-Password-Safe. Das heißt, dass darin Kennwörter und Zertifikate abgelegt werden können, an die man nur herankommt, wenn man das Kennwort zu diesem Password-Safe kennt. Der Password-Safe liegt auf der lokalen Festplatte. Wir wir Keepass herunterladen, installieren und nutzen, beschreiben wir in diesem Beitrag.

Weiterlesen

SQL Server: Vollsicherung und Wiederherstellung

Wer eine Access-Datenbank zum Speichern seiner Daten verwendet, hat bei der Sicherung leichtes Spiel: Er braucht einfach nur eine Kopie dieser Datenbank anzulegen. Bei SQL Server-Datenbanken ist dies etwas komplizierter. Wir können hier beispielsweise nicht einfach die Datenbankdateien kopieren, da der SQL Server normalerweise ständig darauf zugreift. Welche Schritte zum Anlegen des Backups einer SQL Server-Datenbank nötig sind, zeigen wir in diesem Beitrag. Außerdem schauen wir uns an, wie wir die Datenbank auf Basis der Sicherung wiederherstellen können.

Weiterlesen

Aktuelle Datenbankversion ermitteln

Es gibt verschiedene Gründe, um Kopien einer Datenbank anzulegen. Das Herstellen einer Sicherungskopie ist wohl der am meisten verbreitete Grund. Das ist sinnvoll, aber es kann dabei zu Problemen kommen, wenn man nicht achtsam ist: Dann arbeitet man auf einmal in der Sicherheitskopie weiter und wundert sich, wenn man anschließend die Originaldatenbank öffnet und die Funktionen, die man neu hinzuprogrammiert, nicht mehr findet. Oder man testet mit einer Datenbankdatei auf einer virtuellen Maschine und fügt dort Anpassungen hinzu. Auch hier kann es zu einem ähnlichen Durcheinander kommen. Um in einem solchen Fall die aktuelle Version zu finden, reicht es nicht, sich das Änderungsdatum der Datei anzusehen. Warum das nicht reicht und wie wir die aktuellere Datenbank zuverlässig finden, zeigen wir in diesem Beitrag.

Weiterlesen

Belege und Belegdaten nach lexoffice hochladen

Im Beitrag „Zugriff auf lexoffice per REST-API und VBA“ (www.access-im-unternehmen.de/1422) haben wir bereits gezeigt, wie wir in lexoffice Rechnungen auf Basis von Rechnungsdaten aus einer Access-Datenbank erstellen können. In manchen Fällen reichen die Möglichkeiten von lexoffice nicht aus, um die gewünschten Rechnungen zu erstellen. Dann kann man lexoffice aber immer noch für die Buchhaltung nutzen. Die Rechnung erstellt man dann in Access statt direkt in lexoffice und überträgt dann ein PDF-Dokument mit der Rechnung sowie die begleitenden Daten wie den Umsatz, die enthaltenen Steuern und weitere Informationen per Rest API nach lexoffice. Dieser Beitrag zeigt, wie wir dies bewerkstelligen können.

Weiterlesen

Datenbanken automatisch komprimieren

In vielen Datenbankanwendungen fallen temporäre Daten an, also Daten, die in Tabellen geschrieben und in der gleichen Session wieder gelöscht werden. Das kann in nicht aufgeteilten Datenbanken der Fall sein, aber auch in aufgeteilten Datenbanken mit Frontend und Backend geschehen. Man könnte denken, die Größe der Datenbankdatei würde nach dem Anfügen und Löschen von Daten einigermaßen konstant sein. Das ist jedoch nicht der Fall: Gelöschte Daten sind zwar nicht mehr in den Tabellen zu finden, allerdings benötigt die Datenbank anschließend ungefähr genauso viel Speicherplatz wie vor dem Löschen. Wie das zu erklären ist und wie wir durch die Komprimierung einer Datenbank dennoch dafür sorgen können, dass eine Datenbank sich durch die Verwendung temporärer Daten nicht allzusehr aufbläht, beschreiben wir in diesem Beitrag.

Weiterlesen

Ungebundene Daten in Übersicht und Detailansicht

In den beiden Beiträgen „Daten in ungebundenen Formularen bearbeiten“ (www.access-im-unternehmen.de/1442) und „Ungebundene Listen und Kombis mit Daten füllen“ (www.access-im-unternehmen.de/1440) haben wir Möglichkeiten aufgezeigt, um Daten ohne die Bindung an Tabellen oder Abfragen in Formularen und Steuerelementen anzuzeigen. In diesem Beitrag gehen wir einen Schritt weiter und kombinieren die beiden Darstellungen einer Übersicht von Daten und der Detailansicht eines ausgewählten Datensatzes. Dabei zeigen wir, wie wir in der Übersicht einen Datensatz auswählen und diesen zum Bearbeiten öffnen, einen neuen Datensatz anlegen oder Datensätze löschen.

Weiterlesen

Ungebundene List- und ComboBox per Callback

Im Beitrag Ungebundene Listen und Kombis mit Daten füllen (www.access-im-unternehmen.de/1440) haben wir uns angesehen, wir man Kombinations- und Listenfelder über das Zuweisen einer Wertliste oder mit der AddItem-Methode füllen kann. Es gibt noch eine interessante Alternative, von der wir hoffen, dass wir damit sogar noch einige Einträg mehr zu den Listen-Steuerelementen hinzufügen können als mit den oben genannten Methoden. Bei dieser Alternative handelt es sich um eine Technik, die eher stiefmütterlich behandelt wird: Die Callback-Funktion. Wie man diese nutzt und ob man tatsächlich mehr Daten als mit einer Wertliste in ungebundenen Listen-Steuerelementen anzeigen, untersuchen wir in diesem Beitrag.

Weiterlesen