I was using my machine (and SSMS) and everything was working fine. I did a reboot whereupon Windows 10 applied the following updates:
Windows Malicious Software Removal Tool for Windows 8, 8.1, 10 and Windows Server 2012, 2012 R2, 2016 x64 Edition - April 2017 (KB890830)
Security Update for Adobe Flash Player for Windows 10 Version 1607 (for x64-based Systems) (KB4018483)
Security Update for Microsoft Silverlight (KB4017094)
Cumulative Update for Windows 10 Version 1607 for x64-based Systems (KB4015217)
Now when I try to login in SSMS I'm getting the following error:
A connection was successfully established with the server, but then an error occurred during the login process. (provider: SSL Provider, error: 0 - The token supplied to the function is invalid (Microsoft SQL Server)
The token supplied to the function is invalid
This looks like it is security related, but I don't know what to do to fix it. My machine uses Windows Server Essentials for backups (and the connector is green).
答案 0 :(得分:7)
我遇到过与SQL Server相同的问题。我遵循了一些步骤,我的问题得到了解决。这些步骤是 -
找到并单击注册表中的以下子项: HKEY_LOCAL_MACHINE \系统\ CurrentControlSet \控制\ SecurityProviders \ SCHANNEL
在“编辑”菜单上,指向“新建”,然后单击“DWORD值”。
答案 1 :(得分:4)
在具有管理权限的命令行中执行并重新启动。
netsh winsock reset
答案 2 :(得分:2)
为了完整性,我只是想回答这个问题。我不确定以前的答案是否能为我解决问题,所以就去...
在尝试连接到我们的一个质量检查数据库时,使用SSMS v18.0时始终收到以下错误: The token supplied to the function is invalid
结果证明,我们的证书刚刚被更新,并且在使用新的签名算法(从RSA / SHA256到RSA / SHA512)进行更新时对我来说是未知的。最终的解决方案是修改注册表中的已启用算法列表(计算机\ HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ Cryptography \ Configuration \ Local \ SSL \ 00010003),然后重新启动计算机: enable RSA/SHA512 registry
答案 3 :(得分:0)
似乎其他人只需重新启动机器的IIS即可获得成功。
这就像这样简单:
单击“开始”,单击“运行类型
IISReset
”,然后单击“确定”。 SOURCE (Microsoft)
否则,SSCM中有一些设置可能需要确保正确设置,这可能是导致各种问题的罪魁祸首:
- 确保启用共享内存协议
- 确保已启用命名管道协议
- 确保启用TCP / IP,并且在命名管道之前 设置SOURCE (SO)
醇>
(这些设置在您的SSCM中)。还有nice blog post关于将这些设置设置为不同错误的解决方案。
我希望这有助于激发一些想法!看起来这是一个相当普遍的问题,没有很多具体的解决方案建议。
如果这些都不起作用(我认为如果他们解决了这个问题我会建议他们进行尽职调查),你可能需要调查Windows Malicious Software Removal Tool
修改的内容。
其他人在过去的类似更新后使用SSMS遇到了问题,他们似乎提供Internet Explorer作为罪犯。为了解决这个问题,他们取消注册并注册了ieproxy.dll
。
他们建议这样做:
- 以管理模式启动命令行。如果您有Win x64,请转到
C:\Program Files\Internet Explorer
或c:\Program Files (x86)\Internet Explorer
。- 执行
regsvr32 /u ieproxy.dll
(如果未加载,可能会抛出错误)- 执行
regsvr32 ieproxy.dll
SOURCE (SO)
这似乎对他们来说是成功的,希望它有效!
答案 4 :(得分:0)
只需回答我的后代问题即可:
打开MMC并选择本地计算机的证书附件。打开服务器证书并禁用服务器和客户端身份验证目的。重新启动SQL Server。完成。