我在Windows Server 2008 Enterprise中使用SharePiont Server 2007 Enterprise。我正在使用VSTS 2008 + C#+ .Net 3.5进行开发。我想知道SharePoint是否有办法将当前用户设置为某个特定用户?例如,我想在人们从特定IP地址连接以授予此类人员高权限时自动将用户设置为管理员。另一个例子是当人们使用特殊连接字符串连接我的sie时,如http://example.org/default.aspx?specialtestuser=foo,然后我将当前用户设置为foo。感谢是否要引用任何代码示例?
答案 0 :(得分:2)
在Sharepoint中,您可以使用模拟来代替特定用户执行代码。您还可以使用此技术以更高的特权运行代码的某些部分(优于为用户提供完全高的特权)。这里只有2个链接,但如果您在网上搜索Sharepoint和Impersonation,您会找到更多链接。
MSDN on impersonation and other tricks
Impersonation in Sharepoint 2007
我希望这会有所帮助
这里有另一个链接,建议设置一些HTTP模块,看起来有点像你想要做的: siteminder and sharepoint 2007
但我从未尝试过这个,所以我无法帮助你。
答案 1 :(得分:2)
SharePoint 2007完全支持.NET提供程序模型,因此您可以使用MembershipProvider模型(SharePoint内置提供程序是LdapMembershipProvider和LdapRoleProvider),它支持基于表单以及任何自定义身份验证/授权体系结构。您可以从Membership全局对象设置当前用户。我的警告是,如果您选择这种方法,将在整个代码中完全使用Membership和Roles对象。
Nishant的博客对MOSS和AD相关的任何内容非常有用,并且有这篇文章: http://blogs.technet.com/nishants/archive/2009/05/22/how-to-configure-forms-based-authentication-active-directory-ldapmembership.aspx