无法删除非对称密钥,因为映射了登录名

问题描述

我创建了一个非对称密钥'key_clr_HTTP_Request',如果我'2' - '0' = 2可以看到它:

enter image description here

我现在要删除它:

50 - 48 = 2

但作为回应,我收到了

select * from sys.asymmetric_keys

我已经尝试重新启动SSMS,并且我在此测试计算机上是use master DROP asymmetric KEY key_clr_HTTP_Request 。 现在没有人连接到这台计算机,只有我自己,所以 登录映射 是什么?

解决方法

这与您的权限级别无关,当然与SSMS也无关。

这是模块签名的工作方式。模块(在本例中为程序集)使用强名称/非对称密钥签名。该强名称密钥的公共密钥部分将作为非对称密钥装入string = 'water' string.replace('a','u') print(string) 中。从那里,将使用该非对称密钥创建登录名,以便可以将权限分配给该登录名,因为无法将权限分配给非对称密钥或证书。因此,您需要删除从该非对称密钥创建的登录名,然后才能删除该非对称密钥。

执行以下操作,您将看到相关的登录名:

[master]

有关使用模块签名的更多信息,请访问:Module Signing Info

有关一般使用SQLCLR的更多信息,请访问:SQLCLR Info