"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo almacenar de forma segura el nombre de usuario y la contraseña para trabajos cron de Python?

¿Cómo almacenar de forma segura el nombre de usuario y la contraseña para trabajos cron de Python?

Publicado el 2024-11-03
Navegar:854

How to Securely Store Username and Password for Python Cron Jobs?

Almacenamiento seguro de nombre de usuario y contraseña en Python para trabajos cron

Para almacenar de forma segura una combinación de nombre de usuario y contraseña para usar en scripts de Python ejecutados por trabajos cron, considere lo siguiente opciones:

Biblioteca de llaveros de Python

La biblioteca de llaveros se integra perfectamente con la API CryptProtectData en Windows y las API relevantes en otras plataformas. Esto permite el cifrado de datos utilizando las credenciales de inicio de sesión del usuario. Su uso simple implica:

import keyring

# Define a unique namespace for your application
service_id = 'IM_YOUR_APP!'

# Set the password for a given username
keyring.set_password(service_id, 'dustin', 'my secret password')

# Retrieve the password
password = keyring.get_password(service_id, 'dustin')

Para almacenar el nombre de usuario por separado, abuse de la función set_password:

import keyring

MAGIC_USERNAME_KEY = 'im_the_magic_username_key'

# Username to store
username = 'dustin'

# Store the password and username in the keyring
keyring.set_password(service_id, username, "password")
keyring.set_password(service_id, MAGIC_USERNAME_KEY, username)

# Retrieve username and password
username = keyring.get_password(service_id, MAGIC_USERNAME_KEY)
password = keyring.get_password(service_id, username)  

Dado que los elementos almacenados en el llavero están cifrados con credenciales de usuario, otras aplicaciones que se ejecutan con la misma cuenta de usuario pueden acceder a la contraseña.

Ofuscación/Cifrado

Para mejorar la seguridad, considere ofuscar o cifrar la contraseña antes de almacenarla en el llavero. Esto agrega una capa adicional de protección, evitando la exposición accidental mediante la recuperación automática de contraseñas. Sin embargo, cualquiera que tenga acceso al código fuente del script aún podría descifrar la contraseña.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3