forensicLogsChaiAi / utils /logstomongodb.py
Soham
changed download logs
7bb1ee2
from pymongo import MongoClient
from cryptography.fernet import Fernet
import json
# MongoDB connection string
connection_string = "mongodb+srv://soham2000:soham2000@cluster0.lbu4i.mongodb.net/?retryWrites=true&w=majority&appName=Cluster0"
# Encryption key (generate this once and store securely)
# encryption_key = Fernet.generate_key()
cipher = Fernet(b"kFRvFTtpl6WDr0eceOteS5IAnv3ps0YtCavmUwllO0k=")
# Replace <db_password> with your actual password in the connection string
client = MongoClient(connection_string)
db = client['nodetest'] # Database name
collection = db['logs'] # Collection name
file_path = "audit_logs.json" # Path to your logs file
with open(file_path, 'r') as file:
logs = json.load(file)
# Encrypt and insert logs
for log in logs:
log_json = json.dumps(log) # Convert the log object to JSON string
encrypted_log = cipher.encrypt(log_json.encode()) # Encrypt the JSON string
collection.insert_one({"encrypted_data": encrypted_log}) # Insert encrypted log
print("Logs have been encrypted and inserted into the database.")
# Decrypt a log (for testing)
for encrypted_record in collection.find():
encrypted_data = encrypted_record['encrypted_data']
decrypted_data = cipher.decrypt(encrypted_data).decode()
print("Decrypted Log:", json.loads(decrypted_data))