2017-04-13 256 views
12

我正在使用我的机器(和SSMS)并且一切正常。我做了重新启动的Windows于是采用10以下更新:更新后的SQL Server错误:提供给该函数的令牌无效

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) 

现在,当我尝试登录SSMS中,我发现了以下错误:

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

这看起来是安全相关的,但我不知道该如何解决它。我的机器使用Windows Server Essentials进行备份(并且连接器是绿色的)。

+0

你有没有找到这个解决方案?我收到与SSMS 17相同的错误。 – gymbrall

+0

没有。我将计算机恢复到更新之前,以便再次运行。但时不时会自动更新并再次导致问题。非常令人沮丧 – WhiskerBiscuit

+1

你有没有尝试在https://superuser.com/或https://dba.stackexchange.com/上发帖? – Alex

回答

5

我曾遇到与SQL Server相同的问题。我遵循了一些步骤,并解决了我的问题。这些步骤是 -

  1. 单击开始,单击运行,在打开框中键入regedit,然后单击确定。
  2. 找到并单击以下注册表子项:HKEY_LOCAL_MACHINE \系统\ CurrentControlSet \控制\ SecurityProviders \ SCHANNEL

  3. 在编辑菜单,指向新建,然后单击DWORD值。

  4. 键入SendExtraRecord作为DWORD值的名称,然后按Enter键。
  5. 用鼠标右键单击SendExtraRecord,然后单击修改。
  6. 在数值数据框中,键入2以禁用schannel中的拆分记录,然后单击确定。
  7. 退出注册表编辑器。
+0

我以前见过,但不幸的是它并没有为我工作。 – WhiskerBiscuit

+0

哎呀..如果我有其他解决方案,我会尽快回复您。 –

3

在具有管理权限并重新启动的命令行中执行。

netsh winsock reset 
0

似乎其他人已经通过重新启动机器的IIS成功。

这将是如此简单:

Click Start, click Run type IISReset , and then click OK. SOURCE (Microsoft)

否则,有在SSCM,你可能需要确保正确地设置一些设置,这可能是一个范围广泛的问题的罪魁祸首:

  1. ensure Shared Memory protocol is enabled
  2. ensure Named Pipes protocol is enabled
  3. ensure TCP/IP is enabled, and s ahead of the Named Pipes in the settings SOURCE (SO)

(这些设置在您的SSCM中)。还有一个关于设置这些设置的nice blog post作为解决其他错误的方法。

我希望这有助于激发一些想法!看起来这是一个相当普遍的问题,没有很多解决方案的具体建议。

如果没有这些工作(我认为我会建议他们作为尽职调查,以防他们解决问题),您可能需要查看Windows Malicious Software Removal Tool正在修改的内容。

在过去类似的更新之后,其他人在使用SSMS时遇到了问题,他们似乎提供了Internet Explorer作为罪犯。为了解决这个问题,他们未注册并注册他们的ieproxy.dll

他们建议做:

  • Launch command line in administrative mode. Go to C:\Program Files\Internet Explorer or c:\Program Files (x86)\Internet Explorer if you have Win x64.
  • Execute regsvr32 /u ieproxy.dll (this might throw an error if it isn't loaded)
  • Execute regsvr32 ieproxy.dll SOURCE (SO)

这似乎已经成功对他们来说,希望工程!