Für Clients, die keine Gmail-Clients sind, unterstützt Gmail die Standardprotokolle IMAP, POP und SMTP. Die Gmail-IMAP-, POP- und SMTP-Server wurden erweitert, um die Autorisierung über das branchenübliche OAuth 2.0-Protokoll zu unterstützen.
Protokoll
IMAP, POP und SMTP verwenden die Standard-Simple Authentication and Security Layer (SASL) und die integrierten nativen IMAP-AUTHENTICATE
-, POP-AUTH
- und SMTP-AUTH
-Befehle, um Nutzer zu authentifizieren. Mit dem SASL XOAUTH2-Mechanismus können Clients OAuth 2.0-Anmeldedaten für die Authentifizierung angeben. In der Dokumentation zum SASL XOAUTH2-Protokoll wird der SASL XOAUTH2-Mechanismus ausführlich beschrieben. Außerdem sind Bibliotheken und Beispiele verfügbar, in denen das Protokoll implementiert ist.
Für eingehende Verbindungen zum IMAP-Server unter imap.gmail.com:993
und zum POP-Server unter pop.gmail.com:995
ist SSL erforderlich. Der ausgehende SMTP-Server smtp.gmail.com
unterstützt TLS. Wenn Ihr Client mit Klartext beginnt, verwenden Sie vor dem Ausführen des Befehls STARTTLS den Port 465
(für SSL) oder den Port 587
(für TLS).
Beschränkungen der Sitzungsdauer
POP-Sitzungen in Gmail sind auf etwa 7 Tage begrenzt. Gmail-IMAP-Sitzungen sind auf etwa 24 Stunden begrenzt. Wenn die Sitzung mit OAuth-Anmeldedaten authentifiziert wurde, ist sie auf die Gültigkeitsdauer des verwendeten Zugriffstokens beschränkt (normalerweise 1 Stunde). Eine Sitzung in diesem Kontext ist eine kontinuierliche TCP-Verbindung.
Wenn die Zeit abgelaufen ist und die Sitzung abgelaufen ist, schließt Gmail die Verbindung mit einer Meldung, dass die Sitzung abgelaufen ist. Danach kann der Client wieder eine Verbindung herstellen, sich noch einmal authentifizieren und fortfahren. Wenn du OAuth verwendest, achte darauf, dass das verwendete Zugriffstoken gültig ist. Wenn du versuchst, ein Zugriffstoken zu verwenden, das älter als eine Stunde ist, ist es möglicherweise ungültig.
Bibliotheken und Beispiele
Der Zugriff auf E-Mails über IMAP oder POP und das Senden von E-Mails über SMTP erfolgt aus praktischen Gründen häufig mithilfe vorhandener IMAP- und SMTP-Bibliotheken. Solange diese Bibliotheken die Simple Authentication and Security Layer (SASL) unterstützen, sollten sie mit dem von Gmail unterstützten SASL XOAUTH2-Mechanismus kompatibel sein.
Zusätzlich zur Protokolldokumentation für SASL XOAUTH2 finden Sie unter Mit OAuth 2.0 auf Google APIs zugreifen weitere Informationen zur Implementierung eines OAuth 2.0-Clients.
Auf der Seite Bibliotheken und Beispiele finden Sie Codebeispiele in verschiedenen gängigen Sprachen, die den SASL XOAUTH2-Mechanismus mit IMAP oder SMTP verwenden.