找出在SQL Server 2008中使用证书签名的存储过程

时间:2013-04-24 09:53:09

标签: sql-server-2008 tsql stored-procedures certificate signature

我正在制作数据库更新脚本我想找出使用​​各种证书签名的存储过程。

我可以使用sys.procedures获取存储过程列表,我可以使用sys.certificates获取证书列表但我无法找到使用各种证书签署的存储过程

是否有sys.procedures_certificates视图或类似的东西?也许在SQL Server Management Studio GUI上有一种方法告诉我这个..

我花了很长时间在谷歌上搜索但无济于事。

先谢谢你的帮助..

2 个答案:

答案 0 :(得分:6)

您应该能够使用sys.crypt_properties轻松搞定 - 请查看msdn文章here

答案 1 :(得分:5)

SELECT [Object Name] = object_name(cp.major_id),
       [Object Type] = obj.type_desc,   
       [Cert/Key] = coalesce(c.name, a.name),
       cp.crypt_type_desc
FROM   sys.crypt_properties cp
INNER JOIN sys.objects obj        ON obj.object_id = cp.major_id
LEFT   JOIN sys.certificates c    ON c.thumbprint = cp.thumbprint
LEFT   JOIN sys.asymmetric_keys a ON a.thumbprint = cp.thumbprint
ORDER BY [Object Name] ASC