martes, 7 de junio de 2016

Reflexión

No siempre por hacer bien las cosas te ves recompensado y a veces el que menos hace es el que mejor esta considerado.

Lo que aquí pongo son las reflexiones de personas muy inteligentes, que me gustaría que cualquier responsable debería tener en cuenta.


Gon. Jun16

lunes, 6 de junio de 2016

PS. Borrar Usuario AD automáticamente.


En ninguna parte donde he estado trabajando coinciden como proceder cuando se da da baja a un usuario.

Donde estoy actualmente hay una rotación muy grande de personas y eso lleva tiempo de gestión.

Cuando nos piden la baja de un usuario procedemos a bloquearlo, mover lo a una OU especial, es ente caso "BorrarUsuarios" y le añadimos en la descripción la fecha del bloqueo.





Por precaución hasta pasado 3 meses no procedemos al borrado definitivo. Aquí explicaré como automatizar parte de este proceso


Alcance

Borrado automático de usuarios bloqueados.

Para que el script funcione el usuario a bloquear debe estar en la OU de \BORRARUSUARIOS, debe llevar 90 días sin que se le haya hecho ninguna modificación y debe estar deshabilitado.

Planificación

Se enviará el día 22 de cada mes un email a sistemas o quien lo requiera de los usuarios que se van a eliminar.

El día 1 de cada mes de procederá a la eliminación de los usuarios que cumplen las características comentadas.

 Si por lo que sea se ejecuta cualquier modificación en alguno de ellos perderíamos la referencia que estamos usando, que es el campo Modified.

Las planificaciones están hechas en el servidor mocDC022

Script de aviso

# ---------------------------------------------------
# Original Script: C:\scripts\BORRARUSUARIOS_email_USRS.ps1
# Version: 0.1
# Date: 6/6/2016 
# Description: Using PowerShell to Inform the users list to delete in OU \BORRARUSUARIOS.
# Comments: Conditions: Users have been disable and 90 days olds without modifications.
# ---------------------------------------------------

# Import the ActiveDirectory cmdlets

Import-Module ActiveDirectory
#List
$now = ((Get-Date).AddDays(-83)).Date
$listado = Get-ADUser -SearchBase "OU=BORRARUSUARIOS,DC=MIDOMINIO,DC=LOCAL" -Filter { Modified -le $now} -Properties * |  Where-Object {($_.Enabled -eq $False)} | Select-Object samAccountName, description, Modified | Format-Table samAccountName, description, Modified -Wrap -Aut |Out-String 
#email
$PSEmailServer = "1.46.6.29"
Send-MailMessage -From "MICOMPANY_bajas_Automaticas@gdc01.local" -To "sistemas@mi-dominio.es" -Subject "AD. Bajas de usuarios bloqueados hace mas de 3 meses. En 7 dias se borraran definitivamente." -Body  $listado

Script de borrado

# ---------------------------------------------------
# Original Script: C:\scripts\BORRARUSUARIOS_email_USRS.ps1
# Version: 0.1
# Date: 6/6/2016 
# Description: Using PowerShell to DELETE users in OU \BORRARUSUARIOS.
# Comments: Conditions: Users have been disable and 90 days olds without modifications.
# ---------------------------------------------------

# Import the ActiveDirectory cmdlets

Import-Module ActiveDirectory
#
$now = ((Get-Date).AddDays(-90)).Date
#  Envia un email con el listado a borrar
$listado = Get-ADUser -SearchBase "OU=BORRARUSUARIOS,DC=MIDOMINIO,DC=LOCAL" -Filter { Modified -le $now} -Properties * |  Where-Object {($_.Enabled -eq $False)} | Select-Object samAccountName, description, Modified | Format-Table samAccountName, description, Modified -Wrap -Aut |Out-String 
# envio del email
$PSEmailServer = "1.46.6.29"
Send-MailMessage -From "MICOMPANY_bajas_Automaticas@Gdc01.local" -To "sistemas@MIDOMINIO.es" -Subject "AD. Bajas de usuarios bloqueados hace mas de 3 meses. Se borraran AHORA!" -Body  $listado 
# Borra los usuarios.
Get-ADUser -SearchBase "OU=BORRARUSUARIOS,DC=MIDOMINIO,DC=LOCAL" -Filter { Modified -le $now} -Properties * |  Where-Object {($_.Enabled -eq $False)} | remove-adobject –confirm:$False
#

Si queremos hacer modificaciones, algo que nos puede ser útil





También nos podría ser útil: 

 {($_.enabled -eq $true) -and ($_.lastlogondate -le $old)}

Haz todas las pruebas que consideres antes de ponerlo en producción.

GoN JUN 2016. Rev Oct 2016 V1