0

我创建了一个自定义站点,该站点将为希望使用 asp.net 会员帐户访问我的 sharepoint 站点的新用户提供注册。当新用户点击注册时,我想向特定共享点组的所有成员发送有关新用户的电子邮件通知。问题是,注册站点允许匿名访问(它必须:))但是获取组中所有用户的代码(第二行)将我重定向到登录页面:

var web = SPContext.Current.Web;
return web.Groups[groupName].Users;

我创建了一个新用户组并设置了“谁可以查看该组的成员资格?” 对每个人来说,但是,我仍然无法在没有登录的情况下获得群组。有可能吗?

4

2 回答 2

0

SharePoint 能够使用 RunWithElevatedPrivileges 运行代码块,该代码块以 SharePoint 系统帐户的身份运行。如果你在上面包装你的代码块,你应该能够得到你正在引用的组。

确保您在代码上正确调用 Dispose 非常重要,这样您就不会留下对 spSite 对象等的引用。因此,几乎所有 RunWithElevatedPrivileges 示例都使用 using 构造。

更多信息在

http://msdn.microsoft.com/en-us/library/bb466220.aspx

于 2011-04-26T11:20:48.917 回答
0

当我之前这样做时,我创建了一个允许匿名用户创建新项目的列表,然后在列表上放置一个警报,将通知发送到相应的人员/组。我不记得以这种方式发送通知存在任何安全问题。

于 2011-04-26T17:42:44.207 回答