使用Web服务访问MOSS外部的数据,使用AD进行身份验证

时间:2009-07-09 21:51:25

标签: web-services sharepoint authentication sharepoint-2007

所以这是场景:

我有一个MOSS 2007框,我希望我的客户能够通过互联网访问SharePoint网站。我被告知我将使用IPA和AD进行身份验证。但是我在SharePoint之外有一个DB,它包含各种业务数据,我想使用Web Services访问数据,对其进行操作,然后通过Web部件将其发送回SharePoint。

问题在于,根据我的理解,每次发出Web服务请求时,我都必须对AD用户进行身份验证。显然我不想每次都这样做,因为他们已经通过身份验证进入网站,但是我确实希望每个调用都有某种形式的安全性,所以它不能打开我的数据库。我确实计划让其他应用程序在SharePoint之外访问此服务,因此我不想为每个应用程序重新安装服务,甚至不想重新安装。

是否有人必须执行此任务或类似的事情,或者您对如何执行此操作有任何建议?

提前谢谢你,编码愉快!

1 个答案:

答案 0 :(得分:1)

为什么不使用Sharepoint解决方案和功能将Web服务部署到Sharepoint。 这样它将在sharepoint应用程序池下运行,所有身份验证都由sp。

完成

编辑:

看到SharePoint不应该处于“控制”状态(如评论中所述),您应该创建Web服务,并使用Windows身份验证运行它所在的应用程序。恕我直言,你应该创建一个WCF服务。使用this article中的信息,您可以使服务对其所在的AD用户组进行身份验证。请参阅本文的“安全:身份验证”部分。

然后在Visual Studio中创建一个webpart并向项目添加一个服务引用,指向新创建的Service。让webpart执行所需的逻辑(即显示数据等) 使用SharePoint解决方案(使用WSPBuilder创建的.wsp文件)将webpart部署到SharePoint。 Google for SharePoint + wspbuilder +教程。该解决方案应包含1个部署webpart的功能。 WSPBuilder与VS集成,允许创建WSPBuilde项目。将webpart特性项添加到项目中(它将为webpart创建xml(部署相关)和代码文件。