如何从命令行(CLI)更改Firebase用户登录身份?


Answers:


166

解决此问题的最简单方法是注销User-Alice和登录User-Bob。

firebase logout
firebase login

但是,如果您使用浏览器中的Google帐户登录为User-Alice,则需要先从那里注销。


1
请给我更多细节。当我尝试该操作时,它将以用户A的身份重新登录。这就是问题的全部重点。无法指定要登录的用户。生成的密钥以某种方式绑定到其他用户,并且我不知道如何更改它。
让我思考一下2015年

是否会打开浏览器以使用您的Google帐户登录?还是您使用用户名和密码通过命令行登录?
David East

它会打开浏览器,并强迫我使用Google帐户登录。但是它说我以所需用户身份登录时未授权我的凭据。CLI指令中有一个链接,当我在浏览器中复制并粘贴时,它将以错误的用户身份登录。即使我使用的浏览器以所需的用户身份登录,它仍然会注册错误的用户。
让我思考一下2015年

2
啊,我刚遇到这个。您还需要在浏览器中注销用户。否则,它只会每次自动以该用户身份登录。
David East

谢谢,它对我们有很大帮助
Syed Raheem Uddin '18

25

用这个

firebase login --reauth

然后您可以更改帐户


很棒的建议。请注意...这将生成一个URL。您将其复制并粘贴到浏览器窗口中。它将提示您输入其他凭据。登录后,CLI现在正在使用该帐户。
类似于CodeSamurai,

我遇到了同样的问题,按照您的建议行之有效。太感谢了。
安德烈孔


4

您可以通过此命令获取令牌字符串。

firebase login:ci

然后将其设置为FIREBASE_TOKENenv。

您可以保留任意数量的令牌,并通过诸如dotenv之类的实用程序自动进行设置。


普通的注销然后登录方法会导致网页弹出以进行身份​​验证,然后弹出安全警告电子邮件(该电子邮件还会发送到任何链接的帐户),然后在手机上发出安全警告。这种方法消除了所有这些,因此切换变得轻而易举。
戴夫·布鲁克

3

首先,您当前登录的Google帐户必须包含'User Alice'(userAlice@gmail.com)默认浏览器中。当你firebase logout然后Firebase会说

$ firebase logout
Logged out form 'userBob@gmail.com'

firebase login,Firebase将打开浏览器并获得确认(允许或拒绝)。接受/允许后,您可以在终端中看到以下内容。

$ firebase login
Allow Firebase to collect anonymous CLI usage information? Yes

Visit this URL on any device to log in:
https://accounts.google.com/o/oauth2/auth?client_id=....

Waiting for authentication...

Success! Logged in as 'userAlice@gmail.com'

1

您必须(使用)主浏览器(例如Safari)退出Google帐户。并以正确的用户身份登录到相同的浏览器。尝试登录辅助浏览器(例如Opera或Chrome)无法正常工作。它必须与Firebase CLI按下后自动打开的浏览器相同firebase login。辅助浏览器将被忽略。


1

以下是一些解决方案:

firebase logout
firebase login

要么,

firebase login --reauth

0

如果你有不同的谷歌帐户-我建议你有不同的浏览器user profiles为它Google Chrome

在输入之前firebase login,请确保使用所需的激活相应的浏览器窗口user profile

这样,您在切换帐户时无需再次输入密码。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.