Bei diesem Modul handelt es sich um ein Plugin, das mit dem PHPMailer-SMTP-Modul zusammenarbeitet und die Authentifizierung bei Google Workspace Gmail über OAuth2 ermöglicht. Es ist inspiriert von phpmailer_oauth2, geschrieben von Ian McLean (imclean). Hätte ich Ians Modul nicht gefunden, wäre es unwahrscheinlich, dass ich versucht hätte, an einem für Google Gmail zu arbeiten.
WICHTIG: Für dieses Modul ist das Modul Google league/oauth2-google erforderlich, verfügbar unter https://oauth2-client.thephpleague.com/providers/league/. Es sollte in Ihrem Anbieterverzeichnis installiert werden.
Bevor Sie dieses Modul verwenden, müssen Sie bei Google eine Client-ID und ein Client-Geheimnis einrichten. Hier erfahren Sie, wie Sie dies ab April 2024 tun und dieses Modul konfigurieren:
Melden Sie sich bei Ihrem Google Workspace-Konto an.
Gehen Sie zu https://console.cloud.google.com/.
Oben links auf der Seite sollte sich neben „Google Cloud“ ein Dropdown-Menü für Projekte befinden. Klicken Sie darauf.
Wenn im Dialogfeld „Ressource auswählen“ keine Projekte aufgeführt sind, erstellen Sie eines und wählen Sie es dann als Ihr aktuelles Projekt aus.
Klicken Sie auf „APIs & Dienste“, eine große Schaltfläche irgendwo in der Mitte der Seite.
Klicken Sie im Menü, das auf der linken Seite der Seite erscheint, auf „Anmeldeinformationen“.
Klicken Sie auf Anmeldeinformationen erstellen und wählen Sie dann „OAuth-Client-ID“.
Wählen Sie „Webanwendung“ als Anwendungstyp.
Benennen Sie Ihre Anmeldeinformationen und notieren Sie Ihre Client-ID und Ihr Client-Geheimnis. Sie müssen diese Werte unten in (11) eingeben.
Sobald Sie dieses Modul installiert haben, können Sie den „Autorisierten Weiterleitungs-URI“ für Ihre Site finden, indem Sie zu Konfiguration->System->PHPMailer Gmail OAuth2 (/admin/config/system/phpmailer-gmail-oauth2) gehen. Rufen Sie diese Seite in einem separaten Browserfenster auf. Sie finden den von Google benötigten Weiterleitungs-URI oben auf der Seite. Kopieren Sie den URI und geben Sie ihn in das Feld „Autorisierte Weiterleitungs-URIs“ auf der Google-Seite ein. Drücken Sie Speichern.
Zurück auf der Drupal-Seite geben Sie Ihre Google-E-Mail-Adresse, Client-ID und Client-Geheimnis ein und klicken Sie dann auf die Schaltfläche „Konfiguration speichern“.
Nachdem Sie Ihre Google-Anmeldeinformationen gespeichert haben, wird die Schaltfläche „Aktualisierungs-Token abrufen“ angezeigt. Klicken Sie auf diese Schaltfläche, um von Ihrer Website zu Google weiterzuleiten, und folgen Sie dann den Anweisungen auf Google.
Wenn Sie fertig sind, sollte Google ein Aktualisierungstoken ausstellen und zur Drupal-Seite zurückleiten, die Sie gerade verlassen haben. Wenn alles funktioniert hat, haben Sie Ihr Refresh-Token und können E-Mails senden.
Wenn beim Klicken auf die Schaltfläche „Aktualisierungs-Token abrufen“ Probleme bei der Weiterleitung zu Google auftreten, müssen Sie möglicherweise Folgendes zu Ihrer Datei „settings.php“ hinzufügen:
$ settings [ ' trusted_host_patterns ' ] = [ ' ^accounts.google.com$ ' ];
If you have other trusted_host_patterns, add '^accounts.google.com$' to the array.
Ein paar andere Setup-Elemente:
Vergessen Sie nicht, zum Mail-Modul zu gehen und „PHPMailer SMTP“ als E-Mail-Formatierer und Absender auszuwählen (/admin/config/system/mailsystem).
Wenn Sie über andere Module wie Commerce 2 verfügen, die E-Mails senden, müssen Sie diese möglicherweise unten auf derselben Seite in (1) oben hinzufügen.
Wählen Sie auf der Seite mit den SMTP-Transporteinstellungen von PHPMailer „Gmail OAuth2“ als Ihre SMTP-Authentifizierungsmethode (/admin/config/system/phpmailer-smtp). Stellen Sie den SMTP-Port auf 587 ein und wählen Sie TLS als sicheres Protokoll.
Sie können den Dienst „Testkonfiguration“ auf der Seite mit den SMTP-Transporteinstellungen von PHPMailer verwenden, um zu überprüfen, ob die neue Konfiguration funktioniert, indem Sie eine Test-E-Mail senden.