Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 (中文) » SQL Anywhere 服务器 - 数据库管理 » 用户和数据库安全 » 数据安全 » 数据库加密和解密 » 列和表加密

 

启用数据库中的表加密 (SQL)

使用 CREATE DATABASE 语句创建采用表加密的数据库,或使用 CREATE ENCRYPTED TABLE DATABASE 语句在现有数据库中启用表加密。

前提条件

缺省情况下,您必须具有 SERVER OPERATOR 系统特权才能执行 CREATE DATABASE 语句和 CREATE ENCRYPTED TABLE DATABASE 语句。使用 -gu 数据库服务器选项可对所需的特权进行更改。

上下文和注释

必须在创建数据库时启用和配置表加密。如果数据库未启用表加密或数据库加密处于有效状态,使用 CREATE ENCRYPTED TABLE DATABASE 语句会为该数据库创建一个启用了表加密的副本,而不会覆盖原始数据库文件。

 任务
  • 创建采用表加密的数据库,或对现有数据库启用表加密。

    选项 操作
    创建采用表加密的数据库 使用 CREATE DATABASE 语句创建数据库,并指定密钥和加密算法。
    为现有数据库启用表加密 使用 CREATE ENCRYPTED TABLE DATABASE 语句创建数据库的副本,并指定密钥。

结果

表加密已启用。

下一个

使用 CREATE TABLE 语句创建加密表,或使用 ALTER TABLE 语句将现有表更改为加密状态。对表进行加密时,会使用启用表加密时所指定的密钥和/或算法。

以下命令会创建为表启用了高度加密的数据库 mynewdemo.db,该加密使用密钥 abc 和 AES256_FIPS 加密算法。同时,还会创建一个 DBA 用户 ID,口令为 sql。

CREATE DATABASE 'C:\temp\mynewdemo.db'
   DBA USER 'DBA' DBA PASSWORD 'sql'
   ENCRYPTED TABLE
   KEY 'abc'
   ALGORITHM 'AES256_FIPS';

下面的示例从一个名为 contacts1 的现有数据库创建一个名为 contacts2 的数据库。新数据库支持加密表。

CREATE ENCRYPTED TABLE DATABASE 'C:\temp\contacts2.db'
   FROM 'C:\temp\contacts1.db'
   KEY 'Sd8f6654'
   OLD KEY 'Sc8e5543';

 另请参见