Konfiguration in GMAIL (Google) für SMTP-Email-Versand via OAuth2
Problemstellung
Der SMTP-Email-Versand ist bei GMAIL ohne Verwendung von OAuth2 nicht mehr möglich.
Was ist OAuth2?
OAuth 2.0 ist ein Autorisierungsprotokoll, das es Anwendungen ermöglicht, im Namen eines Benutzers sicher auf Ressourcen zuzugreifen, ohne dessen Passwort preiszugeben.
Einrichtung / Konfiguration in GMAIL
- Melden Sie sich in Ihrem Google API-Entwickler Portal an, welches Sie für den SMTP-Email-Versand einrichten möchten:
https://console.developers.google.com/projectselector/apis/credentials - Klicken Sie auf "Projekt auswählen"
- Klicken Sie dann auf "Neues Projekt"
- Geben Sie anschließend einen Projektnamen z.B. SMTPviaOAuh2 ein. Achten Sie darauf, keine Sonderzeichen und kein Leerzeichen zu verwenden.
Drücken Sie dann auf "Erstellen". Sie werden im Anschluss automatisch zu den "Anmeldedaten" weitergeleitet. - Verlassen Sie das Menü "Anmeldedaten" und wechseln zu "OAuth-Zustimmungsbildschirm" und wählen dort als "User Type" den Wert "Extern" aus.
Klicken Sie im Anschluss auf "Erstellen": - Geben Sie einen Anwendungsnamen z.B: AG-VIP SQL sowie eine E-Mail Adresse ein, an die man sich bei Fragen zur Einwilligung wenden kann.
- Scrollen Sie ganz nach unten zu "Kontaktdaten des Entwicklers" und tragen dort eine E-Mail Adresse ein, an die Informationen zu Änderungen am Projekt geschickt werden sollen. Anschließend drücken Sie auf "speichern und fortfahren":
- Bei "Bereiche" drücken Sie auf den Schalter "Bereiche hinzufügen oder entfernen":
- In der sich nun rechts aufgeklappten Liste, geben Sie unten bei "Bereiche manuell hinzufügen" folgende URL ein: https://mail.google.com und drücken anschließend auf "zu Tabelle hinzufügen". Dadurch erscheint in der Liste dieser neue Eintrag. Der Haken sollte aktiv sein.
Zum Abschluss noch den Schalter "Aktualisieren" drücken: - Zurück bei "Bereiche" drücken Sie ganz unten den Schalter "speichern und fortfahren" (Dort ist nun auch bei "Ihre eingeschränkten Bereiche" der gerade aktivierte Bereich zu sehen):
- Bei "Testnutzer" müssen nun E-Mail Konten angegeben werden, welche diese SMTP-OAuth2 Freigabe nutzen dürfen.
Diese Angabe ist nur notwendig, solange diese Konfiguration im "Testmodus" also im nicht "veröffentlichten" Modus ist.
Drücken Sie zum Hinzufügen von E-Mail Konten auf den Schalter "+ Add Users".
Nachdem Sie alle eingetragen haben drücken Sie unten auf "speichern und fortfahren": - Im letzten Abschnitt "Fazit" können Sie nochmal alle vorgenommenen Einstellungen überblicken.
Scrollen Sie an das Ende und drücken auf den Schalter "Zurück zum Dashboard". - Im Dashboard finden Sie dann auch den Schalter, mit dem Sie vom Test-Modus in den Veröffentlichten-Modus wechseln können.
Theoretisch kann die Einstellung im Test-Modus bleiben mit der Einschränkung, dass nur die aufgeführten Test-Benutzer diese nutzen können. - Klicken Sie nun links auf "Anmeldedaten" und anschließend oben auf "+ Anmeldedaten erstellen":
- Wählen Sie die 2. Option "OAuth-Client-ID" aus:
- Wählen Sie als Anwendungstyp "Webandwendung" aus und tragen einen Namen wie z.B. GMAILConnectorAGVIPSQL ein:
- Scrollen Sie dann ganz nach unten und fügen Sie folgende URI bei "Autorisierte Weiterleitungs-URIs" ein:
https://oauth-redirect.googleusercontent.com/r/SMTPviaOAuth2
Sollten Sie einen anderen Projektnamen als SMTPviaOAuth2 gewählt haben (wie im Punkt 4. beschrieben), müssen Sie diesen stattdessen hier hinterlegen: - Kopieren Sie nun die Client-ID und den Clientschlüssel in eine Textdatei:
Einrichtung / Konfiguration in AG-VIP SQL
- Importieren Sie das Makroinclude "SMTP OAuth2" und fügen dort die Client-ID bei "Client_ID" und den Clientschlüssel bei "Client_Secret" ein.
Des Weiteren setzen Sie noch in der Variable strProvider den Wert GMAIL und bei "Project_Name" Ihren Projektnamen SMTPviaOAuth2: - Importieren Sie das Hilfsmittel mit "OAuth2" im Namen und klicken im Reiter "Makro" auf den unteren Schalter "Ändern..."
- Hier tragen Sie bei Host "smtp.gmail.com" ein und bei Port den Wert "465".
Zusätzlich geben Sie noch die E-Mail Adresse zum GMAIL-Konto bei "Username" an.
Das "Password" bleibt leer, da automatisch der AccessToken übermittelt wird. - Zum Schluss wird noch die LoginMethode mit dem Wert "6" (OAuth2) und der Connectiontyp mit dem Wert "1" (SSL) gesetzt
Erstanmeldung
Beim ersten Aufruf des Hilfsmittels wird automatisch eine Authentifizierung durchgeführt, bei der Sie sich einmalig mit Ihrem Google Konto anmelden müssen.
Wenn die Konfiguration im Test-Modus läuft, wird Ihnen jetzt noch zusätzlich eine Warnung angzeigt, welche Sie mit "Weiter" bestätigen.
Als nächstes bestätigen Sie den Zugriff auf das Google-Konto, indem Sie auf "Weiter" drücken
Nun wird ihnen eine Seite mit einer Fehlermeldung angezeigt, welche jedoch normal ist.
Kopieren Sie aus der sich geöffneten Seite die komplette URL und fügen diese dann in das sich in AG-VIP SQL geöffnete Pop-Up Fenster ein.
AG-VIP SQL wird daraus den Authcode ermitteln und damit wiederum eine erneute automatische Anfrage an GMAIL auslösen, um den Refresh_Token zu erhalten:
Wenn alles geklappt hat, wird in AG-VIP SQL eine Meldung angezeigt mit dem Hinweis, dass der Refresh-Token in die Zwischenablage kopiert wurde.
Im MakroInclude "SMTP OAuth2" fügen Sie diesen bei der Variable "Refresh_Token" ein:
Dadurch ist die OAuth2 Konfiguration / Einrichtung abgeschlossen. Sie können ab sofort Emails via SMTP über das Google GMAIL Konto versenden.
Hinweis:
Sollten aus irgendwelchen Gründen der Refresh_Token nicht in der Zwischenablage sein, weil Sie z.B. ausversehen die Zwischenablage mit etwas anderem überschrieben haben, bevor Sie diesen in AG-VIP SQL übernommen haben, müssen Sie zuerst die Verbindung zu der Freigabe wieder entfernen, bevor Sie die Erstanmeldung erneut durchführen können.
Dazu wechseln Sie in Ihr Google-Konto
Wechseln in den Bereich "Sicherheit" und scrollen etwas runter bis zu dem Bereich "Ihre Verbindungen zu Drittanbieter-Apps und -diensten" und klicken dann dort auf "AG-VIP SQL":
Dort auf die untere Auswahl "Alle Verbindungen mit AG-VIP SQL löschen" klicken:
Anschließend die Trennung bestätigen:
Erst jetzt können Sie wieder beim Punkt "Erstanmeldung" beginnen und einen neuen Refresh-Token erhalten.
Angehängte Dateien: