diff --git a/mysql_timestamp_check.py b/mysql_timestamp_check.py index da7fcb9..97d20d3 100644 --- a/mysql_timestamp_check.py +++ b/mysql_timestamp_check.py @@ -3,6 +3,7 @@ import mysql.connector import datetime import smtplib +import ssl from email.mime.text import MIMEText from email.mime.multipart import MIMEMultipart import argparse @@ -12,9 +13,16 @@ from dotenv import load_dotenv def get_tables_from_db(connection): + """ + Holt die Liste der zu überprüfenden Tabellen, die 'RAW.' im Namen enthalten + + Returns: + list: Liste der Tabellennamen + """ try: cursor = connection.cursor() + # Holen aller Tabellen in der Kunden-Datenbank cursor.execute("SHOW TABLES FROM Kunden") tables = [] @@ -135,9 +143,12 @@ def send_email(outdated_tables, database, email_config): message.attach(MIMEText(body, "plain")) try: - # Verbindung zum SMTP-Server herstellen + # Verbindung zum SMTP-Server herstellen mit TLS + context = ssl.create_default_context() server = smtplib.SMTP(smtp_server, smtp_port) - server.starttls() # TLS-Verschlüsselung aktivieren + server.ehlo() # Kann bei manchen Servern erforderlich sein + server.starttls(context=context) # TLS-Verschlüsselung aktivieren mit sicherem Kontext + server.ehlo() # Nach TLS erneut ehlo senden # Anmelden (falls erforderlich) if smtp_password: