Módulo de Python GetPass

Módulo de Python GetPass
Todos mantenemos secretos, ¿no?? Incluso nuestros programas lo hacen. Lo importante de los secretos es que debemos mantenerlos de forma segura y secreta ocultas de entidades que no deberían tener acceso a estas claves secretas, frases o contraseña que permitirán a los usuarios hacer algo que no están autorizados para hacer. Se debe tener el mismo cuidado cuando aceptamos claves secretas, frases de aprobación o contraseña de usuarios en nuestros programas como la cadena secreta no debe hacerse eco cuando las escribamos en la pantalla. La pitón conseguir pase El módulo nos permite hacer esto de manera eficiente.

Módulo de Python GetPass

Usando Python conseguir pase Módulo, es posible aceptar contraseñas en los programas de Python y mantener seguras las frases de contracción. Veremos ejemplos de mantenimiento de contraseñas seguras y también cómo podemos transmitir contraseñas desde el terminal hasta los archivos de texto. Comencemos con algunos ejemplos.

Python GetPass Ejemplo básico

En este ejemplo, comenzaremos con un ejemplo muy básico de cómo podemos hacer que un usuario ingrese una contraseña en el terminal y nos aseguraremos de que la contraseña no vuelva al símbolo del sistema. Aquí está el mismo programa:

importar getPass
intentar:
contraseña = GetPass.conseguir pase()
excepto la excepción como ex:
Imprimir ('Ocurrió el error:', ex)
demás:
imprimir ('contraseña ingresada:', contraseña)

Esto es lo que recuperamos con este comando:

Obtener secreto de contraseña

La contraseña de cadena es el mensaje predeterminado que presenta el script de Python. En el próximo ejemplo será personalizar eso a algo que nos gustará usar en nuestros programas.

Python GetPass con aviso personalizado

En este ejemplo, personalizaremos el aviso que se muestra al usuario cuando Python solicite una frase secreta:

importar getPass
PWD = GetPass.getPass (pronto = 'que es la mejor isla de Ubuntu para visitar?')
Si pwd == 'Linuxhint':
imprimir ('por supuesto!')
demás:
imprimir ('¿Dónde está ese??')

Veamos la salida para este comando:

Solicitud personalizada para obtener contraseña

Este comando es útil cuando desea solicitar algunas frases de contraseña aparte de las cadenas de contraseña.

Transmitir contraseña a otro streaml

El conseguir pase El módulo nos permite transmitir la contraseña que entra un usuario en otras transmisiones como un archivo, registros o cualquier cosa que pueda representarse como una secuencia en realidad. Solo necesitamos pasar la transmisión a la función en sí:

importar getPass
Sys de importación
PWD = GetPass.getPass (stream = sys.stderr)
imprimir ('contraseña ingresada:', pwd)

Esto es lo que recuperamos con este comando:

Transmisión de contraseña a otras transmisiones

Obtener contraseñas sin terminal

La pitón conseguir pase El módulo necesita TTY que puede ser controlado por un termios. Esto es aplicable cuando estamos trabajando con algunos sistemas basados ​​en UNIX. Con esto, el eco se puede deshabilitar. Cuando ejecutamos el siguiente ejemplo en una máquina no Unix:

echo "no oscuro" | python3 getPass_defaults.py

Esto es lo que recuperamos con este comando:

comando termios

Mientras ejecutamos el script en una máquina no unix, la cadena de salida era lo que ingresamos. De lo contrario, simplemente hubiéramos visto no oscuro Cadena como salida en el terminal.

Leer más sobre terminales de teletipo aquí.

Conclusión

En esta lección, observamos cómo podemos hacer uso de Python conseguir pase Módulo para administrar frases de contracción secretas de manera eficiente en nuestros programas de Python.