我正在尝试适应Google在5.30.22更改smtp政策,禁止3P应用程序访问gmail帐户。我想给我的网络项目托管在heroku访问能够以编程方式登录到我的gmail帐户。我检查了一些帖子,包括这一个,但我只是没有看到我的设置所期望的。
在那个gmail帐户中,我进入Security->不太安全的应用程序访问并确认它实际上不再可用。我看见什么在安全似乎相关。
然后,我尝试Data &隐私→来自您使用的应用程序和服务的数据->应用程序,服务→具有帐户访问权限的第三方应用。点击它会把我带到应用程序访问您的帐户,我看到你没有给任何应用程序或服务访问您的谷歌帐户的权限。了解更多(<——链接到https://support.google.com/accounts/answer/3466521?hl=en)。这个链接把我带到了管理您的帐户权限->管理第三方应用;访问您的帐户的服务。
然后转到查看第三方可以访问的内容。步骤如下:- 进入你的Google帐户的安全部分
- 在"具有帐户访问的第三方应用程序"下,选择"管理第三方访问"。
- 选择您想要评论的应用程序或服务。
…但在步骤#2中,没有第三方应用程序可以访问或管理第三方访问链接/部分在我的安全页面。
我如何添加我正在工作的应用程序到该列表?
-我看到https://support.google.com/accounts/answer/112802?hl=en&ref_topic=7188760,这是"使用您的谷歌帐户登录到其他应用程序或服务"。这是我需要的吗?它说:
- 选择你信任的应用或服务
- 在登录页面,选择"sign in with Google"、"Log in with Google"或"Join with Google"。
- 我去我的应用程序(托管在heroku上),但"登录与谷歌";
由于不太安全的应用程序被删除&你不能使用用户的登录名和密码来访问谷歌的smtp服务器。
你有两个选项。
- 切换到使用gmail api并使用Oauth2授权您的应用程序并存储刷新令牌。请确保将应用程序设置为生产状态,否则刷新令牌将在7天后过期。
- 使用xoauth2与您的请求smtp服务器。然后需要使用Oauth2对应用程序进行授权并存储刷新令牌。请确保将应用程序设置为生产状态,否则刷新令牌将在7天后过期。
- 如果你在该帐户上启用了2fa,那么你可以创建一个应用程序密码。一旦你创建了这个密码,你就可以用它来代替你代码中的实际密码。