尝试连接到SQL数据库时获取权限错误

时间:2010-03-31 11:02:57

标签: c# sql sql-server-2008 remote-connection

我在一台运行SQL 2008的专用计算机上有一个sql server。我有这个盒子的IP,上面有数据库设置。

我已经构建了一个只进行连接测试的小脚本,当我运行它时,我收到以下错误。

请求类型'System.Data.SqlClient.SqlClientPermission,System.Data,Version = 2.0.0.0,Culture = neutral,PublicKeyToken = b77a5c561934e089'的权限失败。

管理员告诉我已经为我的IP地址授予了SQL远程访问权限。

有人知道什么是错的吗?

6 个答案:

答案 0 :(得分:0)

  • 您的连接字符串是否正确?

您使用的连接字符串类似于此处显示connectionstrings.com

  • 您的用户名和密码是否正确?

用户名= XXX; PWD = XXX;

  • 您使用的是受信任或不受信任的连接吗?

Trusted_Connection = TRUE;

  • 您可以ping有问题的服务器吗?

答案 1 :(得分:0)

可能需要更多关于您的环境的信息。

Active Directory? 确保SQL客户端在域帐户下运行,并且与尝试访问它的用户位于同一个域中。

如果不是AD,或者如果这不起作用,请告诉我们,我们会继续尝试。

(另外,我不确定“我的IP地址是否已授予远程访问权限。”您需要实际的登录凭据。)

答案 2 :(得分:0)

SQL Server是否已配置为允许使用适当的协议进行远程连接 - 我假设TCP / IP。如果是全新安装,则可能错过了此步骤。

确认基本配置后,CResults列出的步骤应该会让你到那里。

答案 3 :(得分:0)

要强制TCP / IP(如果您的客户端默认为其他内容),请尝试将此添加到您的connectionstring“; Network Library = dbmssocn”,以便它看起来像这样:

Data Source=ipAddressHere;Initial Catalog=dbName;User Id=user;Password=pass;Network Library=dbmssocn

Data Source=tcp:ipAddressHere,1433;Initial Catalog=dbName;User Id=user;Password=pass

答案 4 :(得分:0)

为了帮助排除任何sys-admin类型问题,我建议您在客户端计算机上使用SQL Management Studio进行连接。如果不可用,请使用Visual Studio Server Explorer启动连接。

假设连接然后验证您可以运行您在测试中使用的任何SQL命令。

答案 5 :(得分:0)

原来是一个.NET安全问题。现在解决了..