none
Eliminar de grupos RRS feed

  • Pregunta

  • Buenos Dias

    Amigos de Microsoft, acudo a su amable ayuda, pues necesito un script que me permita dejar los usuarios de una ou sin ningun grupo solamente el de domain users.

    Agradezco su coaboracion y su valiosa ayuda.

    Cordialmente

    Dlopez

    miércoles, 24 de febrero de 2016 11:48

Todas las respuestas

  • Hola,

    Este script haría lo que pides:

    Import-Module ActiveDirectory
    $Error.Clear()
    Clear-Host
    $OU = "OU=Pruebas,OU=Usuarios,DC=tudominio,DC=com"
    Try
    {
    	Write-Progress -Activity "Consultando OU $OU" -CurrentOperation "Lectura de AD"
    	$UsuariosOU = Get-ADUser -SearchBase $OU -Filter * -Properties * | select samaccountname, memberof
    	ForEach ($Item in $UsuariosOU)
    	{
    		$Usuario = $Item.samaccountname
    		$Grupos = $Item.memberof
    		Write-Host "Usuario: $Usuario"
    		ForEach ($Grupo in $Grupos)
    		{
    			Write-Host ("Eliminando $grupo del usuario $usuario")
    			Remove-ADGroupMember -Identity $Grupo -Verbose -Members $Usuario -PassThru -WhatIf #Quita el -WhatIf cuando estés seguro que lo que hace es correcto.
    		}
    	}
    }
    Catch
    {
    	Write-Error $_
    }

    Esto borraría todos los grupos de pertenencia por cada usuario que contenga la OU definida en la variable $OU (tienes que poner tú la tuya).

    El grupo Domain Users no se eliminaría al ser el grupo principal del usuario.

    Mi recomendación para que lo pruebes es:

    1. Crea una OU de pruebas y pon un usuario de pruebas con varios grupos.
    2. Pon esa OU en la variable del script.
    3. Ejecuta el script. Como lleva un -WhatIF realmente no hará nada, pero te informará de lo que quiere hacer. Con esa información verificas que es correcto.
    4. Si es correcto, quitas el -WhatIf y ejecutas. Verificas que los usuarios de prueba quedan como quieres.
    5. Si es correcto, pones la OU "buena", añades de nuevo el -WhatIf y ejecutas de nuevo. Verificas de nuevo que lo que hace es correcto.
    6. Si lo anterior es todo OK, quitas el parámetro -WhatIf y ejecutas.
    7. El script habrá dejado a todos esos usuarios únicamente con su grupo principal Domain Users.

    Espero que te sirva.

    Un saludo.

    Diego

    miércoles, 24 de febrero de 2016 17:31