简体   繁体   English

Powershell从Sharepoint中的特定组中删除用户

[英]Powershell remove user from specific group in sharepoint

I am trying to remove a specific user from sharepoint and have hit a wall. 我正在尝试从共享点中删除特定用户,并且碰壁了。

I keep getting the following error 我不断收到以下错误

You cannot call a method on a null-valued expression.

Code: 码:

function verifyUsers
{
    $verify_sitepath="https://extranet.mydomain.com"
    $verify_site=new-object Microsoft.SharePoint.SPSite($verify_sitepath)
    $verify_web=$verify_site.Rootweb
    $verify_web.site.url
    $verify_groups = $verify_web.groups | ? {$_.Name -match "^.*$CurrentGroup" }
    foreach($verify_group in $verify_groups)
    {
        #Write-Output "+ $($verify_group.Name)"
        foreach($verify_user in $verify_group.users)
        {
            $verify_user = $verify_user -replace "MYDOM\\",""
            Write-Output "$verify_user" | Out-File -filepath "$splist$currentGroup.txt" -append
        }
    }
    $strReference = get-Content "C:\Powershell\Users from SharePoint\$currentgroup.txt"
    $strDifference = get-Content "C:\Powershell\Users in groups\$currentgroup.txt"
    Compare-Object $strReference $strDifference

    Compare-Object $strReference $strDifference | `
    Where-Object { $_.SideIndicator -eq "<=" } | `
    ForEach-Object {
        if ($_.InputObject -eq "testuser ")
        {
            Write-Host "testuser HAHAHAHAHA"
            $TheNewGroup = $OpenWeb.SiteGroups | Where-Object {($_.Name -match $currentGroup)}
            "group Name: $TheNewGroup.Name"
            #$TheNewGroup.deleteuser("MYDOM\" + $_.InputObject)
            #$web.Update()

            $TheNewGroup.SiteUsers.Remove("MYDOM\testuser ")
        }
        Write-Host $_.InputObject
        "Deleting user: {0} from $currentgroup" -f $_.InputObject
    }
}

Found the anwser (Sorry about my messy code above) 找到了anwser(对不起我上面的凌乱代码)

$theuser = $verify_web.AllUsers.Item("MYDOM\testuser")
$TheNewGroup.RemoveUser($theuser)

Well, there are multiple ways to Delete Users from SharePoint Site Collection: 好了,有多种方法可以从SharePoint网站集中删除用户:

  1. You can delete users using SharePoint Web Interface 您可以使用SharePoint Web Interface删除用户
  2. Delete users from SharePoint site using PowerShell (Bulk Delete also possible) 使用PowerShell从SharePoint网站删除用户(也可以批量删除)
  3. Remove users from SharePoint programmatically using C# 使用C#以编程方式从SharePoint中删除用户

Found various possible ways at SharePointDiary.com: Delete Users from SharePoint Site Collection 在SharePointDiary.com找到了各种可能的方法: 从SharePoint网站集中删除用户

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM