Re: about getmail-5.6 XOAUTH2 configuration for gmail

Marc Lobelle <[email protected]> Fri, 18 Nov 2022 12:18:22 +0100
Newsgroups gmane.mail.getmail.user
Message-ID <[email protected]>
--------------7KyZAbzTLhnjEReLXkpW1CLI
Content-Type: multipart/alternative;
 boundary="------------dhAWDs00ImE7qEJOMsIdFz7z"

--------------dhAWDs00ImE7qEJOMsIdFz7z
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Hello Stephan,

I managed to get your  getmail-gmail-xoauth-tokens program working with 
microsoft servers requiring oauth2, with the attached variant of your 
program.I ignore who made this change, but it works when called by 
getmail after running once

# getmail-gmail-xoauth-tokens -i myprovider.json

(myprovider must of course be replaced with the actual name of the json 
file)

Apparently the consent must be given by the administrator instead of the 
user. The consent line must thus be removed. Besides a local http server 
must be opened to recover data to be added to the json file.

Of course, in the getmail.rc file, the password line in [retriever] must 
be replaced with

use_xoauth2 = True

password_command = ("getmail-gmail-xoauth-tokens","<full location of 
json file>")

I used it with getmail6 (and puthon3.9) but it said to also work with 
getmail5.6 and python 2.7

Thanks and best regards,

Marc

On 11/3/22 23:09, Stefan Krah wrote:
> Dear Marc,
>
> On Wed, Oct 26, 2022 at 01:10:16PM +0200, Marc Lobelle wrote:
>> Dear Stephan,
>>
>> Thank you for your useful webpage on using OAUTH2 with gmail-5.6.
>>
>>
>> You present the case of gmail. However I would have to apply it to
>> outlook.office365.com instead of mail.google.com.
>>
>> Do you know where could I get  a client _id and client_secret for getmail in
>> this case and  what token_uri auth_uri and auth_provider_x509_cert_url
>> should I use ou where I could find this information ?
> No, I don't have access to Outlook.
>
>
>> Apparently the password command "getmail-gmail-xoauth-tokens" is not
>> specific to gmail and should work for microsoft too. Is this correct ?
> I think this is correct, and you "just" need the information you listed above.
> Many people have asked me about this, but no one has found it and gotten back
> to me.
>
>
> Best regards,
>
> Stefan Krah
>
>
>
--------------dhAWDs00ImE7qEJOMsIdFz7z
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: 8bit

<html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body>
    <p>Hello Stephan,</p>
    <p>I managed to get your&nbsp; getmail-gmail-xoauth-tokens program
      working with microsoft servers requiring oauth2, with the attached
      variant of your program.I ignore who made this change, but it
      works when called by getmail after running once</p>
    <p><font face="Courier"># getmail-gmail-xoauth-tokens -i
        myprovider.json </font><br>
    </p>
    <p>(myprovider must of course be replaced with the actual name of
      the json file)<br>
    </p>
    <p>Apparently the consent must be given by the administrator instead
      of the user. The consent line must thus be removed. Besides a
      local http server must be opened to recover data to be added to
      the json file.</p>
    <p>Of course, in the getmail.rc file, the password line in
      [retriever] must be replaced with</p>
    <p><font face="Courier">use_xoauth2 = True</font></p>
    <p><font face="Courier">password_command =
        (&quot;getmail-gmail-xoauth-tokens&quot;,&quot;&lt;full location of json
        file&gt;&quot;)</font><br>
    </p>
    <p>I used it with getmail6 (and puthon3.9) but it said to also work
      with getmail5.6 and python 2.7<br>
    </p>
    <p>Thanks and best regards,</p>
    <p>Marc<br>
    </p>
    <div class="moz-cite-prefix">On 11/3/22 23:09, Stefan Krah wrote:<br>
    </div>
    <blockquote type="cite" cite="mid:[email protected]">
      <pre class="moz-quote-pre" wrap="">
Dear Marc,

On Wed, Oct 26, 2022 at 01:10:16PM +0200, Marc Lobelle wrote:
</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">Dear Stephan,

Thank you for your useful webpage on using OAUTH2 with gmail-5.6.


You present the case of gmail. However I would have to apply it to
outlook.office365.com instead of mail.google.com.

Do you know where could I get&nbsp; a client _id and client_secret for getmail in
this case and&nbsp; what token_uri auth_uri and auth_provider_x509_cert_url&nbsp;
should I use ou where I could find this information ?
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
No, I don't have access to Outlook.


</pre>
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">Apparently the password command &quot;getmail-gmail-xoauth-tokens&quot; is not
specific to gmail and should work for microsoft too. Is this correct ?
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
I think this is correct, and you &quot;just&quot; need the information you listed above.
Many people have asked me about this, but no one has found it and gotten back
to me.


Best regards,

Stefan Krah



</pre>
    </blockquote>
  </body>
</html>

--------------dhAWDs00ImE7qEJOMsIdFz7z--

--------------7KyZAbzTLhnjEReLXkpW1CLI
Content-Type: text/plain; charset=UTF-8; name="getmail-gmail-xoauth-tokens"
Content-Disposition: attachment; filename="getmail-gmail-xoauth-tokens"
Content-Transfer-Encoding: base64

IyEvdXNyL2Jpbi9lbnYgcHl0aG9uCgojCiMgQ29weXJpZ2h0IDIwMTIgR29vZ2xlIEluYy4KIwoj
IExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSAiTGlj
ZW5zZSIpOwojIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ug
d2l0aCB0aGUgTGljZW5zZS4KIyBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2Ug
YXQKIwogICAgICMgaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wCiMK
IyBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRp
bmcsIHNvZnR3YXJlCiMgZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0
ZWQgb24gYW4gIkFTIElTIiBCQVNJUywKIyBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9O
UyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC4KIyBTZWUgdGhlIExpY2Vu
c2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kCiMg
bGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuCiMKCiMKIyBEZXJpdmVkIGZyb20gb2F1dGgy
LnB5IChodHRwczovL2dpdGh1Yi5jb20vZ29vZ2xlL2dtYWlsLW9hdXRoMi10b29scykuCiMgSGVh
dmlseSBtb2RpZmllZCBhbmQgcmV3cml0dGVuIGJ5IFN0ZWZhbiBLcmFoLgojCiMgV29ya3MgZm9y
IE1pY3Jvc29mdCBPZmZpY2UgMzY1IGluIGFkZGl0aW9uIHRvIEdtYWlsLgoKCmltcG9ydCBvcwpp
bXBvcnQgc3lzCmltcG9ydCBqc29uCmltcG9ydCBhcmdwYXJzZQppbXBvcnQgdGltZQp0cnk6CiAg
ICBpbXBvcnQgdXJsbGliLnJlcXVlc3QgYXMgdXJsbGlicmVxdWVzdAogICAgaW1wb3J0IHVybGxp
Yi5wYXJzZSBhcyB1cmxsaWJwYXJzZQogICAgaW1wb3J0IHVybGxpYi5lcnJvciBhcyB1cmxsaWJl
cnJvcgogICAgZnJvbSBodHRwLnNlcnZlciBpbXBvcnQgSFRUUFNlcnZlciwgQmFzZUhUVFBSZXF1
ZXN0SGFuZGxlcgogICAgdXJscGFyc2UgPSB1cmxsaWJwYXJzZQogICAgZGVmIGNvZGVieXRlcyhi
KTogcmV0dXJuIGIuZW5jb2RlKCJ1dGY4IikKZXhjZXB0OiAjcHkyCiAgICBpbXBvcnQgdXJscGFy
c2UKICAgIGltcG9ydCB1cmxsaWIgYXMgdXJsbGlicGFyc2UKICAgIGltcG9ydCB1cmxsaWIyIGFz
IHVybGxpYmVycm9yCiAgICBmcm9tIEJhc2VIVFRQU2VydmVyIGltcG9ydCBIVFRQU2VydmVyLCBC
YXNlSFRUUFJlcXVlc3RIYW5kbGVyCiAgICB1cmxsaWJyZXF1ZXN0ID0gdXJsbGlicGFyc2UKICAg
IGRlZiBjb2RlYnl0ZXMoYik6IHJldHVybiBiCgojIExvY2FsIHdlYnNlcnZlciBub25zZW5zZSBy
ZXF1aXJlZCB0byByZWNlaXZlIGNvZGUgZnJvbSByZWRpcmVjdApjbGFzcyBPQXV0aFJlZGlyZWN0
SGFuZGxlcihCYXNlSFRUUFJlcXVlc3RIYW5kbGVyKToKICAgIGRlZiBkb19HRVQoc2VsZik6CiAg
ICAgICAgcmVzcG9uc2UgPSB1cmxwYXJzZS51cmxwYXJzZShzZWxmLnBhdGgpCiAgICAgICAgcXVl
cnlfc3RyaW5nID0gdXJscGFyc2UucGFyc2VfcXMocmVzcG9uc2UucXVlcnkpCiAgICAgICAgY29k
ZSA9IHF1ZXJ5X3N0cmluZ1siY29kZSJdWzBdCiAgICAgICAgc2VsZi5zZXJ2ZXIub2F1dGhfY29k
ZSA9IGNvZGUKICAgICAgICBzZWxmLnNlbmRfcmVzcG9uc2UoMjAwKQogICAgICAgIHNlbGYuc2Vu
ZF9oZWFkZXIoIkNvbnRlbnQtdHlwZSIsICJ0ZXh0L2h0bWwiKQogICAgICAgIHNlbGYuZW5kX2hl
YWRlcnMoKQogICAgICAgIHNlbGYud2ZpbGUud3JpdGUoYiI8aHRtbD48aGVhZD48L2hlYWQ+PGJv
ZHk+PGgyPllvdXIganNvbiBmaWxlIGlzIHVwZGF0ZWQuPC9oMj48L2JvZHk+PC9odG1sPiIpCgpj
bGFzcyBPQXV0aFJlZGlyZWN0U2VydmVyKEhUVFBTZXJ2ZXIpOgogICAgZGVmIF9faW5pdF9fKHNl
bGYsIHBvcnQpOgogICAgICAgIHNlbGYub2F1dGhfY29kZSA9IE5vbmUKICAgICAgICBIVFRQU2Vy
dmVyLl9faW5pdF9fKHNlbGYsICgibG9jYWxob3N0IiwgaW50KHBvcnQpKSwgT0F1dGhSZWRpcmVj
dEhhbmRsZXIpCiAgICAgICAgc2VsZi50aW1lb3V0ID0gTm9uZQoKY2xhc3MgT0F1dGgyKG9iamVj
dCk6CgogICAgZGVmIF9faW5pdF9fKHNlbGYsIHRva2VuX2RhdGFfcGF0aCk6CiAgICAgICAgc2Vs
Zi50b2tlbl9kYXRhX3BhdGggPSB0b2tlbl9kYXRhX3BhdGgKCiAgICAgICAgd2l0aCBvcGVuKHNl
bGYudG9rZW5fZGF0YV9wYXRoKSBhcyBmOgogICAgICAgICAgICBzZWxmLmRhdGEgPSBqc29uLmxv
YWQoZikKCiAgICBkZWYgY29weShzZWxmLCAqa2V5cyk6CiAgICAgICAgZGF0YSA9IHt9CiAgICAg
ICAgZm9yIGsgaW4ga2V5czoKICAgICAgICAgICAgZGF0YVtrXSA9IHNlbGYuZGF0YVtrXQogICAg
ICAgIHJldHVybiBkYXRhCgogICAgZGVmIHF1ZXJ5KHNlbGYsIHBhcmFtcyk6CiAgICAgICAgbHN0
ID0gW10KICAgICAgICBmb3IgcGFyYW0gaW4gc29ydGVkKHBhcmFtcy5pdGVtcygpLCBrZXk9bGFt
YmRhIHg6IHhbMF0pOgogICAgICAgICAgICBlc2NhcGVkID0gdXJsbGlicGFyc2UucXVvdGUocGFy
YW1bMV0sIHNhZmU9J34tLl8nKQogICAgICAgICAgICBsc3QuYXBwZW5kKCclcz0lcycgJSAocGFy
YW1bMF0sIGVzY2FwZWQpKQogICAgICAgIHJldHVybiAnJicuam9pbihsc3QpCgogICAgZGVmIGNv
ZGVfdXJsKHNlbGYsIHBvcnQpOgogICAgICAgIHBhcmFtcyA9IHNlbGYuY29weSgnc2NvcGUnLCAn
Y2xpZW50X2lkJykKICAgICAgICBwYXJhbXNbJ3JlZGlyZWN0X3VyaSddID0gJ2h0dHA6Ly9sb2Nh
bGhvc3Q6JyArIHN0cihwb3J0KSArICcvJwogICAgICAgIHBhcmFtc1sncmVzcG9uc2VfdHlwZSdd
ID0gJ2NvZGUnCiAgICAgICAgcGFyYW1zWydhY2Nlc3NfdHlwZSddID0gJ29mZmxpbmUnCiAgICAg
ICAgcmV0dXJuICclcz8lcycgJSAoc2VsZi5kYXRhWydhdXRoX3VyaSddLCBzZWxmLnF1ZXJ5KHBh
cmFtcykpCgogICAgZGVmIGdldF9yZXNwb25zZShzZWxmLCB1cmwsIHBhcmFtcyk6CiAgICAgICAg
dHJ5OgogICAgICAgICAgICBlbmNvZGVkID0gdXJsbGlicGFyc2UudXJsZW5jb2RlKHBhcmFtcyku
ZW5jb2RlKCdhc2NpaScpCiAgICAgICAgICAgIHJlc3BvbnNlID0gdXJsbGlicmVxdWVzdC51cmxv
cGVuKHVybCwgZW5jb2RlZCkucmVhZCgpCiAgICAgICAgICAgIHJldHVybiBqc29uLmxvYWRzKHJl
c3BvbnNlKQogICAgICAgIGV4Y2VwdCB1cmxsaWJlcnJvci5IVFRQRXJyb3IgYXMgaHR0cEVycm9y
OgogICAgICAgICAgICBlcnJvciA9IGh0dHBFcnJvci5yZWFkKCkuZGVjb2RlKCkKICAgICAgICAg
ICAgcHJpbnQoImVycm9yOiAiICsgZXJyb3IpCiAgICAgICAgICAgIHN5cy5leGl0KDEpCgogICAg
ZGVmIHVwZGF0ZV9jb25maWcoc2VsZiwgZCk6CiAgICAgICAgc2VsZi5kYXRhWydhY2Nlc3NfdG9r
ZW4nXSA9IGRbJ2FjY2Vzc190b2tlbiddCiAgICAgICAgc2VsZi5kYXRhWydleHBpcmVzX2F0J10g
PSB0aW1lLnRpbWUoKSArIGRbJ2V4cGlyZXNfaW4nXSAtIDEwMAoKICAgICAgICByZWZyZXNoX3Rv
a2VuID0gZC5nZXQoJ3JlZnJlc2hfdG9rZW4nKQogICAgICAgIGlmIHJlZnJlc2hfdG9rZW4gaXMg
bm90IE5vbmU6CiAgICAgICAgICAgIHNlbGYuZGF0YVsncmVmcmVzaF90b2tlbiddID0gcmVmcmVz
aF90b2tlbgoKICAgICAgICB3aXRoIG9wZW4oc2VsZi50b2tlbl9kYXRhX3BhdGgsICJ3IikgYXMg
ZjoKICAgICAgICAgICAganNvbi5kdW1wKHNlbGYuZGF0YSwgZikKCiAgICBkZWYgaW5pdF90b2tl
bnMoc2VsZiwgY29kZSwgcG9ydCk6CiAgICAgICAgcGFyYW1zID0gc2VsZi5jb3B5KCd1c2VyJywg
J2NsaWVudF9pZCcsICdjbGllbnRfc2VjcmV0JykKICAgICAgICBwYXJhbXNbJ3JlZGlyZWN0X3Vy
aSddID0gJ2h0dHA6Ly9sb2NhbGhvc3Q6JyArIHN0cihwb3J0KSArICcvJwogICAgICAgIHBhcmFt
c1snY29kZSddID0gY29kZQogICAgICAgIHBhcmFtc1snZ3JhbnRfdHlwZSddID0gJ2F1dGhvcml6
YXRpb25fY29kZScKCiAgICAgICAgZCA9IHNlbGYuZ2V0X3Jlc3BvbnNlKHNlbGYuZGF0YVsndG9r
ZW5fdXJpJ10sIHBhcmFtcykKICAgICAgICBzZWxmLnVwZGF0ZV9jb25maWcoZCkKCiAgICBkZWYg
cmVmcmVzaF90b2tlbnMoc2VsZik6CiAgICAgICAgcGFyYW1zID0gc2VsZi5jb3B5KCdjbGllbnRf
aWQnLCAnY2xpZW50X3NlY3JldCcsICdyZWZyZXNoX3Rva2VuJykKICAgICAgICBwYXJhbXNbJ2dy
YW50X3R5cGUnXSA9ICdyZWZyZXNoX3Rva2VuJwoKICAgICAgICBkID0gc2VsZi5nZXRfcmVzcG9u
c2Uoc2VsZi5kYXRhWyd0b2tlbl91cmknXSwgcGFyYW1zKQogICAgICAgIHNlbGYudXBkYXRlX2Nv
bmZpZyhkKQoKICAgIGRlZiB0b2tlbihzZWxmKToKICAgICAgICBpZiB0aW1lLnRpbWUoKSA+PSBz
ZWxmLmRhdGEuZ2V0KCdleHBpcmVzX2F0Jyk6CiAgICAgICAgICAgIHNlbGYucmVmcmVzaF90b2tl
bnMoKQoKICAgICAgICByZXR1cm4gc2VsZi5kYXRhWydhY2Nlc3NfdG9rZW4nXQoKCmlmIF9fbmFt
ZV9fID09ICdfX21haW5fXyc6CiAgICBwYXJzZXIgPSBhcmdwYXJzZS5Bcmd1bWVudFBhcnNlcigp
CiAgICBwYXJzZXIuYWRkX2FyZ3VtZW50KCItaSIsICItLWluaXQiLCBhY3Rpb249InN0b3JlX3Ry
dWUiLCBkZWZhdWx0PUZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICBoZWxwPSJpbml0aWFs
aXplIGFjY2VzcyBhbmQgcmVmcmVzaCB0b2tlbnMiKQogICAgcGFyc2VyLmFkZF9hcmd1bWVudCgn
dG9rZW5maWxlJywgbWV0YXZhcj0nPHRva2VuIGRhdGEgZmlsZSBwYXRoPicsCiAgICAgICAgICAg
ICAgICAgICAgICAgIGhlbHA9ImxvY2F0aW9uIG9mIHRoZSB0b2tlbiBkYXRhIGZpbGUiKQogICAg
cGFyc2VyLmFkZF9hcmd1bWVudCgiLXAiLCAiLS1wb3J0IiwgZGVmYXVsdD0iODA4MyIsCiAgICAg
ICAgICAgICAgICAgICAgICAgIGhlbHA9ImxvY2FsIHBvcnQgdG8gdXNlIGZvciByZWNlaXZpbmcg
b2F1dGgyIHJlZGlyZWN0IikKCiAgICBhcmdzID0gcGFyc2VyLnBhcnNlX2FyZ3MoKQogICAgYXV0
aCA9IE9BdXRoMihhcmdzLnRva2VuZmlsZSkKCiAgICBpZiBhcmdzLmluaXQ6CiAgICAgICAgcHJp
bnQoIlZpc2l0IHRoaXMgdXJsIHRvIG9idGFpbiBhIHZlcmlmaWNhdGlvbiBjb2RlOiIpCiAgICAg
ICAgcHJpbnQoIiAgICAlc1xuIiAlIGF1dGguY29kZV91cmwoYXJncy5wb3J0KSkKICAgICAgICBv
YXV0aGQgPSBPQXV0aFJlZGlyZWN0U2VydmVyKGFyZ3MucG9ydCkKICAgICAgICB0cnk6CiAgICAg
ICAgICAgIG9hdXRoZC5oYW5kbGVfcmVxdWVzdCgpCiAgICAgICAgICAgIGF1dGguaW5pdF90b2tl
bnMob2F1dGhkLm9hdXRoX2NvZGUsIGFyZ3MucG9ydCkKICAgICAgICBmaW5hbGx5OgogICAgICAg
ICAgICBvYXV0aGQuc2VydmVyX2Nsb3NlKCkKICAgICAgICBwcmludCgiXG5hY2Nlc3MgdG9rZW5c
biIpCgogICAgcHJpbnQoIiVzIiAlIGF1dGgudG9rZW4oKSkKCiAgICBzeXMuZXhpdCgwKQoK


--------------7KyZAbzTLhnjEReLXkpW1CLI
Content-Type: text/plain; charset=us-ascii

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
--------------7KyZAbzTLhnjEReLXkpW1CLI--