删除仅具有部分登录名的 SharePoint 用户
Posted
技术标签:
【中文标题】删除仅具有部分登录名的 SharePoint 用户【英文标题】:Remove SharePoint User with Only Partial Login Name 【发布时间】:2017-01-15 18:56:50 【问题描述】:我需要从网站集中删除用户的权限。问题是我没有完整的登录名。每个用户都有一个唯一的登录名(例如 DOMAIN/012345678.cnd)“cnd”部分可以根据用户更改,数字部分始终是唯一的。
所以我想要做的是传递一个变量,其中只有数字部分是已知的,然后基于此,它会删除用户。
我有以下代码:
using (SPWeb oWebsiteRoot = SPContext.Current.Site.RootWeb)
SPGroupCollection collGroups = oWebsiteRoot.SiteGroups;
SPUser oUser = oWebsiteRoot.SiteUsers[""];
所以需要一些方法来将 oUser 设置为 loginName,仅给出数字部分。我总是可以很容易地获得域。这是我无法得到的数字序列之后的最后一部分。
【问题讨论】:
【参考方案1】:这不是一个干净的解决方案,但它是一个开始:
SPWeb oWebsiteRoot = SPContext.Current.Site.RootWeb;
SPGroupCollection collGroups = oWebsiteRoot.SiteGroups;
foreach(SPGroup group in collGroups)
for(int i=group.Users.Count; i>=0;i--)
SPUser user = group.Users[i];
if (listOfDecimalsToBeDeleted.Contains(getUserDecimalPart(user.LoginName)))
group.RemoveUser(user);
【讨论】:
以上是关于删除仅具有部分登录名的 SharePoint 用户的主要内容,如果未能解决你的问题,请参考以下文章
来自同一登录名的 Laravel Multi-auth(多个用户表)