Sharepoint Web部件

Sharepoint Web部件,sharepoint,web-parts,Sharepoint,Web Parts,我已经创建了一个Web部件,它在我开发的虚拟机上运行得非常好 但是当我试图在我的物理机器上运行相同的Web部件时,我无法打开SQL连接,因为SQL Server在网络上是独立的 我的物理、虚拟和SQL Box位于同一网络上,但由于某些原因,它无法在我的物理机上工作 出现以下消息:用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败 导致此问题的原因是什么?您使用的是集成安全性,这意味着当前用户用于针对数据库服务进行身份验证。在生产服务器上,使用匿名用户执行Web部件代码。当然

我已经创建了一个Web部件,它在我开发的虚拟机上运行得非常好

但是当我试图在我的物理机器上运行相同的Web部件时,我无法打开SQL连接,因为SQL Server在网络上是独立的

我的物理、虚拟和SQL Box位于同一网络上,但由于某些原因,它无法在我的物理机上工作

出现以下消息:用户“NT AUTHORITY\ANONYMOUS LOGON”登录失败


导致此问题的原因是什么?

您使用的是集成安全性,这意味着当前用户用于针对数据库服务进行身份验证。在生产服务器上,使用匿名用户执行Web部件代码。当然,该用户无权访问web服务器文件以外的任何资源

要避免这种行为,请使用使用SQL Server安全性的专用帐户。请参见此连接字符串示例:

connectionString="Data Source=SERVERHOSTNAME;Initial Catalog=YOURDATABASE;Persist Security Info=True;User ID=YOURUSER;Password=YOURPASSWORD";

请确保从生产数据库管理员处获得具有适当权限(如db_reader)的数据库的有效登录。

您指定了
用户Id
密码
,然后将
可信\u连接
设置为
True
,因此,我想应该使用集成身份验证—删除
可信连接=True
部分。

如果物理机上安装了sql,请尝试连接到位于虚拟机上的数据库。con.ConnectionString=“Server=“+\u ipAddress+”;database=“+\u database+"; 持久安全信息=True;用户Id=用户名;密码=密码;Trusted_Connection=True“这很有效,Marek。非常感谢。