我一直在谷歌搜索我尝试将我正在使用的Web应用程序与SharePoint 2010集成时遇到的问题。
Web应用程序是一种wiki样式工具,允许用户通过表单身份验证或针对Active Directory的WIA登录,并为自己和他人创建内容。
我们想要做的是允许用户拥有一个页面,其中包含他们在我们的Web应用程序中创建的内容以及他们生活在SharePoint服务器上的内容。例如,他们可能希望查看SharePoint服务器上的文档列表以及其中的一些内容。
为了实现这一目标,我们希望将用户登录到我们的Web应用程序的凭据(例如MYDOMAIN \ jsmith)带到SharePoint,以查询同一用户(MYDOMAIN \ jsmith)的文档而不使用提示用户重新输入其凭据以访问SharePoint服务器(我们正在尝试避免双跳问题)
我们已经为我们想要的方式提出了一些选择,但我们不确定最佳方法是什么。
例如,我们可以 - 拥有一个全球用户,由所有用户共享以从SharePoint获取我们需要的信息。缺点是我们无法将SharePoint内容过滤到特定用户 - 我们可以在用户登录时存储用户凭据,但这仅适用于通过表单身份验证进行身份验证的用户,并且会出现某些用户/客户不喜欢的安全问题 - 使用WCF编写SharePoint扩展以允许我们访问我们需要的信息,但是我们仍然需要弄清楚如何冒充我们想要的用户。
这两个选项都不理想,在我们的调查中,我们遇到了声明身份验证/ STS选项,它似乎正试图解决我们遇到的问题。
所以我的问题是,基于我所写的,Claim / STS对我们来说是最好的方法吗?我们无法找到有关如何使用此方法从Web应用程序调用SharePoint并传递现有凭据的方向。
有没有人对这些问题有任何经验?
答案 0 :(得分:0)
听起来你可能会使问题过于复杂。用户被要求获取凭证两次的原因是系统的两个部分位于不同的服务器上。最简单的解决方案可能是将自定义Web应用程序实现为SharePoint中的自定义页面/ Web部件。
如果这不是一个选项,SharePoint服务器上的少量代码(可能是自定义Web服务)应该为您提供更多用于模拟特定用户的选项。