我正在使用 SQL Server 的始终加密功能,使用受自签名证书保护的主密钥来加密数据库中的一些列。该证书是使用 SQL 2016 的 Management Studio 创建的,并且始终默认为比颁发日期提前一年的到期日期 - 它存储在当前用户的 Windows 证书存储中。
是否可以将该证书的有效期延长至一年以上?
更具体地说,是否可以编写 AE 所需的证书脚本 - 据我了解,该证书与 CREATE CERTIFICATE 命令创建的 sql 证书不同,需要导出为 pfx 等文件格式才能由 Azure Web 应用程序访问。
另外,如果证书过期了,数据还可以加密/解密吗?
SQLmojoe 包含在答案中的创建证书 SQL 语句不适用于 AE。
您可以使用脚本(批处理)并调用 makecert 以编程方式创建证书,例如:
Makecert.exe -n "CN=Always Encrypted cert" -pe -sr CurrentUser -r -eku 1.3.6.1.5.5.8.2.2,1.3.6.1.4.1.311.10.3.11 -ss my -sky exchange -sp "Microsoft Enhanced RSA and AES Cryptographic Provider" -sy 24 -len 2048 -a sha256
请注意,如果您想在本地计算机存储位置创建证书,您将需要该设备的管理员权限,并且需要更改 -sr 参数。
我希望这有帮助。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)