17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

294<br />

La bibliothèque standard<br />

TROISIÈME PARTIE<br />

getpass<br />

Traceback (most recent call last):<br />

File "", line 1, in ?<br />

File "debugging.py", line 9, in main_function<br />

sub_function(str(i))<br />

File "debugging.py", line 4, in sub_function<br />

raise TypeError('affreux plantage')<br />

TypeError: affreux plantage<br />

>>> import pdb;pdb.pm()<br />

alias charges<br />

> /home/tziade/Desktop/scripts/debugging.py(4)sub_function()<br />

-> raise TypeError('affreux plantage')<br />

(Pdb) i<br />

0<br />

(Pdb) up<br />

> /home/tziade/Desktop/scripts/debugging.py(9)main_function()<br />

-> sub_function(str(i))<br />

(Pdb) l<br />

4 raise TypeError('affreux plantage')<br />

5 print(text)<br />

6<br />

7 def main_function():<br />

8 for i in range(2):<br />

9 -> sub_function(str(i))<br />

(Pdb)<br />

Le module getpass récupère par le biais de la fonction getpass() un mot de passe de<br />

manière interactive. Il se base sur les bibliothèques disponibles du système hôte pour<br />

faire cette demande, soit :<br />

avec msvcrt sous MS-Windows ;<br />

avec EasyDialogs.AskPassword sous Mac ;<br />

dans le terminal, avec le mode echo à off, sous Unix.<br />

getpass fournit aussi une fonction getuser(), qui renvoie le nom de l’utilisateur<br />

courant, en le recherchant dans les variables d’environnement du système (respectivement<br />

LOGNAME, USER, LNAME et USERNAME).<br />

getpass à l’usage<br />

>>> import getpass<br />

>>> getpass.getuser()<br />

'tziade'<br />

>>> getpass.getpass('Entrez un mot de passe :')<br />

Entrez un mot de passe :<br />

'unmotdepasse'

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!