IMAP, POP et SMTP

Pour les clients autres que Gmail, Gmail est compatible avec les protocoles standards IMAP, POP et SMTP. Les serveurs IMAP, POP et SMTP de Gmail ont été étendus pour prendre en charge l'autorisation via le protocole OAuth 2.0 standard du secteur.

Protocole

IMAP, POP et SMTP utilisent la Simple Authentication and Security Layer (SASL) standard, avec les commandes IMAP AUTHENTICATE, POP AUTH et SMTP AUTH natives intégrées, pour authentifier les utilisateurs. Le mécanisme SASL XOAUTH2 permet aux clients de fournir des identifiants OAuth 2.0 pour l'authentification. La documentation du protocole SASL XOAUTH2 décrit le mécanisme SASL XOAUTH2 en détail. Des bibliothèques et des exemples qui ont implémenté le protocole sont disponibles.

Les connexions entrantes au serveur IMAP sur imap.gmail.com:993 et au serveur POP sur pop.gmail.com:995 nécessitent SSL. Le serveur SMTP sortant, smtp.gmail.com, est compatible avec TLS. Si votre client commence par du texte brut, avant d'émettre la commande STARTTLS, utilisez le port 465 (pour SSL) ou le port 587 (pour TLS).

Limites de durée des sessions

Les sessions POP Gmail sont limitées à environ sept jours. Les sessions IMAP Gmail sont limitées à environ 24 heures. Si la session a été authentifiée à l'aide d'identifiants OAuth, elle est limitée à la période de validité du jeton d'accès utilisé (généralement une heure). Dans ce contexte, une session est une connexion TCP continue.

Lorsque le délai est écoulé et que la session expire, Gmail ferme la connexion et affiche un message indiquant que la session a expiré. Le client peut ensuite se reconnecter, s'authentifier à nouveau et continuer. Si vous utilisez OAuth, assurez-vous que le jeton d'accès utilisé est valide (si vous essayez d'utiliser un jeton d'accès de plus d'une heure, il est possible qu'il ne soit plus valide).

Bibliothèques et exemples

Pour accéder aux e-mails à l'aide d'IMAP ou de POP, et pour envoyer des e-mails à l'aide de SMTP, il est souvent plus pratique d'utiliser les bibliothèques IMAP et SMTP existantes. Tant que ces bibliothèques sont compatibles avec la Simple Authentication and Security Layer (SASL), elles devraient être compatibles avec le mécanisme SASL XOAUTH2 pris en charge par Gmail.

En plus de la documentation sur le protocole SASL XOAUTH2, vous pouvez également consulter Utiliser OAuth 2.0 pour accéder aux API Google pour en savoir plus sur l'implémentation d'un client OAuth 2.0.

La page Bibliothèques et exemples fournit des exemples de code dans différents langages courants utilisant le mécanisme SASL XOAUTH2 avec IMAP ou SMTP.