我可以使用 Gmail API 访问同一域中其他用户的邮件列表和设置吗?
Posted
技术标签:
【中文标题】我可以使用 Gmail API 访问同一域中其他用户的邮件列表和设置吗?【英文标题】:Can I access mail list and settings of other user in same domain using Gmail API? 【发布时间】:2020-02-13 20:07:47 【问题描述】:我正在编写一个自动化 CLI 脚本代码,用于读取 G Suite 用户别名及其 Gmail 发送方式设置。此脚本不能进行用户交互。
我使用超级管理员用户帐户设置所有内容。使用超级管理员用户设置服务帐户并设置域范围的委派。我可以使用 Admin SDK API 列出域中的用户,并且可以获取超级管理员用户的 Gmail 设置。但是,如果我尝试读取域中其他普通用户的 Gmail 设置,则会失败并出现此错误。
"error":
"errors": [
"domain": "global",
"reason": "forbidden",
"message": "Delegation denied for user@email.com"
],
"code": 403,
"message": "Delegation denied for user@email.com"
它允许使用 Gmail API 读取同一 G Suite 域电子邮件设置中的其他用户吗?还是总是被禁止?我应该怎么做才能阅读他们的电子邮件设置?
【问题讨论】:
【参考方案1】:您正尝试使用您的超级管理员委派凭据访问其他用户的设置,而该凭据没有这种访问权限。您无法使用您的超级管理员凭据检索其他用户设置。
您需要为每个用户生成委托凭据,并使用这些凭据来检索每个用户的设置信息。
【讨论】:
以上是关于我可以使用 Gmail API 访问同一域中其他用户的邮件列表和设置吗?的主要内容,如果未能解决你的问题,请参考以下文章
使用 IMAP(javamail API)从 gmail 访问电子邮件
如何在 Nodejs 中使用 gmail api 在同一对话中回复电子邮件
访问未授予或过期 GMAIL API 和 Oauth2 / 如何使用 GMAIL API 和 GSuite 域设置电子邮件签名