diff --git a/modules/security.nix b/modules/security.nix index e3822aa..90b1c87 100644 --- a/modules/security.nix +++ b/modules/security.nix @@ -1,28 +1,34 @@ { ... }: { - # Déploie les clés FIDO/U2F autorisées. + # Déploiement du mapping utilisateur <-> YubiKey environment.etc."u2f-mappings".source = ../u2f-mappings; - # Authentification PAM avec FIDO2/U2F. + # Authentification PAM avec FIDO2 / YubiKey security.pam.u2f = { enable = true; - # La YubiKey peut remplacer le mot de passe. - # Si l'authentification U2F échoue ou que l'utilisateur - # n'a pas de clé enregistrée, PAM peut continuer - # avec l'authentification classique. + # Une authentification YubiKey réussie suffit. + # Le mot de passe reste disponible comme mécanisme de secours + # pour les comptes qui ne s'authentifient pas par FIDO2. control = "sufficient"; settings = { authfile = "/etc/u2f-mappings"; - # Identifiant volontairement commun à tous nos postes. + # Identifiant commun à tous nos futurs postes. origin = "pam://nixos-workstations"; appid = "pam://nixos-workstations"; - # Demande à pam_u2f d'indiquer qu'il attend la clé. + # Indique à l'utilisateur qu'il doit toucher la clé. cue = true; + + # Le PIN FIDO2 est maintenant obligatoire. + pinverification = 1; + + # Pas de biométrie / vérification utilisateur intégrée. + # La vérification repose explicitement sur le PIN. + userverification = 0; }; }; } \ No newline at end of file