在heroku的网站上更改密码后,我无法访问heroku api。
当我执行heroku login
时,我身份验证成功,即使它不应该因为密码已更改而不应该。它甚至不会要求我的电子邮件或密码!
如果我尝试heroku apps
(或任何其他应用程序相关命令),我会身份验证失败。
如果我尝试heroku status
,它就有效。
我没有安装任何插件。
日志:
$ heroku version
heroku-gem/3.6.0 (i686-linux) ruby/2.1.0
$ heroku logout
Local credentials cleared.
$ heroku login
Authentication successful.
$ heroku apps
Authentication failure
$ heroku plugins
You have no installed plugins.
我会感激我能得到的任何帮助或想法。我已经开了一张票,等待Heroku支持回到我身边。
由于
答案 0 :(得分:17)
在heroku的网站上更改密码后,我无法访问heroku api。
您使用的是heroku-accounts
插件吗?如果是这样,请尝试卸载它。
heroku plugins:uninstall heroku-accounts
rm -r ~/.heroku/accounts
heroku logout
heroku login
答案 1 :(得分:11)
显然,更改heroku的密码会重新生成一个新的API密钥,并且我配置了错误的 HEROKU_API_KEY 。 (它在密码更改后重新生成一个。)
我在这里发布了Heroku支持团队的回复,该团队给了我这些建议:
~/.netrc
个文件?如果有,请你检查文件是否包含Heroku相关的东西?如果有,请删除,然后再次尝试登录。HEROKU_API_KEY
环境变量?如果是,您可以将其删除并重新登录吗?~/.heroku/credentials
个文件(有或没有扩展名)?如果是,您可以将其删除并再次尝试登录吗?GEM_HOME='' BUNDLE_GEMFILE='' GEM_PATH='' RUBYOPT='' heroku login
,看看它是怎么回事?答案 2 :(得分:5)
您使用的是heroku-accounts插件吗?如果是这样,请尝试卸载它。
您可能不需要卸载它......
确保您不在项目目录中(或者您可能遇到"未找到的帐户"循环)。
cd
列出您的帐户。
heroku accounts
在每个更改密码的帐户
heroku accounts:remove ACCOUNT
heroku accounts:add ACCOUNT
(我不需要对~/.ssh/config
做任何事情。)
如果需要,请重置默认帐户。
heroku accounts:default ACCOUNT
如果您更改了帐户名称或git config --unset heroku.account
。
cd /path/to/your/project
git config --add heroku.account ACCOUNT
我不想放弃heroku-accounts插件。 :)
答案 3 :(得分:2)
在我的情况下,我有heroku-accounts个gem管理的多个heroku帐户,在我更改了我的一个帐户密码后,身份验证开始失败。
我遵循的步骤让事情再次恢复正常:
从heroku帐户中删除了帐户(无法进行身份验证):
heroku帐户:删除account_name
打开新终端,然后再次添加我刚刚删除的帐户:
heroku帐户:添加account_name --auto
您必须使用新凭据。
那就是它。问题解决了。
答案 4 :(得分:2)
heroku accounts:remove personal
或您拥有的任何帐户名称
git config --unset heroku.account
heroku accounts:add personal
然后登录
答案 5 :(得分:0)
尝试删除~/.netrc
(这是Heroku CLI工具保存身份验证令牌的地方)并重新开始。