1

我在共享点 2007 中创建了一个自定义计时器作业,它从数据库中获取电子邮件 ID 列表,并且必须将其添加到共享点中的安全组中。

spweb.ensureuser("emailid")当我尝试验证用户使用甚至将用户添加到组而不验证时,我收到异常“找不到用户” 。

我也使用web.allusers.getbyemail("emailid")过,但结果相同。

还创建了带有连接字符串和提供程序元素的 owstimer.exe.config 文件,但没有运气。

有任何想法吗?

4

1 回答 1

0

spweb.ensureuser 接受 1) 用户登录(不是电子邮件) 2) 与某个登录相对应的用户的显示名称。SharePoint 有一些“用于登录的存储”,例如 AD 或基于表单的身份验证提供程序,具有基础服务或数据库。这意味着您在 spweb.ensureuser 中使用的内容必须已经在您的登录名中找到。您必须将用户的登录信息添加到 SharePoint,电子邮件将自动上传。如果您想使用纯电子邮件作为登录名,您应该了解 SharePoint 和 OpenID 中的基于声明的身份验证。有几种产品可以做到这一点(我不是为任何一个做广告:))。

于 2012-03-05T07:32:37.570 回答