首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Offlineimap:从unix pass (或gpg文件)读取刷新令牌的python代码

Offlineimap:从unix pass (或gpg文件)读取刷新令牌的python代码
EN

Unix & Linux用户
提问于 2022-02-11 00:02:59
回答 1查看 151关注 0票数 -1

我使用脱机映射来组织我的电子邮件,为了使用我的工作帐户,我现在不得不使用OAuth2身份验证。

我成功地获得了一个刷新令牌,因此,如果我相应地设置变量oauth2_refresh_token,那么offlineimap就能工作。但是,我想存储加密的刷新令牌(我使用unix,它将其存储为一个gpg加密文件)。

我无法使用oauth2_refresh_token_eval设置从pass中读取刷新令牌的python代码,或者相应的gpg文件,这可能是因为我完全缺乏python知识。我尝试使用与remotepasseval相同的代码(而后者的代码工作得很好):

代码语言:javascript
复制
def get_pass(account): 
       return check_output("pass email/" + account, shell=True).splitlines()[0]

但我得到了以下错误:

代码语言:javascript
复制
TypeError: a bytes-like object is required, not 'str'

实际上,这里的offlineimaprc模板指定oauth2_refresh_token_eval返回的值“必须是字节”(不管这意味着什么)。

在这种情况下,正确的代码是什么?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-03-06 20:40:36

这对我起了作用:

代码语言:javascript
复制
def get_token(account):
    return check_output("pass " + account, shell=True).decode().splitlines()[0]
票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/690163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档