Búsqueda de sitios web

SharePoint Online: eliminar usuario del grupo mediante PowerShell


Requisito: Eliminar usuario del grupo en SharePoint Online mediante PowerShell.

Como administrador, puede haber ocasiones en las que necesite eliminar a un usuario de un grupo en SharePoint Online. En este artículo, seguiremos los pasos necesarios para hacerlo utilizando la interfaz del navegador web y con PowerShell.

SharePoint Online: ¿Cómo eliminar un usuario de un grupo?

Se pueden eliminar usuarios de los grupos de seguridad de SharePoint Online con solo unos pocos clics. Siga estos pasos para eliminar usuarios de un grupo de SharePoint Online:

  1. Navegue a su sitio de SharePoint Online donde se utiliza el grupo, haga clic en el engranaje de Configuración del sitio >> Haga clic en Configuración del sitio en el menú.
  2. Desde la página Configuración del sitio, haga clic en "Personas y grupos" en la sección "Usuarios y permisos".
  3. En el menú de navegación de la izquierda, seleccione el grupo del que desea eliminar a los usuarios.
  4. Marque la casilla de verificación junto a los usuarios que desea eliminar.
  5. Haga clic en la flecha desplegable Acciones >> Seleccione Eliminar usuarios del grupo.
  6. En el cuadro de mensaje emergente de confirmación, haga clic en Aceptar para confirmar la eliminación.

Si no ves el menú Acciones, es porque no tienes permiso para editar miembros de ese grupo.

SharePoint Online: eliminar usuario del grupo mediante PowerShell

Si necesita eliminar un usuario de un grupo de SharePoint Online, no es necesario pasar por la página Usuarios y grupos. En su lugar, puede utilizar PowerShell para eliminar rápida y fácilmente al usuario del grupo. Usemos PowerShell para eliminar usuarios de un grupo de SharePoint Online:


#Load SharePoint CSOM Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"

#sharepoint online remove user from site collection powershell
Function Remove-UserFromGroup()
{
  param
    (
        [Parameter(Mandatory=$true)] [string] $SiteURL,
        [Parameter(Mandatory=$true)] [string] $GroupName,
        [Parameter(Mandatory=$true)] [string] $UserID
    )
   Try {
        $Cred= Get-Credential
        $Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)

        #Setup the context
        $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
        $Ctx.Credentials = $Credentials
        
        #Get the User
        $User=$Ctx.web.EnsureUser($UserID)
        $Ctx.Load($User)
        #Get the Group
        $Group=$Ctx.web.SiteGroups.GetByName($GroupName)
        $Ctx.Load($Group)
        $Ctx.ExecuteQuery()

        #Check if user member of the group
        $IsMember = $False
        $GroupUsers = $Group.Users 
        $Ctx.Load($GroupUsers)
        $Ctx.ExecuteQuery()
        Foreach($GrpUser in $GroupUsers){
            if($GrpUser.id -eq $User.Id)
            {
                $IsMember = $True
            }
        }
        if($IsMember -eq $False)
        {
            Write-host "User Doesn't Exists in the Group!" -ForegroundColor Yellow
        }
        else
        {
            #Remove user from the group
            $Group.Users.RemoveByLoginName($User.LoginName)
            $Ctx.ExecuteQuery()
            Write-host "User Removed from the Group Successfully!" -ForegroundColor Green
        }
    }
    Catch {
        write-host -f Red "Error Removing User from Group!" $_.Exception.Message
    }
} 

#Set parameter values
$SiteURL = "https://crescent.sharepoint.com"
$GroupName="Team Site Members"
$UserID="DavePrudenti@crescent.com"

#Call the function to remove user from group
Remove-UserFromGroup -SiteURL $SiteURL -GroupName $GroupName -UserID $UserID 

Eliminar todos los usuarios del grupo en SharePoint Online usando PowerShell

¿Qué tal eliminar a todos los usuarios de un grupo? Repasemos el proceso de eliminar usuarios de un grupo en SharePoint Online con PowerShell:


#Load SharePoint Online Assemblies
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll"
Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll"

#Function to remove all users from a group
Function Remove-AllUserFromGroup()
{
  param
    (
        [Parameter(Mandatory=$true)] [string] $SiteURL,
        [Parameter(Mandatory=$true)] [string] $GroupName
    )
   Try {
        $Cred= Get-Credential
        $Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password)
 
        #Setup the context
        $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL)
        $Ctx.Credentials = $Credentials
         
        #Get the Group
        $Group=$Ctx.web.SiteGroups.GetByName($GroupName)
        $Ctx.Load($Group)
        $Ctx.ExecuteQuery()
 
        #Get users of the group
        $GroupUsers = $Group.Users
        $Ctx.Load($GroupUsers)
        $Ctx.ExecuteQuery()
 
        #Remove all users from the group
        ForEach($User in $GroupUsers)
        {
            $Group.Users.RemoveByLoginName($User.LoginName)
        }
        $Ctx.ExecuteQuery()
        Write-host "All Users are Removed from the Group!" -ForegroundColor Green        
    }
    Catch {
        write-host -f Red "Error Removing All Users from Group!" $_.Exception.Message
    }
} 

#Set parameter values
$SiteURL = "https://crescent.sharepoint.com"
$GroupName="Team Site Members"

#Call the function to remove all users from group
Remove-AllUserFromGroup -SiteURL $SiteURL -GroupName $GroupName

Eliminar usuario del grupo mediante el Shell de administración de SharePoint Online

También podemos usar el cmdlet Remove-SPOUser para eliminar un usuario de un grupo específico.


#Set parameter values
$AdminSiteURL="https://crescent-admin.sharepoint.com"
$SiteURL="https://crescent.sharepoint.com"
$GroupName="Team Site Members"
$LoginName="Salaudeen@crescent.com"

#Get Credentials to connect
$Credentials = Get-Credential
Connect-SPOService -url $AdminSiteURL -credential $Credential

#remove user from sharepoint online group powershell
Remove-SPOUser -LoginName $LoginName -Site $SiteURL -Group $GroupName

Eliminar usuario de todos los grupos de un sitio

¿Qué tal eliminar a un usuario de todos los grupos del sitio? Bueno, aquí se explica cómo eliminar un usuario de un grupo en SharePoint Online usando PowerShell. Primero, iniciaremos sesión en nuestro sitio de SharePoint Online usando PowerShell. A continuación, obtendremos una lista de grupos de los que es miembro el usuario. Finalmente, eliminaremos al usuario del grupo deseado. ¡Empecemos!


#Set parameter values
$AdminSiteURL="https://crescent-admin.sharepoint.com"
$SiteURL="https://crescent.sharepoint.com"
$LoginName="Salaudeen@crescent.com"

#Get Credentials to connect
$Credentials = Get-Credential
Connect-SPOService -url $AdminSiteURL -credential $Credential

#Get all groups  
$Groups= Get-SPOSiteGroup -Site $SiteURL

#Remove user from each group 
Foreach($Group in $Groups)
{
   Remove-SPOUser -Site $SiteURL -LoginName $LoginName -Group $Group.Name
}

Los otros métodos como CSOM y PnP PowerShell para eliminar un usuario de todos los grupos están aquí: ¿Cómo eliminar un usuario de todos los grupos en un sitio de SharePoint Online usando PowerShell?

SharePoint Online: eliminar un usuario de un grupo usando PnP PowerShell

Eliminemos un usuario del grupo de SharePoint Online con PnP PowerShell:


#Config Variables
$SiteURL = "https://Crescent.sharepoint.com/sites/marketing"
$GroupName ="Marketing Members"
$UserLoginId = "salaudeen@Crescent.com"

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive
    
#Remove user from group
Remove-PnPGroupMember -LoginName $UserLoginId -Identity $GroupName

Si administra SharePoint Online, puede haber ocasiones en las que necesite eliminar varios usuarios de un grupo. ¡Puedes eliminar varios usuarios del grupo envolviéndolos en una matriz!


#Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/Retail/"
$UserIds = @("salaudeen@crescent.com","steve@crescent.com","AlexW@crescent.com")

#Connect to PnP Online
Connect-PnPOnline -Url $SiteURL -Interactive

#Get the Members Group of the site
$MembersGroup = Get-PnPGroup -AssociatedMemberGroup

#Get All members of the Group
$GroupMembers = Get-PnPGroupMember -Identity $MembersGroup | Select -ExpandProperty "Email"
ForEach($UserID in $UserIds)
{
    #Check if the user is member of the group
    If($GroupMembers.Contains($UserID))
    {
        #Remove user from group
        Remove-PnPGroupMember -LoginName $UserId -Identity $MembersGroup
        Write-Host -f Green "User '$UserID' Removed from the Group Successfully!"
    }
    Else
    {
        Write-Host -f Yellow "User '$UserID' is not part a member of the Group!"
    }
}

Es posible que eliminar usuarios de los grupos no impida que los usuarios accedan a los sitios, si a los usuarios se les concede acceso directo, como control total, edición, lectura, etc., al sitio. Aquí hay otro artículo sobre cómo eliminar usuarios del sitio por completo: ¿Cómo eliminar un usuario del sitio de SharePoint Online usando PowerShell?

Artículos relacionados