Per i client non Gmail, Gmail supporta i protocolli standard IMAP, POP e SMTP. I server IMAP, POP e SMTP di Gmail sono stati estesi per supportare l'autorizzazione tramite il protocollo OAuth 2.0, standard di settore.
Protocollo
IMAP, POP e SMTP utilizzano il protocollo SASL (Simple Authentication and Security Layer) standard, utilizzando i comandi nativi IMAP AUTHENTICATE
, POP AUTH
e SMTP AUTH
, per autenticare gli utenti. Il meccanismo SASL XOAUTH2 consente ai client di fornire credenziali OAuth 2.0 per l'autenticazione. La documentazione sul protocollo SASL XOAUTH2 descrive dettagliatamente il meccanismo SASL XOAUTH2. Inoltre, sono disponibili librerie e campioni che hanno implementato il protocollo.
Le connessioni in entrata al server IMAP all'indirizzo imap.gmail.com:993
e al server POP all'indirizzo pop.gmail.com:995
richiedono SSL. Il server SMTP in uscita, smtp.gmail.com
, supporta TLS. Se il client inizia con testo normale, prima di inviare il comando STARTTLS utilizza la porta 465
(per SSL) o la porta 587
(per TLS).
Limiti di lunghezza delle sessioni
Le sessioni POP di Gmail sono limitate a circa 7 giorni. Le sessioni IMAP di Gmail sono limitate a circa 24 ore. Se la sessione è stata autenticata utilizzando credenziali OAuth, è limitata a circa il periodo di validità del token di accesso utilizzato (di solito un'ora). Una sessione in questo contesto è una connessione TCP continua.
Allo scadere del tempo e della sessione, Gmail chiude la connessione con un messaggio che informa che la sessione è scaduta. Dopodiché, il client potrà riconnettersi, eseguire nuovamente l'autenticazione e continuare. Se utilizzi OAuth, assicurati che il token di accesso utilizzato sia valido. Se provi a usare un token di accesso risalente a più di un'ora, potrebbe non essere valido.
Librerie ed esempi
L'accesso alla posta tramite IMAP o POP e l'invio della posta tramite SMTP vengono spesso eseguiti utilizzando le librerie IMAP e SMTP esistenti per comodità. Se queste librerie supportano SASL (Simple Authentication and Security Layer), devono essere compatibili con il meccanismo SASL XOAUTH2 supportato da Gmail.
Oltre alla documentazione sul protocollo SASL XOAUTH2, puoi leggere anche la pagina Utilizzo di OAuth 2.0 per accedere alle API di Google per ulteriori informazioni sull'implementazione di un client OAuth 2.0.
La pagina Librerie ed esempi fornisce esempi di codice in diversi linguaggi popolari utilizzando il meccanismo SASL XOAUTH2 con IMAP o SMTP.