Google Authenticator 2FA support over XRDP (#407736)

Changed files
+19
nixos
modules
security
+19
nixos/modules/security/pam.nix
···
to provide Google Authenticator token to log in.
'';
};
};
otpwAuth = lib.mkOption {
···
modulePath = "${pkgs.google-authenticator}/lib/security/pam_google_authenticator.so";
settings = {
no_increment_hotp = true;
};
}
{
···
to provide Google Authenticator token to log in.
'';
};
+
allowNullOTP = lib.mkOption {
+
type = lib.types.bool;
+
default = false;
+
description = ''
+
Whether to allow login for accounts that have no OTP set
+
(i.e., accounts with no OTP configured or no existing
+
{file}`~/.google_authenticator`).
+
'';
+
};
+
forwardPass = lib.mkOption {
+
type = lib.types.bool;
+
default = false;
+
description = ''
+
The authentication provides a single field requiring
+
the user's password followed by the one-time password (OTP).
+
'';
+
};
};
otpwAuth = lib.mkOption {
···
modulePath = "${pkgs.google-authenticator}/lib/security/pam_google_authenticator.so";
settings = {
no_increment_hotp = true;
+
forward_pass = cfg.googleAuthenticator.forwardPass;
+
nullok = cfg.googleAuthenticator.allowNullOTP;
};
}
{