Creo que es ciertamente apropiado establecer restricciones en las contraseñas. ¡Pero depende de lo que estés tratando de proteger!
Dependiendo de qué información está protegiendo su sitio (y su sistema de autenticación). Es posible que pueda salirse con la configuración de restricciones para:
min_length = 6 y nunca caducan. Si bien no requiere ningún tipo de caracteres especiales en absoluto.
Pero si el sitio va a contener información realmente confidencial, debe establecer restricciones muy estrictas.
La configuración de seguridad en su sitio debe ser acorde con la importancia de los datos que están protegiendo.
Dicho esto, puedes ir muy lejos. Requerir una contraseña que tenga 32 caracteres de longitud y forzar un cambio cada 10 días va a enojar al usuario, anímelo a que escriba la contraseña o tal vez ni siquiera se moleste en usar el sitio (busque otra cosa) ..
En resumen: la última recomendación que recuerdo haber leído (no tengo un enlace para usted) fue de 12 caracteres como mínimo con al menos 1 número o carácter especial. También, considere implementar un sistema que deshabilite una cuenta durante un tiempo determinado (30 minutos, 2 horas, lo que sea) después de x la cantidad de inicios de sesión fallidos.
espero que esto ayude ..