Ciao, qualsiasi sistema di autenticazione può andare bene: basta aggiungere un campo nella tabella utenti con la data dell'ultimo cambio password. Prima di accedere alla pagina protetta verifichi quanto tempo è passato e nel caso siano passati tot giorni reindirizzi ad una pagina dove permetti/obblighi il cambio password.
La query potrebbe essere così
PHP:
$query="SELECT DATEDIFF(curdate(),dataModificaPassword) as tempo FROM utenti
WHERE idUtente = ".$_SESSION['idUtente']."";
restituisce il numero di giorni passati dall' ultima modifica.