aerc/doc/aerc-imap.5.scd
Frode Aannevik b0eaf5191c Support imaps with oauthbearer authentication (Gmail)
imaps+oauthbearer://user:token@host?token_endpoint=...

 - the config Source password is used as access token if
   no token_endpoint parameter is set
 - the config Source password is used as refresh token if
   token_endpoint parameter is set, and used to exchange
   with an access token

The implementation has only been tested with Gmail.

    source = imaps+oauthbearer://{username}:{refersh_token}@imap.gmail.com:993? \
    client_id=XX&\
    client_secret=XX&\
    token_endpoint=https%3A%2F%2Faccounts.google.com%2Fo%2Foauth2%2Ftoken

client credentials created with

    https://console.developers.google.com/apis/credentials

refresh token created with

    https://github.com/google/gmail-oauth2-tools/blob/master/python/oauth2.py

rel: https://todo.sr.ht/~sircmpwn/aerc2/42
2019-07-11 19:36:14 -04:00

73 lines
1.6 KiB
Markdown

aerc-imap(5)
# NAME
aerc-imap - IMAP configuration for *aerc*(1)
# SYNOPSIS
aerc implements the IMAP protocol as specified by RFC 3501, with the following
IMAP extensions:
- IDLE (RFC 2177)
# CONFIGURATION
IMAP configuration may be done interactively with the :new-account command.
In accounts.conf (see *aerc-config*(5)), the following IMAP-specific options are
available:
*source*
imap[s][+insecure|+oauthbearer]://username[:password]@hostname[:port]?[:oauth2_params]
Remember that all fields must be URL encoded. The "@" symbol, when URL
encoded, is *%40*.
The meaning of the scheme component is:
*imap://*:
IMAP with STARTTLS
*imap+insecure://*:
IMAP without STARTTLS
*imaps*:
IMAP with TLS/SSL
*imaps+oauthbearer://*
IMAP with TLS/SSL using OAUTHBEARER Authentication
*oauth2_params:*
If specified, the configured password is used as an refresh token that
is exhanged with an access token
- token_endpoint (required)
- client_id (optional)
- client_secret (optional)
- scope (optional)
Example:
imaps+oauthbearer://...?token_endpoint=https://...&client_id=
*source-cred-cmd*
Specifies the command to run to get the password for the IMAP
account. This command will be run using `sh -c [command]`. If a
password is specified in the *source* option, the password will
take precedence over this command.
Example:
pass hostname/username
# SEE ALSO
*aerc*(1) *aerc-config*(5) *aerc-smtp*(5)
# AUTHORS
Maintained by Drew DeVault <sir@cmpwn.com>, who is assisted by other open
source contributors. For more information about aerc development, see
https://git.sr.ht/~sircmpwn/aerc.