SMTPAuthenticationError Basic Authentication is disabled for outlook personal hotmail account
So beheben Sie den Fehler
Option 1: Wechseln Sie zur modernen Authentifizierung (OAuth 2.0)
Sie müssen Ihren E-Mail-Client oder Ihre Anwendung aktualisieren, um OAuth 2.0 anstelle der Basisauthentifizierung zu verwenden. So geht’s:
-
Verwenden Sie einen E-Mail-Client, der OAuth 2.0 unterstützt: Die meisten modernen E-Mail-Clients (wie Outlook, Thunderbird, Gmail-App usw.) unterstützen bereits OAuth 2.0. Wenn Sie Ihr E-Mail-Konto zu diesen Clients hinzufügen, werden Sie aufgefordert, sich über die sichere Anmeldeseite von Microsoft anzumelden.
-
Für benutzerdefinierte Apps oder Skripte: Wenn Sie eine benutzerdefinierte App oder ein benutzerdefiniertes Skript verwenden (z. B. Pythons „smtplib“, PHP-Mailer usw.), müssen Sie es so konfigurieren, dass es OAuth 2.0 für SMTP anstelle der Basisauthentifizierung verwendet. Dazu müssen Sie normalerweise ein OAuth-Zugriffstoken von der Identitätsplattform von Microsoft (Azure AD oder Microsoft Identity Platform) abrufen.
-
Registrieren Sie Ihre App bei der Microsoft Identity Platform.
-
Erhalten Sie ein OAuth 2.0-Token mithilfe des OAuth-Clientanmeldeinformationsflusses oder eines anderen geeigneten Flusses.
-
Verwenden Sie das OAuth-Token zum Senden authentifizierter SMTP-Nachrichten.
Option 2: Verwenden Sie einen anderen E-Mail-Client oder -Dienst
Wenn Ihr aktueller E-Mail-Client OAuth 2.0 nicht unterstützt, können Sie zu einem wechseln, der dies tut, wie zum Beispiel:
- Outlook-Desktopclient (neueste Version)
- Outlook für iOS/Android
- Thunderbird (mit OAuth-Unterstützung)
- Gmail-App (unterstützt das Hinzufügen von Outlook-Konten mit OAuth)
Option 3: Verwenden Sie das App-Passwort (falls verfügbar)
In einigen Fällen erlaubt Microsoft Benutzern, App-Passwörter als Fallback für ältere Anwendungen zu erstellen, die die moderne Authentifizierung nicht unterstützen. Dies ist ein zufällig generiertes Passwort, das Sie anstelle Ihres normalen Passworts verwenden können.
So erstellen Sie ein App-Passwort (falls für Ihr Konto verfügbar):
- Gehen Sie zu den Microsoft-Kontosicherheitseinstellungen.
- Aktivieren Sie die Zwei-Schritt-Verifizierung (falls nicht bereits aktiviert).
- Nach der Aktivierung sollte eine Option zum Erstellen eines App-Passworts angezeigt werden.
- Verwenden Sie dieses App-Passwort in Ihrem E-Mail-Client zur SMTP-Authentifizierung.
Hinweis: Microsoft stellt App-Passwörter ein und sie sind möglicherweise nicht für alle Konten verfügbar.
Option 4: Zwei-Schritt-Verifizierung aktivieren (falls nicht bereits verfügbar)
Stellen Sie sicher, dass die Zwei-Schritt-Verifizierung (2FA) für Ihr Microsoft-Konto aktiviert ist. Dies ist häufig eine Voraussetzung für die Verwendung von App-Passwörtern und erhöht die Sicherheit Ihres Kontos insgesamt.
Beispiel für OAuth 2.0 in Python (mit smtplib
)
Wenn Sie Python verwenden, müssen Sie Ihre grundlegende Benutzername/Passwort-Konfiguration durch die OAuth 2.0-Authentifizierung ersetzen. Hier ist ein vereinfachtes Beispiel:
- Besorgen Sie sich das OAuth 2.0-Token mithilfe der Microsoft Identity Platform.
- Verwenden Sie die Bibliothek „smtplib“ mit dem Token:
import smtplib
import base64
smtp_server = "smtp.office365.com"
smtp_port = 587
email = "your-email@outlook.com"
oauth_token = "your-oauth2-token"
auth_string = f"user={email}\1auth=Bearer {oauth_token}\1\1"
auth_string = base64.b64encode(auth_string.encode()).decode()
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls()
server.docmd('AUTH', 'XOAUTH2 ' + auth_string)
server.sendmail(email, "recipient@example.com", "Hello from OAuth")
server.quit()
Zusammenfassung
Der SMTPAuthenticationError, den Sie feststellen, ist auf die Deaktivierung der Basisauthentifizierung für Ihr Hotmail- oder Outlook.com-Konto zurückzuführen. Um dies zu beheben, können Sie:
- einen modernen E-Mail-Client verwenden, der OAuth 2.0 unterstützt.
- Ihre App oder Ihr Skript aktualisieren, um OAuth 2.0 anstelle des einfachen Benutzernamens/Passworts zu verwenden.
- Falls unterstützt, generieren und verwenden Sie ein App-Passwort für ältere Clients.
Diese Schritte helfen Ihnen, sich an die neuen Sicherheitsrichtlinien von Microsoft anzupassen und Ihre E-Mails ohne Unterbrechungen weiter zu verwenden.