Heroku Login Multi-Factor Authentication mfa_required 错误(不打开浏览器)

Posted

技术标签:

【中文标题】Heroku Login Multi-Factor Authentication mfa_required 错误(不打开浏览器)【英文标题】:Heroku Login Multi-Factor Authentication mfa_required error (without opening a browser) 【发布时间】:2021-08-14 20:23:12 【问题描述】:

在使用 Heroku 多重身份验证时,是否可以通过控制台在不打开浏览器的情况下登录?

ubuntu:~/environment $ heroku login -i
heroku: Enter your login credentials
Email [hello@gmail.com]: 
Password: ****************
 ›   Error: Your account has MFA enabled; API requests using basic authentication with email and password are not supported. Please 
 ›   generate an authorization token for API access. 
 ›
 ›   Error ID: mfa_required

【问题讨论】:

只需使用 API Key 作为密码:***.com/a/70045795/9095551 【参考方案1】:

是的。基本上,设置它你想要做的是:

    登录 Heroku 并在“帐户设置”下创建 API 令牌。 (您说“不打开浏览器”,我假设您的意思是“如何从命令行进行身份验证”。要进行此设置,您需要打开浏览器...一次;) 在本地计算机的主目录中,检查您是否已经有一个名为.netrc 的文件。如果没有,只需像这样创建一个 -- touch ~/.netrc。 您需要从那里将以下内容附加到该文件(并保存):
machine api.heroku.com
 login <your-email-goes-here>
 password <the-api-token-goes-here>
machine git.heroku.com
 login <your-email-goes-here>
 password <the-api-token-goes-here>
    如果您刚刚创建了.netrc 文件,您需要chmod 600 .netrc 为其授予必要的权限。 此时,您可以尝试命令heroku auth:whoami,希望看到您的用户电子邮件打印回给您。

FWIW,Heroku 确实有 一些 文档涵盖此 here,但老实说,这些文档相当脱节,我认为这对以前从未做过类似事情的人没有帮助,这是为什么我要一步一步来。

我希望这是你想要的和/或有人觉得这很有帮助:)

【讨论】:

【参考方案2】:

如果您愿意关闭 MFA

这是解决方案: 转到https://dashboard.heroku.com/account 并在帐户设置中向下滚动以找到启用多因素身份验证。

点击相同的然后禁用 MFA,你就可以开始了!

【讨论】:

好吧,正如我在问题中所描述的,重点是保持 MFA 处于开启状态...

以上是关于Heroku Login Multi-Factor Authentication mfa_required 错误(不打开浏览器)的主要内容,如果未能解决你的问题,请参考以下文章

Flask-Login 和 Heroku 问题

Global Azure启用Multi-factor Authentication配置介绍

MFA(Multi-Factor Authentication)应用之Outlook2013排错

Microsoft 365 - 如何对user开启Multi-Factor验证

Vulnerabilities in multi-factor authentication:多因素身份验证漏洞

用Azure AD 实现Web 应用身份认证的Multi-Factor Authentication(MFA)