Шифрование базы данных

Компонент Database Engine для SQL Server Compact 3.5 позволяет шифровать базы данных. Зашифрованные базы данных дополнительно защищены паролем.

Важно!

Поскольку доступ к зашифрованным базам данных осуществляется только при наличии пароля, в случае его утраты данные восстановить нельзя.

ms172901.note(ru-ru,SQL.100).gifПримечание.
Можно указать тип шифрования для базы данных, установив атрибут строки соединения Encryption Mode, в один из доступных режимов шифрования: Platform Default, Engine Default или PPC2003 Compatibility.

Создание зашифрованных баз данных

Зашифрованные базы данных можно создать, задав свойства шифрования и пароля при создании базы данных. Зашифрованные базы данных создаются следующими методами.

  • С помощью синтаксиса SQL.
    Чтобы создать зашифрованную базу данных с помощью синтаксиса SQL, укажите параметры database_password и ENCRYPTION ON. Например:

    Create Database "secure.sdf" databasepassword '<password>' encryption on
    
  • С помощью поставщика данных .NET Compact Framework.
    Чтобы создать базу данных, защищенную паролем, с помощью метода SqlCeEngine.CreateDatabase, в строке подключения необходимо указать свойства пароля. Например:

    "data source=\secure.sdf;password=<enterStrongPasswordHere>;encrypt database=TRUE"
    

    Дополнительные сведения см. в описании класса System.Data.SqlServerCe.SqlCeEngine в документации по пакету Microsoft Visual Studio.

  • С помощью OLE DB.
    Чтобы создать зашифрованную базу данных с помощью поставщика данных OLE DB для SQL Server Compact 3.5, необходимо передать свойство поставщика DBPROP_SSCE_ENCRYPTDATABASE как VARIANT_TRUE, а также указать пароль с помощью свойства поставщика DBPROP_SSCE_DBPASSWORD.

Доступ к зашифрованным базам данных

Чтобы открыть зашифрованную базу данных, необходимо указать пароль. Доступ к зашифрованным базам данных можно получить следующими методами.

  • Использование поставщика данных для SQL Server Compact 3.5
    Чтобы получить доступ к базе данных, защищенной паролем, с помощью метода SqlCeConnection.Open, в строке подключения необходимо указать свойство пароля. Например:

    "data source=ssce.sdf; password=<enterStrongPasswordHere>"
    

    Дополнительные сведения см. в описании класса System.Data.SqlServerCe.SqlCeConnection в документации по пакету Visual Studio.

  • Использование OLE DB
    Чтобы открыть в OLE DB базу данных, защищенную паролем, необходимо указать свойство поставщика DBPROP_SSCE_DBPASSWORD.

См. также

Задачи

Как защитить базу данных (среда SQL Server Management Studio)

Справка и поддержка

Получение помощи (SQL Server Compact 3.5 с пакетом обновления 1)