当SQL Server 2005中的authentication过期时,数据发生了什么变化

我正在尝试使用证书和对称密钥来encryptionsql server 2005中的列

证书过期后数据会发生什么变化?

我读了一些博客,SQL服务器不validation证书的过期date,用户仍然可以使用过期的证书进行encryption和解密

这是真的,如果是的话,有人可以指向我的Microsoft知识库文章(或)在线书籍页,其中指出,Sql Server不validation证书过期数据和用户仍然能够encryption和解密使用过期的数据证书

谢谢拉姆

您可以在Books Online中查看CREATE CERTIFICATE语句的官方文档,摘录如下:

EXPIRY_DATE ='mm / dd / yyyy'
是证书过期的date。 如果未指定,EXPIRY_DATE将设置为START_DATE后一年的date。 EXPIRY_DATE为UTC时间,可以设置为秒的粒度。 SQL Server Service Broker检查到期date; 但是, 当证书用于encryption时,不会执行到期

除了乍得所说的,大多数基于证书的encryptionscheme的工作原理都是相似的:

  • 数据使用对称密钥进行encryption
  • 证书是encryption对称密钥
  • 当证书被破坏或即将到期时,将被replace为对称密钥,并使用新证书进行重新encryption

因此,总是可以用最小的影响来replace证书,因为只有使用此证书encryption的对称密钥需要使用新证书进行重新encryption。

而且,即使在检查过期date的系统上,一般的规则是:

  • 对于签名validation,证书在使用时不是在validation时才有效
  • 对于数据encryption,证书在数据encryption的时候必须是有效 ,而不是在解密的时候

检查签名或解密数据时强制执行证书过期的scheme是非常糟糕的devise,因为在过期date之前,所有数据都不可解密