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

Memofelder mit sehr langen Texten

In Feldern, deren Felddatentyp früher Memofeld hieß und heute „langer Text“ genannt wird, kann man bis zu einem Gigabyte an Daten speichern. Allerdings gibt es verschiedene Einschränkung bezüglich der Datenmenge. So kann man je nach der Speichermethode nur sehr viel weniger Zeichen eingeben. Und erst recht kann man nicht den kompletten Inhalt eines Memofeldes in einem Textfeld anzeigen, wenn dieses mehr als eine bestimmte Menge Zeichen enthält. In diesem Artikel schauen wir uns einmal an, welche Einschränkungen es gibt, wie man diese gegebenenfalls umgehen kann und welchen Nutzen Memofelder überhaupt haben, wenn man mehr als den anzeigbaren Text eingibt.

Weiterlesen

Dekompilieren leicht gemacht

Manchmal treten in Access-Datenbanken nicht erklärbare Fehler auf. Die Datenbank stürzt immer an der gleichen Stelle ab, scheinbar ohne dass es eine Ursache dafür gibt. Oder man hat einen Haltepunkt gesetzt und wieder entfernt und der Code wird aber immer noch an der Stelle des Haltepunkts angehalten. Solche und andere Fehler können wir mit der Komprimieren und Reparieren-Funktion nicht beheben, auch wenn der Name dies suggeriert. Es ist vielmehr noch ein kleiner zusätzlicher Schritt notwendig, nämlich das Dekompilieren des Codes. Dazu gibt es eine Befehlszeilenoption mit dem Namen /decompile. Dieser Beitrag zeigt, wie Sie eine Datenbank, die Probleme macht, gegebenenfalls selbst retten können.

Weiterlesen

Access-Speicher überwachen mit VMMap

Trotz eigentlich ausreichenden Arbeitsspeichers und sonstiger Systemresourcen kann es vorkommen, dass Access in die Knie geht. Das macht sich durch verschiedene Fehlermeldungen bemerkbar. Aber wo liegen eigentlich die Grenzen von Access in der 32-Bit- und der 64-Bit-Version und wie findet man heraus, wieviele Formulare oder Recordsets Access vertragen kann? Das schauen wir uns in diesem Beitrag einmal genauer an. Dabei nutzen wir ein Tool namens VMMap von Microsoft, mit dem wir uns den Speicherbedarf von Anwendungen wie Access genau ansehen können.

Weiterlesen

Schneller, weiter, höher mit LAA für Access 32-Bit

Es gibt einen Grund, warum man Access in der 64-Bit-Version gegenüber der 32-Bit-Version bevorzugen könnte, und das ist der virtuelle Arbeitsspeicher. Dieser beträgt bei der 64-Bit-Version satte vier Gigabyte, während die 32-Bit-Version nur zwei Gigabyte bietet. Dies wirkt sich vor allem dann aus, wenn viele Formulare oder Recordsets geöffnet sind – dann knallt es irgendwann einfach. Das lässt sich allerdings ändern, allerdings mit einem nicht ganz einfachen Eingriff: Es gibt in der MSAccess.exe genau ein Bit, das man ändern muss, damit auch die 32-Bit-Version über vier Gigabyte Arbeitsspeicher verfügt. Das ist erstens ohne Hilfsmittel nicht zu machen und zweitens wird diese Änderung wieder rückgängig gemacht, wenn ein Update eine neue Version der MSAccess.exe mitbringt. Also haben wir neben den Grundlagen zu diesem Problem, die wir in diesem Beitrag beschreiben, auch noch ein Tool mitgebracht, mit dem Sie die Performance von Access 32-Bit verbessern können.

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

Ungebundene Listen und Kombis mit Daten füllen

Im Beitrag „Daten in ungebundenen Formularen bearbeiten“ haben wir gezeigt, wie man die Daten einer Tabelle in einem ungebundenen Formular darstellt und dieses zum Bearbeiten und Anlegen von Datensätzen verwendet. Wenn wir dies konsequent umsetzen wollen, benötigen wir auch eine Möglichkeit, um Daten in Listenform anzuzeigen. Die Datenblatt- oder Endlosansicht fallen aus, also müssen wir uns um Alternativen kümmern. Für die mehrspaltige Listenansicht bietet Access das Listenfeld. Und für die Auswahl von Daten aus Lookup-Tabellen steht das Kombinationsfeld zur Verfügung. Beide sind jedoch, wie auch Formulare, für die Bindung an Tabellen oder Abfragen optimiert. Ungebundene Daten müssen wir dort erst einmal einpflegen. Auf welche Arten das gelingt, zeigt dieser Beitrag.

Weiterlesen

Daten in ungebundenen Formularen bearbeiten

Der übliche Weg, um Daten aus Tabellen in Access-Formularen anzuzeigen, ist die Angabe einer Tabelle oder Abfrage als Datenquelle und das Binden der Steuerelemente an die Felder dieser Quelle. Es gibt jedoch Anwendungsfälle, in denen diese Vorgehensweise nicht das gewünschte Ergebnis liefert. Dann kann man einen alternativen Weg gehen, auch wenn man damit viel Vorteile aufgibt und eine Menge zusätzlicher Aufwand entsteht. In diesem Beitrag erläutern wir, wie man die Daten aus Tabellen oder Abfragen auch ohne direkte Bindung an eine Tabelle oder Abfrage in einem Formular anzeigen, bearbeiten und wieder speichern kann und wie sogar das Anlegen neuer Datensätze möglich ist.

Weiterlesen