Buscar

Windows: net user contraseña nunca expira

En ocasiones debemos configurar usuarios locales en sistemas Windows.

Para ello, podemos utilizar las herramientas GUI o bien herramientas desde linea de comandos.

Si preferimos utilizar herramientas de linea de comandos, podemos usar, el comando net user.

Con el comando net user podemos administrar las cuentas de usuario locales desde linea de comandos.

Si ejecutamos: net help user, podemos obtener la lista de parámetros que la herramienta acepta.

Si por ejemplo queremos crear un usuario con el check de: "la contraseña nunca expira" y examinamos la ayuda veremos que existe el parámetro /EXPIRES

Según la ayuda el parámetro /EXPIRES indica:

/EXPIRES:{fecha | NEVER}

Hace que la cuenta expire si se establece una fecha. NEVER no establece límite de tiempo en la cuenta. La fecha de expiración debe tener el formato mm/dd/aa(aa). Los meses se pueden indicar con números, nombres o abreviaturas de tres letras. El año debe contener 2 o 4 números. Use barras diagonales (/) en lugar de espacios para separar las partes de la fecha.

Sin embargo, el resultado de su ejecución no es el esperado:

Al ejecutar (Usuario: Sysadmit / Password: P@ssW@rd)

Net User Sysadmit P@ssW@rd /add /expires:never

y revisar la herramienta GUI: lusrmgr.msc

Vemos que la casilla: "La contraseña nunca expira" está desmarcada.

Windows: net user contraseña nunca expira

El resultado no es el esperado porque el parámetro /EXPIRES:Never hace referencia a la caducidad de la cuenta, no a la caducidad de la contraseña.

Para establecer la caducidad de la contraseña y que esta nunca expire, deberemos ejecutar el siguiente comando:

WMIC USERACCOUNT WHERE "Name='SysAdmIt'" SET PasswordExpires=FALSE

El resultado es el siguiente:

Windows: net user contraseña nunca expira

11 comentarios:

  1. Pues para mi el resultado es totalmente esperado. La ayuda indica claramente que hace referencia a la caducidad de la cuenta, y no de la contraseña:

    /EXPIRES:{date | NEVER} Causes the account to expire if date is
    set.

    ResponderEliminar
    Respuestas
    1. ¡Gracias por participar en blog!

      Efectivamente, si se lee con detalle lo explica.

      El problema es que en muchas ocasiones queremos desactivar la opción: "la contraseña nunca expira" en un usuario local, y eso no lo podemos hacer directamente con el comando Net User, a pesar de que con Net User podemos crear el usuario.

      ¡Un saludo!

      Xavi.

      Eliminar
  2. mE DA ERROR GENÉRICO AL EJECUTAR WMIC USERACCOUNT WHERE "Name='SysAdmIt'" SET PasswordExpires=FALSE

    ResponderEliminar
    Respuestas
    1. Hola Pablo,

      Igual es que no tienes el usuario en tu sistema: Sysadmit.

      Debes substituir el usuario Sysadmit por el usuario que quieres establecer la caducidad de la contraseña y que esta nunca expire.

      Un saludo,

      Xavi.

      Eliminar
  3. Al ejecutar
    >wmic useraccount where name='Alumno' set passwordexpires=false

    Me da error generico

    ResponderEliminar
  4. Recuerda ejecutar el CMD como administrador, o si has creado un .bat, también ejecutalo como adminsitrador

    ResponderEliminar
  5. Hola! También se puede utilizar la utilidad "net accounts" con el parámetro "maxpwage -
    unlimited" pero no recuerdo si aplica a todas las versiones de Windows (por ejemplo XP o versiones recientes de W10 cómo "Home". En las "Professional" y superiores sí funciona:

    -Ejecutar una CMD cómo Administrador.
    -Escribir: net accounts /maxpwage:unlimited
    -Listo!

    Excelente su blog! Saludos desde México! :D

    ResponderEliminar
  6. Gracias amigo me sirvio de mucha ayuda.

    ResponderEliminar
  7. gracias , explicado perfectamente y es lo que necesitaba

    ResponderEliminar
  8. Super buen tip muchas gracis

    ResponderEliminar