getpass --- Portable password input

Source code: Lib/getpass.py


Disponibilité: not WASI.

This module does not work or is not available on WebAssembly. See Plateformes WebAssembly for more information.

The getpass module provides two functions:

getpass.getpass(prompt='Password: ', stream=None, *, echo_char=None)

Affiche une demande de mot de passe sans renvoyer d'écho. L'utilisateur est invité en utilisant la string prompt, avec en valeur par défaut 'Password: '. Avec Unix, l'invite est écrite dans l'objet fichier stream en utilisant si besoin le replace error handler. stream sera par défaut le terminal de contrôle (/dev/tty), ou si celui ci n'est pas disponible ce sera sys.stderr (cet argument sera ignoré sur Windows).

The echo_char argument controls how user input is displayed while typing. If echo_char is None (default), input remains hidden. Otherwise, echo_char must be a single printable ASCII character and each typed character is replaced by it. For example, echo_char='*' will display asterisks instead of the actual input.

Si aucune saisie en mode sans affichage n'est disponible, getpass() se résoudra à afficher un message d'avertissement vers stream, puis lire l'entrée depuis sys.stdin, en levant une GetPassWarning.

Note

Si vous appelez getpass depuis IDLE, la saisie peut être faite dans le terminal depuis lequel IDLE a été lancé, plutôt que dans la fenêtre d'IDLE.

Note

On Unix systems, when echo_char is set, the terminal will be configured to operate in noncanonical mode. Common terminal control characters are supported:

  • Ctrl+A - Move cursor to beginning of line

  • Ctrl+E - Move cursor to end of line

  • Ctrl+K - Kill (delete) from cursor to end of line

  • Ctrl+U - Kill (delete) entire line

  • Ctrl+W - Erase previous word

  • Ctrl+V - Insert next character literally (quote)

  • Backspace/DEL - Delete character before cursor

These shortcuts work by reading the terminal's configured control character mappings from termios settings.

Modifié dans la version 3.14: Added the echo_char parameter for keyboard feedback.

Modifié dans la version 3.15: When using non-empty echo_char on Unix, keyboard shortcuts (including cursor movement and line editing) are now properly handled using the terminal's control character configuration.

exception getpass.GetPassWarning

Une sous classe d'exception UserWarning est levée quand le mot de passe saisi pourrait être affiché.

getpass.getuser()

Renvoie le login name de l'utilisateur.

This function checks the environment variables LOGNAME, USER, LNAME and USERNAME, in order, and returns the value of the first one which is set to a non-empty string. If none are set, the login name from the password database is returned on systems which support the pwd module, otherwise, an OSError is raised.

In general, this function should be preferred over os.getlogin().

Modifié dans la version 3.13: Previously, various exceptions beyond just OSError were raised.