Crear y Aplicar una PSO a un Grupo de Usuarios desde PowerShell
¿QUÉ ES PSO?
PSO (Fine-Grained Password Policies) y sirve para configurar Políticas de Contraseñas según las necesidades de diferentes Grupos.
Están disponibles desde Windows Server 2012 y desde Windows Server 2012 R2, y continuan usandose en Windows Server 2016 donde podemos aplicarlas usando el Centro Administrativo de Directorio Activo y desde Powershell.
COSAS A TENER EN CUENTA ANTES DE CREARLA
- Precedencia: Cuanto mas bajo sea el número de la Precedencia, Mayor Importancia tiene de aplicarse con respecto a otras PSOs que se hayan creado anteriormente y las que se vayan a crear en un futuro.
Las reglas de precedencia de PSOs son:
- Siempre tiene Prioridad una PSO que esté aplicada directamente a un objeto.
- Para PSOs que están aplicadas de forma indirecta, siempre tiene prioridad la que tenga un valor de precedencia más bajo.
Por ejemplo: usuario1 pertenece a Grupo1 y Grupo2.
En Grupo1 tenemos una PSO1 con precedencia 10 y en Grupo2 tenemos una PSO2 con precedencia 50.
- Si dos PSOs tienen la misma precedencia, tiene prioridad la que tenga un ObjectGUID más bajo.
- Si a un objeto no se le aplica ninguna PSO de forma directa ni indirecta, se le aplica la GPO Default Domain Policy
DIFERENCIAS ENTRE GPO y PSO
1. Las PSO Siempre tienen PRIORIDAD frente a la GPO Default Domain Policy.
2. Sabemos que para proteger las cuentas de usuarios y equipos en el dominio tenemos las directivas de:
- Password Policies: útil para el Tenant de Azure
- Account Policies
- Kerberos Policies
Además, estas configuraciones sólo se aplican en la GPO Default Domain Policy.
Por lo tanto, impide que podamos aplicar diferentes Políticas de Contraseñas a diferentes Grupos o Unidades Organizativas.
En cambio, las PSOs, SÍ NOS PERMITE aplicar diferentes Políticas de Contraseñas a diferentes Grupos y Usuarios en concreto.
COMANDOS POWERSHELL NECESARIOS:
- Creamos la PSO para dicho Grupo utilizamos el siguiente Comando:
New-ADFineGrainedPasswordPolicy –Name “NOMBRE_PSO” –Precedence 10 -ComplexityEnabled $true -MinPasswordLength 10
- Complexity Enabled: Complejidad de contraseña. Valores = $True o $False
- MinPasswordLength: Tamaño mínimo que tendrá nuestra contraseña.
2. Indicar el Grupo al que vamos a Aplicar
Add-ADFineGrainedPasswordPolicy Subject –Subjects NOMBRE_GRUPO –Identity “Nombre_PSO”
3. Para Comprobar que se ha Aplicado
Get-ADGroup –Identity Nombre-del-Grupo –Properties msDS-PSOapplied
Autor/a: Miguel Ángel Bernal Martínez
Curso: Microsoft MCSA Windows Server 2016 + Microsoft MCSE Cloud Platform & Infrastructure
Centro: Tajamar
Año académico: 2017-2018