我通过使用SmartParts在我的SharePoint网站上创build了一些自定义WebParts。 我的自定义Web部件看看2差异。 SQL Server数据源。
但是,当我从我的本地PC访问SharePoint网站,我打那个自定义的Webpart我得到的错误,说“403 FORBIDDEN”。 现在我知道它的安全问题,但是在哪里,为什么? 为什么它在服务器上而不是从另一台PC上运行?
任何帮助将是伟大的!
编辑:
我的Web.config中的ConnectionString
<add name="DSN" connectionString="Data Source=TCP:us-support.a1.mydomain.com; Initial Catalog=myDB;Integrated Security=false;User ID=myID;Password=myPassword" providerName="System.Data.SqlClient" />
我能想到的主要有两个原因:
NTLM双跳问题
这可能是问题所在。 你是:
Integrated Security=SSPI
或Trusted_Connection=True
则为Trusted_Connection=True
) 那么你可能正面临着双跳问题 。 发生这种情况是因为ASP.NET仅将您的Windows凭据传递给一个服务器,而不是两个。 所以它将从您的本地PC到SharePoint服务器,但不会传递到数据库服务器。
我知道的唯一方法是避免这种情况(除非你想configurationKerberos)build立一个SQL帐户,并在你的连接string中使用它到数据库。
权限资源
Web部件正在访问您的本地PC帐户无权访问的资源。
对您认为会导致问题的Web部件执行某种日志logging,并将其缩小到特定代码行。 请注意,虽然这可能是数据库身份validation问题,但也可能是Web部件正在访问某些CSS文件或其他本地帐户无权访问的资源。