Kennwortschutz für eine Datenbank
Über Microsoft SQL Server 2005 Compact Edition (SQL Server Compact Edition) Database Engine (Datenbankmodul) kann festgelegt werden, dass beim Zugriff auf eine lokale Datenbank die Eingabe eines Kennworts zwingend erforderlich ist. In SQL Server Compact Edition wird ein Kennwort für die Datenbank erstellt, die geschützt werden soll. Dabei wird also nicht eine Reihe von Kennwörtern für die einzelnen Benutzer der Datenbank erstellt. Für ein Kennwort einer SQL Server Compact Edition-Datenbank gilt Folgendes:
- Es darf maximal 40 Zeichen umfassen.
- Es darf Buchstaben, Symbole, Zahlen oder eine Kombination dieser Zeichen enthalten.
- Es kann nicht wiederhergestellt werden.
Hinweis: |
---|
Über das Kennwort wird nicht verhindert, dass Daten in der Datenbankdatei als Klartext gelesen werden können. Wenn Sie die Verschlüsselung und ein Kennwort verwenden, können Sie die Daten im verschlüsselten Format speichern und den programmgesteuerten Zugriff auf die Datenbank einschränken. |
Erstellen kennwortgeschützter Datenbanken
Beim Erstellen einer kennwortgeschützten Datenbank wird eine Kennworteigenschaft angegeben. Folgende Methoden stehen für das Erstellen kennwortgeschützter Datenbanken zur Verfügung:
SQL-Syntax
Um eine kennwortgeschützte Datenbank mithilfe von SQL-Syntax zu erstellen, geben Sie das Kennwort für die Datenbank in der CREATE DATABASE-Anweisung an. Das Kennwort muss nach dem Schlüsselwort DATABASEPASSWORD stehen und in einfache Anführungszeichen gesetzt werden, wie im folgenden Beispiel gezeigt:CREATE DATABASE "secure.sdf" DATABASEPASSWORD '<myPassword>'
Verwenden von ADO.NET
Um eine kennwortgeschützte Datenbank mit der SqlCeEngine.CreateDatabase-Methode zu erstellen, müssen Sie die Kennworteigenschaft in der Verbindungszeichenfolge angeben, wie im folgenden Beispiel gezeigt:"data source=\ssce.sdf; password=<myPassword>"
Weitere Informationen finden Sie in den Informationen zur System.Data.SqlServerCe.SqlCeEngine-Klasse im Microsoft .NET Compact Framework Software Development Kit (SDK) von Microsoft Visual Studio 2005.
Verwenden von OLE DB
Um eine verschlüsselte Datenbank mithilfe des OLE DB-Anbieters für SQL Server Compact Edition zu erstellen, müssen Sie die für den Anbieter spezifische DBPROP_SSCE_ENCRYPTDATABASE-Eigenschaft als VARIANT_TRUE weitergeben und mithilfe der ebenfalls für den Anbieter spezifischen DBPROP_SSCE_DBPASSWORD-Eigenschaft ein Kennwort angeben.
Zugreifen auf kennwortgeschützte Datenbanken
Zum Öffnen einer kennwortgeschützten Datenbank muss ein Kennwort angegeben werden. Folgende Methoden stehen für den Zugriff auf kennwortgeschützte Datenbanken zur Verfügung:
Verwenden des Anbieters für SQL Server Compact Edition
Um auf eine kennwortgeschützte Datenbank mithilfe der SqlCeConnection.Open-Methode zuzugreifen, geben Sie die Kennworteigenschaft in der Verbindungszeichenfolge an. Beispiel:"data source=\ssce.sdf; password=<myPassword>"
Weitere Informationen finden Sie im Abschnitt zur System.Data.SqlServerCe.SqlCeConnection-Klasse im .NET Compact Framework SDK von Visual Studio 2005.
Verwenden von OLE DB
SQL Server Compact Edition unterstützt einen Zugriffssteuerungsmechanismus auf Dateiebene. In diesem Fall muss für den Zugriff auf eine kennwortgeschützte SQL Server Compact Edition-Datenbank ein Kennwort angegeben werden. Dieses Kennwort muss bei jedem Öffnen der Datenbank übergeben werden. Zum Angeben des Kennworts verwenden Sie die DBPROP_SSCE_DBPASSWORD-Eigenschaft in dem für den Anbieter spezifischen DBPROPSET_SSCE_DBINIT-Eigenschaftensatz. Beim Erstellen einer Datenbank wird diese Eigenschaft zum Angeben eines Datenbankkennworts in der Datenbank verwendet. Verschlüsselte Datenbanken sind immer kennwortgeschützt.