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 être compatibles avec les autorisations via le protocole standard OAuth 2.0.
Protocole
Les protocoles IMAP, POP et SMTP utilisent la norme SASL (Simple Authentication and Security Layer) standard, qui exploite les commandes natives AUTHENTICATE
, POP AUTH
et SMTP AUTH
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 XOAUTH2 SASL décrit le mécanisme SASL XOAUTH2 de manière détaillée. Des bibliothèques et exemples ayant implémenté le protocole sont également disponibles.
Les connexions entrantes vers le serveur IMAP à l'adresse imap.gmail.com:993
et le serveur POP à l'adresse pop.gmail.com:995
nécessitent le protocole SSL. Le serveur SMTP sortant smtp.gmail.com
est compatible avec le protocole 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 de Gmail sont limitées à environ 24 heures. Si la session a été authentifiée à l'aide d'identifiants OAuth, la durée de validité du jeton d'accès utilisé est limitée (généralement une heure). Dans ce contexte, une session correspond à une connexion TCP continue.
Une fois le délai écoulé et la session expirée, Gmail met fin à la connexion et affiche un message indiquant que la session a expiré. Après cela, le client peut 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 datant de plus d'une heure, il peut ne pas être valide).
Bibliothèques et exemples
Pour plus de commodité, l'accès à la messagerie via IMAP ou POP et l'envoi de messages avec SMTP s'effectuent souvent à l'aide de bibliothèques IMAP et SMTP existantes. Tant que ces bibliothèques sont compatibles avec SASL (Simple Authentication and Security Layer), elles devraient être compatibles avec le mécanisme SASL XOAUTH2 pris en charge par Gmail.
Outre la documentation sur le protocole SASL XOAUTH2, vous pouvez également lire l'article Utilisation d'OAuth 2.0 pour accéder aux API Google pour en savoir plus sur la mise en œuvre d'un client OAuth 2.0.
La page Bibliothèques et exemples fournit des exemples de code dans plusieurs langages courants à l'aide du mécanisme SASL XOAUTH2 avec IMAP ou SMTP.